Bot Protection
OptiPub offers two separate bot protections that solve different problems and work independently:
| Protection | What it protects | On/off? |
|---|---|---|
| Form Bot Protection | Your signup forms | Optional. You enable or disable it, and tune its sensitivity, on the Bot Protection settings page. Runs an invisible, score-based reCAPTCHA check before a form submission is accepted. |
| Email Engagement Bot Protection | Your open/click data and automations | Always on. Every email open and click is automatically classified as Human, Bot, or MPP. You choose how to put those labels to work in reporting, segments, and funnels. |
These are distinct features. Form Bot Protection stops bots from signing up and is something you turn on and configure. Email Engagement Bot Protection identifies non-human activity after an email is sent and runs automatically — there is nothing to switch on for it.
Form Bot Protection
Form Bot Protection guards your subscriber list against automated signups by challenging visitors before their submission is accepted.
Navigate to Settings → Bot Protection
Toggle Protect all signup forms from bot signups with Google reCAPTCHA on to run a reCAPTCHA check on signup form submissions. Protection is applied automatically to your signup forms — no per-form configuration is needed. See Forms for how this behaves on the optipub-form element.
OptiPub uses Google reCAPTCHA Enterprise in its invisible, score-based mode: there is no checkbox or image challenge for the visitor. reCAPTCHA scores each submission from 0.0 (most likely a bot) to 1.0 (most likely human), and OptiPub accepts or rejects the submission based on your threshold.
When form protection is enabled, a Bot Protection Threshold slider appears:
| Setting | Range | Behavior |
|---|---|---|
| Bot Protection Threshold | 0 – 1 (step 0.1) | The minimum reCAPTCHA score a visitor must reach to have their submission accepted. A lower threshold lets more visitors through (fewer false positives, more bots). A higher threshold is stricter (fewer bots, more false positives). |
We recommend a minimum threshold of 0.5.
This protection has no effect on open/click reporting, segments, or funnels — it only governs whether a signup form submission is accepted.
Email Engagement Bot Protection
Automated traffic — security scanners, link checkers, mailbox prefetchers, and privacy proxies — can inflate your open and click numbers and trigger automations that were meant for real people. Email Engagement Bot Protection detects this non-human activity, labels every open and click, and makes those labels available throughout reporting, segmentation, and funnels.
Always-On Detection
Email bot detection is always on. Every open and click OptiPub tracks is automatically evaluated and labeled Human, Bot, or MPP — there is nothing to switch on and no ruleset to configure. Detection runs in OptiPub's mail tracking layer as events are received.
What you control is how you use those labels:
- Reporting — human/bot/MPP breakdowns appear automatically on every message report.
- Segmentation — opt in per rule with the Human / Bot toggles on Message Opens and Message Clicks rules.
- Funnels & automations — non-human interactions are automatically suppressed, so bots and privacy proxies never trigger your automations.
How Classification Works
Every tracked open and click is evaluated and given one of three labels:
| Label | What it means |
|---|---|
| Human | A genuine subscriber interaction. Not flagged as a bot or a privacy/preload proxy. |
| Bot | Automated activity — security tools, link scanners, or other traffic that detection flags as non-human. |
| MPP | An open triggered by Apple Mail Privacy Protection or a similar preloading proxy. MPP applies to opens only; clicks are never labeled MPP. |
Classification happens in OptiPub's mail tracking layer as events are received. The labels are then attached to each open/click and carried through every downstream feature.
flowchart LR
A[Subscriber mailbox / proxy / bot] -->|open or click| B[Mail tracking layer]
B -->|classify| C{Label}
C -->|Human| D[Reporting + Segments + Funnels]
C -->|Bot| E[Reporting + Segments, no funnels]
C -->|MPP open| F[Reporting + activity timestamp, no funnels]
OptiPub records a label on each open and click as events arrive:
- Opens can be labeled Human, Bot, or MPP.
- Clicks can be labeled Human or Bot. Clicks are never MPP.
- Duplicate events (the same subscriber opening or clicking the same message again) are tracked but do not re-count toward unique metrics or re-trigger funnels.
These labels are stored alongside the raw engagement data and are used everywhere the metrics surface.
Reporting on Human, Bot, and MPP
Message reports break engagement down by label so you can see true human performance separately from automated noise. On a message's Overview, the Engagement group includes:
| Metric | What it counts |
|---|---|
| Opens | All unique opens — human, bot, and MPP combined. |
| Human Opens | Unique opens not flagged as bot or MPP. |
| Bot Opens | Unique opens flagged as bot activity. |
| MPP Opens | Opens triggered by Apple Mail Privacy Protection or similar preloading proxies. |
| Clicks | All unique clicks. The percentage shown is the click-to-open rate (CTOR). |
| Human Clicks | Unique clicks not flagged as bot activity. |
| Bot Clicks | Unique clicks flagged as bot activity (security tools, link checkers). |
| Clickers | Distinct subscribers who clicked at least one tracked link. |
| Human Clickers / Bot Clickers | The distinct-subscriber equivalents, split by label. |
For gauging real engagement in reporting, use Human Opens + MPP Opens together as your open source of truth and Human Clicks as your click source of truth. An MPP open may be a genuine human open or an automated Apple Mail prefetch — you can't tell which — so for measuring reach it's safest to include it and exclude only Bot Opens. Because that ambiguity cuts both ways, OptiPub treats MPP differently in other contexts (see segmentation and funnels below), where it is excluded from human-only filters and does not trigger automations. The combined Opens total additionally includes bot activity.
Segmenting on Human vs. Bot
The Message Opens and Message Clicks rules in the dynamic segment and funnel query builder let you target subscribers by engagement label using two toggles:
| Toggle | Effect |
|---|---|
| Human | Include engagements labeled Human. |
| Bot | Include engagements labeled Bot. |
Both toggles are on by default, so a new rule counts all engagement. To build a human-only segment, leave Human on and turn Bot off. To find subscribers whose activity is driven by bots, do the reverse. At least one toggle must always be selected — turning both off is not allowed.
Engagements flagged by detection are labeled Bot; everything else is labeled Human.
These toggles work with both query modes of the Message Opens / Message Clicks rules:
- Total — count of opens/clicks over a time window (e.g. more than 2 human opens in the last 30 days).
- Opened / Clicked Message — whether the subscriber engaged with a specific message (and, for clicks, an optional specific link).
MPP opens are treated as non-human, so they are excluded when you filter a rule to Human. MPP is surfaced primarily as its own breakdown in message reporting.
How Funnels and Automations Suppress Non-Human Interactions
Funnels and automations only react to real people. When classification flags an interaction as non-human, OptiPub does not fire the corresponding funnel event:
| Event | Bot | MPP | Fires funnel event? |
|---|---|---|---|
| Opened Email | No | No | ✅ Yes (human open) |
| Opened Email | Yes | — | ❌ No (bot open) |
| Opened Email | — | Yes | ❌ No (MPP open) |
| Clicked Email | No | n/a | ✅ Yes (human click) |
| Clicked Email | Yes | n/a | ❌ No (bot click) |
This means a bot scanning your links or Apple Mail preloading your images will not advance a subscriber through an Opened Email or Clicked Email funnel step, tag them, or trigger any downstream automation tied to those events.
Two important nuances:
- MPP opens still count as activity. Because Apple Mail Privacy Protection can mask a genuine human open, an MPP open still updates the subscriber's last-opened timestamp. This keeps real Apple Mail readers from being pruned by inactivity-based funnels, even though the MPP open itself does not trigger open funnel events. Bot opens and clicks do not update activity timestamps.
- Duplicate events never re-trigger funnels. Only the first unique human open or click for a given message advances a funnel.
Bot and MPP interactions are always recorded in the subscriber's history (with their labels) for reporting — suppression only applies to funnel/automation triggers, not to the underlying record.

