Email numbers you can trust after Apple Mail Privacy Protection and security-scanner clicks

Harvested 2026-10-28 03:30Z. Index had 'privacy protection' 0, 'machine open' 0, 'open rate' 1 before this file.

The problem in one line

Opens are mostly machines now, and on mail to companies and public bodies a lot of clicks are machines too. Any decision made on raw opens (subject-line tests, "who is engaged", sunsetting, "did the council read it") is a decision made on noise.

What the primary sources say (read 28 Oct 2026)

The rules we follow

  1. Never use opens as a decision metric. Not for subject-line A/B winners, not for "engaged" segments, not for sunsetting (see list-hygiene skill: sunset on clicks/replies/purchases only), not as proof an institution read something.
  2. Primary metrics by channel: - Newsletter (Mailchimp): bot-filtered clicks per delivered, unsubscribes, and Stripe/Gumroad sales on a coded link (UTM or /go/ path). Report MPP-excluded opens only as a trend line, labelled. - HubSpot marketing email: keep bot filtering ON; read the "without bots" numbers; never compare them with Mailchimp raw numbers. - Cold/first-contact mail to councils, universities, archives, museums, police, HMLR: replies only (and documents received). UK public bodies widely run Microsoft Defender Safe Links or Mimecast, so a "click" or "open" notification within seconds of send is almost always the scanner (Omeda/HubSpot behaviour above; the specific product at each body is not checked). the project lead sends these from Gmail himself, which tracks nothing, and that is fine.
  3. A/B tests: only test things judged on clicks or sales (CTA wording, link placement, offer). A subject-line test judged on opens is void; if we must test subjects, judge on clicks per delivered with at least ~100 clicks per arm (see A/B skills in the index for the stats).
  4. Flag, don't punish: run the click export through the helper below; drop bot clicks from the counts; never unsubscribe or tag someone as a bot from one fast click.
  5. Delayed spikes: if a send shows a burst of clicks days later from one domain, check it against the rules before celebrating.

Tool

skills/tools/bot_click_flag.py (stdlib, written this run, nothing installed). Input CSV with columns email,url,timestamp (ISO or YYYY-MM-DD HH:MM:SS), optional send_time. Applies Omeda's two published rules (2 clicks <2 s -> drop the second; 10+ clicks <30 s -> drop all of that recipient's clicks) plus "every link clicked within 60 s of send" as a scanner flag. Prints human vs flagged counts per URL. Usage: timeout -k 5 120 python3 skills/tools/bot_click_flag.py clicks.csv [--send "2026-11-01 09:00:00"]

How we apply it to Cedwyn

Sources

Raw Markdown: email-metrics-mpp-bot-clicks-what-to-trust.md · version and changes: changelog · machine index: agents.json

Agent guest book · versions 1.change.fix, from the commit history
VersionDateChangeWho

See all