# How to filter out false clicks in campaign flow

**URL:** <https://forum.mautic.org/t/how-to-filter-out-false-clicks-in-campaign-flow/16559>\
**Category:** Product Support\
**Created:** [October 14, 2020, 10:42am UTC](https://forum.mautic.org/t/how-to-filter-out-false-clicks-in-campaign-flow/16559 "2020-10-14T10:42:57Z")\
**Posts on this page:** 16\
**Page:** 1

<div class="post-metadata">

**Author:** ![hannahhayes](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.mautic.org/hannahhayes/32/902_2.png) [@hannahhayes](https://forum.mautic.org/u/hannahhayes)\
**Post date:** [October 14, 2020, 10:42am UTC](https://forum.mautic.org/t/how-to-filter-out-false-clicks-in-campaign-flow/16559/1 "2020-10-14T10:42:57Z")

</div>

**Your software**  
My Mautic version is: 3.1.1  
My PHP version is: 7.3.23

**Your problem**  
My problem is:

I’ve realised when analysing my contacts that there are a lot of false clicks on links being registered by Mautic, probably due to spam filters checking the links are safe. Does the Mautic community have a good way of dealing with this? I thought about adding in a hidden link so if a contact clicks on that, I can tell that other links were most likely clicked by a bot, but I don’t think the Mautic campaign flow has an option for saying **don’t** do something if a contact clicks on a link? Any ideas/solutions welcomed.

These errors are showing in the log: N/A

Steps I have tried to fix the problem: None yet!

---

<div class="post-metadata">

**Author:** ![hannahhayes](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.mautic.org/hannahhayes/32/902_2.png) [@hannahhayes](https://forum.mautic.org/u/hannahhayes)\
**Post date:** [October 20, 2020, 8:15am UTC](https://forum.mautic.org/t/how-to-filter-out-false-clicks-in-campaign-flow/16559/2 "2020-10-20T08:15:22Z")

</div>

Anybody got any ideas on this? 😃

---

<div class="post-metadata">

**Author:** ![movementbruce](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.mautic.org/movementbruce/32/543_2.png) [@movementbruce](https://forum.mautic.org/u/movementbruce)\
**Post date:** [October 30, 2020, 2:35pm UTC](https://forum.mautic.org/t/how-to-filter-out-false-clicks-in-campaign-flow/16559/3 "2020-10-30T14:35:45Z")

</div>

There was a post over in the Git that was closed ([https://github.com/mautic/mautic/issues/9162](https://github.com/mautic/mautic/issues/9162)) and was suppose to come back here. This would be a great addition I think to have some sort of add on like **[colourfulowl](https://github.com/colourfulowl)** starts to discuss.

---

<div class="post-metadata">

**Author:** ![seanyboy](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.mautic.org/seanyboy/32/3211_2.png) [@seanyboy](https://forum.mautic.org/u/seanyboy)\
**Post date:** [December 1, 2020, 8:25am UTC](https://forum.mautic.org/t/how-to-filter-out-false-clicks-in-campaign-flow/16559/4 "2020-12-01T08:25:59Z")

</div>

Hi

I have been having the same issue. also, they click the “unsubscribe” link and the one-click unsubscribe removes them. I can see patterns for the same companies - so I guess there is a filtering system in place.

I also use hubspot and I have not run into this issue. they may have a fix for this.

no solution yet.

---

<div class="post-metadata">

**Author:** ![movementbruce](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.mautic.org/movementbruce/32/543_2.png) [@movementbruce](https://forum.mautic.org/u/movementbruce)\
**Post date:** [December 23, 2020, 2:48pm UTC](https://forum.mautic.org/t/how-to-filter-out-false-clicks-in-campaign-flow/16559/5 "2020-12-23T14:48:50Z")

</div>

Are there any thoughts on this yet? Seems to be a big issue on my end. We are moving MQL’s based on a lead score right now. With all of the false positives we are getting now from the firewalls, most of the leads are really not ready to be passed yet.

---

<div class="post-metadata">

**Author:** ![EJL](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.mautic.org/ejl/32/12155_2.png) [@EJL](https://forum.mautic.org/u/EJL)\
**Post date:** [December 23, 2020, 5:20pm UTC](https://forum.mautic.org/t/how-to-filter-out-false-clicks-in-campaign-flow/16559/6 "2020-12-23T17:20:33Z")

</div>

If you are scoring with campaigns (email opened or link clicked or whatever) I use the device type and use the Unix and Linux as an assumptive false positive for opens and clicks. On the flip side I use Contact device windows, ios, android, chrome os and so on as a presumptive open or click by recipient.

 ![falseclicks](https://us1.discourse-cdn.com/flex020/uploads/mautic/original/2X/e/e3d6a89531da4eafed7f504e09d04fa415c1f864.png)

---

<div class="post-metadata">

**Author:** ![harry5](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.mautic.org/harry5/32/902_2.png) [@harry5](https://forum.mautic.org/u/harry5)\
**Post date:** [February 7, 2021, 4:25pm UTC](https://forum.mautic.org/t/how-to-filter-out-false-clicks-in-campaign-flow/16559/7 "2021-02-07T16:25:29Z")

</div>

@EJL@hannahhayes Looking at the device sound like a really good idea. Currently, I’ve been looking at the open delay in the reports function and any opens within 30secs of the email being sent are most likley to be bots so was ignoring. I will definitely be looking at the device now as well.

---

<div class="post-metadata">

**Author:** ![monkeyjedi](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.mautic.org/monkeyjedi/32/543_2.png) [@monkeyjedi](https://forum.mautic.org/u/monkeyjedi)\
**Post date:** [February 8, 2021, 1:47am UTC](https://forum.mautic.org/t/how-to-filter-out-false-clicks-in-campaign-flow/16559/8 "2021-02-08T01:47:38Z")

</div>

Hi. How do you post in Mautic forums?! Anyone?! I’ve read more than ten posts! Reconsidering Mautic now!

---

<div class="post-metadata">

**Author:** ![mikew](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.mautic.org/mikew/32/5156_2.png) [@mikew](https://forum.mautic.org/u/mikew)\
**Post date:** [February 8, 2021, 5:58am UTC](https://forum.mautic.org/t/how-to-filter-out-false-clicks-in-campaign-flow/16559/9 "2021-02-08T05:58:12Z")

</div>

Hey @monkeyjedi - you just posted :-).

If you are asking how do you add a new topic, in the right hand corner of the main screen (I think bottom) you will see a big Plus sign, just click on it and you are ready to go

---

<div class="post-metadata">

**Author:** ![monkeyjedi](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.mautic.org/monkeyjedi/32/543_2.png) [@monkeyjedi](https://forum.mautic.org/u/monkeyjedi)\
**Post date:** [February 8, 2021, 6:19am UTC](https://forum.mautic.org/t/how-to-filter-out-false-clicks-in-campaign-flow/16559/10 "2021-02-08T06:19:52Z")

</div>

Thanks. It took a long time for the + sign to start showing. This is a good thread, BTW. I think maybe Cloudflare’s security features are registering one page visit as 7 or 8 visits in Mautic.

---

<div class="post-metadata">

**Author:** ![hannahhayes](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.mautic.org/hannahhayes/32/902_2.png) [@hannahhayes](https://forum.mautic.org/u/hannahhayes)\
**Post date:** [February 10, 2021, 11:56am UTC](https://forum.mautic.org/t/how-to-filter-out-false-clicks-in-campaign-flow/16559/11 "2021-02-10T11:56:09Z")

</div>

Thanks everyone for the feedback so far. I’ve personally decided to go with including a bait link in my emails for now (a link to our T&C page hidden behind a hyphen that only a bot is likely to click). When they click on the bait link, I automatically tag them as a spam clicker.

Unfortunately this means I might miss clicks from recipients who use spam checkers but still click on the link themselves after the spam check, but by using a points system as well I’ve been able to identify most of the real clicks on important links.

All of these methods only work if you’re sending emails via the campaign route as opposed to a segment email, so I do really hope that Mautic will implement something to sort this automatically in the future because it sounds like there are methods out there.

---

<div class="post-metadata">

**Author:** ![EJL](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.mautic.org/ejl/32/12155_2.png) [@EJL](https://forum.mautic.org/u/EJL)\
**Post date:** [March 17, 2021, 7:38pm UTC](https://forum.mautic.org/t/how-to-filter-out-false-clicks-in-campaign-flow/16559/12 "2021-03-17T19:38:55Z")

</div>

For gmail addresses I am trying a little experiment. If you see **Mozilla/5.0 (Windows NT 5.1; rv:11.0) Gecko Firefox/11.0 (via [ggpht.com](http://ggpht.com) GoogleImageProxy)** in the open history then its a false click, as gmail has “scanned” the email content and links. This triggers the tracking pixel and creates a false open.

 ![Screenshot (8)](https://us1.discourse-cdn.com/flex020/uploads/mautic/original/2X/6/671101a6b59e0aaeb55e30b566890aba0fdbba5e.png)  
216.239.34.10  
216.239.32.10  
216.239.36.10  
216.239.38.10

are some IPs I found in raw dns queries. I added them to List of IPs to not track contacts in settings/config. Ill report those results, but I doubt it will be effective.

Im playing with adding a “device” or a “browser” with some sort of regex of **via [ggpht.com](http://ggpht.com) GoogleImageProxy** So false clicks can be more readily identified and perhaps be addressed in lead score.

Ill report those results as well. Still digging through the code.

---

<div class="post-metadata">

**Author:** ![monkeyjedi](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.mautic.org/monkeyjedi/32/543_2.png) [@monkeyjedi](https://forum.mautic.org/u/monkeyjedi)\
**Post date:** [March 17, 2021, 7:55pm UTC](https://forum.mautic.org/t/how-to-filter-out-false-clicks-in-campaign-flow/16559/13 "2021-03-17T19:55:26Z")

</div>

I’m looking at records right now. Yahoo people I’m looking at are hitting pages once. Hotmail so far, sometimes one hit, sometimes a few rapid-fire hits. Gmail, lots of hits on a page hit. [Me.com](http://Me.com), same. Lots of hits.

---

<div class="post-metadata">

**Author:** ![gandhi](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.mautic.org/gandhi/32/13476_2.png) [@gandhi](https://forum.mautic.org/u/gandhi)\
**Post date:** [November 6, 2025, 5:45am UTC](https://forum.mautic.org/t/how-to-filter-out-false-clicks-in-campaign-flow/16559/14 "2025-11-06T05:45:37Z")

</div>

We introduced a **honeypot tracking link mechanism** and a **60-second correlation filter** to identify and remove automated bot actions from email performance reports.

* * *

### 1️⃣ Honeypot Link Setup

We include a **special invisible link** in every outgoing email.  
This link acts as a “trap” for automated email scanners that prefetch or click links before users open them.

**Example patterns:**

```auto
/trackable/...

```

or with a title:

```auto
"Trackable"

```

🟢 **Real users never see or click this link** — only bots or security scanners do.  
⚙ This link is automatically included by **Mautic’s core email generation process** ,  
so there’s **no need to add it manually** for each campaign or email.

* * *

### 2️⃣ Bot Detection Logic

We log all **page hits (`page_hits`)** and **email events (`email_stats`)**, then match:

```auto
page_hits.url LIKE '%/trackable%'
OR page_hits.url_title = 'Trackable'

```

If a lead clicked such a link, we classify it as a **bot-like interaction**.

* * *

### 3️⃣ Time-Based Correlation (60-Second Window)

To improve accuracy and reduce false positives, we only consider an event a _bot action_ if it occurs **within 60 seconds** of a honeypot hit.

Applied in Our Custom Reports

We applied this filtering logic in both **open** and **click** calculations.

#### ✅ Open Statistics

- Subtract honeypot-related opens

- Count unique opens only if the remaining opens are greater than zero.

#### ✅ Click Statistics

- Exclude clicks:

---

<div class="post-metadata">

**Author:** ![zwf](https://avatars.discourse-cdn.com/v4/letter/z/f475e1/32.png) [@zwf](https://forum.mautic.org/u/zwf)\
**Post date:** [June 3, 2026, 8:48am UTC](https://forum.mautic.org/t/how-to-filter-out-false-clicks-in-campaign-flow/16559/15 "2026-06-03T08:48:49Z")

</div>

> [@gandhi](#):
>
> **Mautic’s core email generation process** ,  
> so there’s **no need to add it manually** for each campaign or email.

Hi,

Very interesting but how do you make the difference between 10 clicks from an antivirus checking all the links and human clicks with the same email adress ?

I would like to count the real clicks and have the good amount of points.

---

<div class="post-metadata">

**Author:** ![zwf](https://avatars.discourse-cdn.com/v4/letter/z/f475e1/32.png) [@zwf](https://forum.mautic.org/u/zwf)\
**Post date:** [June 8, 2026, 9:23am UTC](https://forum.mautic.org/t/how-to-filter-out-false-clicks-in-campaign-flow/16559/16 "2026-06-08T09:23:52Z")

</div>

Hello, I am lookinf forward to have son intell about that 🙂
