Step 1: stop the pixel firing — turn off automatic remote images

This is the highest-value change available, and it is one setting per client. Once remote content is not fetched, the open report does not exist; the sender sees no request and logs nothing. The paths differ, and the labels differ between versions, so here they are individually.

Gmail on the web

  1. 01Open Gmail in a browser and click the gear icon, then See all settings.
  2. 02On the General tab, scroll to the Images section.
  3. 03Select the option that asks before showing external images — labelled Ask before showing images, and in some accounts Ask before displaying external images.
  4. 04Scroll to the bottom of the page and click Save Changes. The setting does nothing until you save.

Gmail on Android and iPhone

Open the app, tap the menu, choose Settings, then tap the account you want to change. Under the message-behaviour options, set Images to Ask before showing images. The setting is per account, so repeat it for each mailbox in the app.

Apple Mail on iPhone and iPad

Open the Settings app and go to Mail, then Privacy Protection (on newer versions this lives under Apps > Mail). Turn on Protect Mail Activity. That single switch hides your IP behind Apple’s proxies and blocks tracking content; if you would rather not proxy at all, turn Protect Mail Activity off and enable Block All Remote Content instead, which loads images only per message. iOS 15 introduced these controls in September 2021, so anything current has them.

Apple Mail on Mac

In Mail, open Settings from the Mail menu and choose Privacy. Tick Protect Mail Activity, or untick it and tick Block All Remote Content for stricter behaviour with more manual image loading.

Outlook on Windows

Classic desktop Outlook is the most explicit: File > Options > Trust Center > Trust Center Settings > Automatic Download, and leave Don’t download pictures automatically in HTML email messages or RSS items ticked. The per-message bar offers Download Picture when you want one. Outlook on the web has no account-wide toggle in the reading pane; it blocks remote images from unknown senders by default and shows a Download pictures bar per message, which is the behaviour you want — just do not click it reflexively.

Thunderbird

Open the menu, choose Settings, then Privacy & Security, and leave Allow remote content in messages unchecked. Thunderbird then shows a notification bar above any message with blocked content, with per-sender options if you want to make exceptions for a domain you trust.

Client Setting to change Effect on the pixel What it costs
Gmail (web)General > Images > ask before showingNo fetch, no open loggedEvery message needs a manual image load; Gmail proxies IPs anyway
Gmail (mobile)Settings > account > ImagesSame, per accountRepeated for each mailbox in the app
Apple MailProtect Mail Activity, or Block All Remote ContentProxied, or blocked entirelyProxy mode still prefetches, so senders see false opens
Outlook (Windows)Trust Center > Automatic DownloadBlocked until you allowImages missing until you click; Safe Senders list needed for receipts
Outlook on the webPer-message Download pictures barBlocked for unknown senders alreadyNo global switch; the discipline is yours
ThunderbirdPrivacy & Security > Allow remote contentBlocked by defaultNotification bar on every commercial message

Cost column is honest: image blocking breaks product photos, logos and signature images in legitimate mail, which is why the per-message allow exists everywhere. Senders count those manual clicks as engagement, so the setting is not invisible in aggregate — it is invisible per message.

Step 2: strip the reporter out of links

Blocking images leaves click tracking untouched, and click tracking is the half that also sets cookies on the destination. Two habits cover it: hover before clicking, and delete the query string when you do click.

The quick habit is right-click, copy link address, paste into a note. What you see tells you whether the anchor is a wrapper, and everything after the first ? is the reporting payload. Paste it into a browser after cutting the parameters and you usually arrive at the same page clean.

Parameter Usually means Action
utm_source, utm_medium, utm_campaign, utm_content, utm_termCampaign attribution read by the destination’s analyticsDelete all five
mc_eid, mc_cidPer-recipient and per-campaign identifiers from a bulk platformDelete
hsCtaTrackingClick-tracking token on a call-to-action linkDelete
ref, feature, srcReferral and surface attributionDelete unless the page needs it to work
id, s, c, e on an unfamiliar hostVendor message, signature, contact and email identifiersDo not click at all — the host is not the destination
?token=…, &sig=…One-time access tokens for receipts, reset links, magic linksKeep. Stripping these breaks the link

The last row is the reason a blanket “delete everything after the question mark” rule is wrong: password resets and payment receipts put the authorisation in the query string. Strip campaign and identifier parameters; keep tokens on links whose destination you chose.

Step 3: make your address useless as a join key

Since the recipient ID is what stitches one open into a profile, changing the address changes what the profile can be attached to. Three routes, in order of effort:

  • Plus-addressing, where your provider supports it: [email protected] delivers to [email protected], so each sender gets a distinct string and you can see who leaked or sold it. It is not an alias — the base address still identifies you — but it makes the list per-sender.
  • Provider aliases. Firefox Relay and SimpleLogin generate real forwarding addresses and strip or report tracking on the way through; Apple’s Hide My Email does the same inside iCloud and Safari. Signup with an alias, and the tracker’s row points at a disposable address.
  • A separate address for the stuff that will be tracked. One mailbox for work, one for shopping and newsletters, never used for anything you would rather not be profiled by. Crude, and the most effective of the three.

The caveat that breaks this defence more often than any other: replying with your real address. If you answer from your primary mailbox, the thread reconnects you and the alias was only ever a mask on the first exchange.

Step 4: leave the list the right way

Getting onto a list is how the profile starts, so removal is worth doing deliberately. Which tool to use depends on whether the sender is real.

SituationUseWhy
Real company, SPF, DKIM and DMARC all pass, familiar brandUnsubscribeRemoves the row and stops the identifier being reused. CAN-SPAM obliges them to honour it within 10 business days and the link must stay working 30 days
Bulk sender advertising List-Unsubscribe-Post: List-Unsubscribe=One-ClickOne-click unsubscribeRFC 8058 means a single confirmed request, no landing page, no login, no “are you sure” — and no click-tracker visit
Sender you never signed up for, authentication passes, product is realUnsubscribe, then block the domainPurchased lists still need the removal request on the record
Unauthenticated or phishing-shaped mailReport as phishing or spam — never the unsubscribe linkClicking anything confirms the mailbox is live and monitored. The unsubscribe link in a fake mail is the tracker
Graymail you half-want, low volumeFilter, do not unsubscribeUnsubscribing from a marginal list sometimes produces more mail; a filter produces none

Since February 2024 the large webmail providers require bulk senders to support one-click unsubscribe and to keep complaint rates low — Google publishes a 0.3% spam-rate threshold in its sender guidelines. That is leverage for you: a legitimate list now has a machine-readable exit, and a list that hides one is telling you something about how it got your address.

Step 5: do not reply on a tracked thread

Replies inherit identifiers. A tracked message often carries the same recipient token through the References chain, and some platforms put an invisible image in the reply body so answering reports back without any new campaign. Where the reply matters, answer from the alias you signed up with, or start a fresh message to a bare address with the thread quoted manually.

Step 6: belt and braces, if you want more

  • Block known tracker hosts at the DNS layer. A resolving proxy or Pi-hole-style blocklist with pixel-host entries stops the fetch even in clients that allow remote content, and it works for every device on the network. Some tracking hosts serve legitimate images too, so expect occasional collateral.
  • A pixel-aware mail extension. The open-source MailTrackerBlocker, whose signature list this site’s detector adapts, removes known tracker tags before the client renders them — more surgical than blanket image blocking.
  • Check the raw source periodically. Ten messages through the detector each quarter tells you whether your settings held, and shows you which new hosts appear in your mail.
  • Keep the client updated. Image-blocking and privacy-protection behaviour changes between versions; an old build may fetch content a newer one would not.

What each defence actually buys

The matrix is the honest summary. No single switch covers the three reporters described in how tracking works.

Defence Open pixel Click wrapper Campaign IDs Your address as key Annoyance
Block remote imagesStoppedUnaffectedUnaffectedUnaffectedHigh
Strip query stringsUnaffectedStoppedStoppedStoppedMedium
Never click, type the URL yourselfUnaffectedStoppedStoppedStoppedMedium
Alias or plus addressUnaffectedUnaffectedUnaffectedBrokenLow
DNS blocklistStoppedPartly stoppedUnaffectedUnaffectedLow, with false positives
Reply from an aliasUnaffectedUnaffectedUnaffectedStopped on the threadLow

The fifteen-minute version

If you do only the shortest list, do these four and you cover most of the exposure on this page.

  1. 01Turn off automatic remote images in the client you read mail in most — the paths are in Step 1, and it takes one minute.
  2. 02Hover on links before clicking, and stop reflexively clicking “view in browser” headers in newsletters.
  3. 03Create one alias for future signups, and never put your primary address on a form again.
  4. 04Run five recent messages through the detector to see which of the three reporters are already live in your inbox.

How to confirm it worked

Test rather than trust. Send yourself a message from a tracked newsletter, then open it with your new settings and check that no remote content loaded — in a browser, DevTools on the Network tab shows the fetches your client would have made, and a blocked client makes none. Open the raw source and paste it into the detector: if it reports pixels but your client never fetched them, the defence is holding. Re-check after any mail client update, because image-blocking defaults change.

check your settings worked

Email Tracker Detector

Paste a message’s raw source and see exactly which pixels, wrapped links and identifiers are in it — before your client fetches any of them. 170 named services checked, nothing uploaded, nothing stored.

Run the check

faq

Frequently Asked Questions

The blocking questions, including the ones where the obvious answer is the wrong one.

How do I stop someone knowing I opened their email?

Turn off automatic loading of remote images in your mail client, and do not click links in the message until you have stripped their tracking parameters. Blocking images removes the open report entirely, because the pixel never reaches its server. Removing parameters removes the click report. Neither step is visible to the sender, so they simply record no event. The exact setting for Gmail, Outlook, Apple Mail and Thunderbird is listed above.

Does turning off images in Gmail stop tracking?

It stops open tracking by pixel for the messages you read there, which is the largest share of most people’s exposure. It does not stop link tracking: a wrapped link reports the moment you click it, with or without images loaded. It also does not remove your address from the URLs inside the message, which stays on the record the next time something in that message is fetched by any device that shows your mail.

Should I click an unsubscribe link to stop tracking?

For mail you recognise and can prove is legitimate, yes — a real unsubscribe is the cleanest exit, and by law the sender must honour it within 10 business days. For anything you do not recognise, no: clicking it confirms the address is live and invites more mail. Use spam reporting or simply never load images in that message, and treat an unsubscribe link in an unauthenticated email as a tracking link.

What is the difference between blocking images and blocking links?

Blocking images stops the open report by preventing a fetch. Blocking, rewriting or hovering on links stops the click report by preventing a request to the wrapper host. They are independent switches covering independent reporters, which is why a message can still track you after you turn off images, and why a pixel-blocker that only kills images leaves click tracking running.

Do email aliases stop tracking?

They stop the identity, not the measurement. A fresh alias means the open, the click and the location land on a row that is not your real address, so the data a sender accumulates cannot be joined to you across the rest of your life. Aliases do not hide the fact that some reader at that alias opened the message, and if you reply from your real address in the same thread the alias defence collapses for that exchange.