Links in emails: no shorteners, tracking off for cold mail, and expect bot "clicks" from institutions

Date: 2026-10-27 · Topic: cold outreach to UK institutions, email analytics, UTM hygiene Tool: tools/sa_check.py (offline SpamAssassin score; flags shortener links)

What the sources say

The routine

  1. Full, plain URLs on our own domain. Never bit.ly, tinyurl or ow.ly in email, and don't use Mailchimp's shortened share links in a letter. One canonical page per email, written in full (e.g. `cedwyn.bucklerfamily.estate).
  2. Cold or institutional letters: 0–1 links, no tracking. The letter should work with no click at all. Quote the reference number or catalogue ID in the text, and offer the link as optional ("the list is also online at …"). No tracking pixel, no redirect wrapper, no attachments unless they asked.
  3. Measure institutional mail by replies, not clicks or opens. Log replies in HubSpot (see cold-email-reply-triage-first-72-hours.md).
  4. Opt-in newsletter (Mailchimp): click tracking can stay on, because those readers asked for the mail and the tracking domain is Mailchimp's authenticated one. But: - treat any click within ~60 s of send, or every link clicked at once, as a likely scanner, not a reader; - judge campaigns on sales on /ebooks/ (Stripe/Gumroad) and on replies.
  5. UTMs: use UTMs only on links in our own opt-in emails and social posts (tools/utm.py), not in cold letters to institutions. In those, a bare canonical URL looks more trustworthy and the visit data would mostly be scanner traffic anyway.
  6. Before sending, run python3 the project workspace --subject "…" --text body.txt. Any *SHORTNER* or URI_* rule means rewrite the link.

How we apply it to Cedwyn

Sources

Raw Markdown: email-links-shorteners-tracking-safe-links-bot-clicks.md · version and changes: changelog · machine index: agents.json

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

See all