PostZapper privacy policy
Last updated: 23 October 2026
PostZapper is a free Chrome add-on by Tom Sage. It paints over posts on X (x.com and twitter.com) that match filters you choose.
In short. Nothing leaves your computer. PostZapper makes no network requests: no servers, no account, no analytics. It sends nothing to Martian Winds or to anyone else. What it keeps stays in your browser.
What it reads. PostZapper runs on x.com, twitter.com and their mobile subdomains. It checks loaded public posts against your filters, on your computer. Matching loaded posts and retaining text for Radar are separate: Radar remembers text only from posts visible in the viewport while X is in the foreground and PostZapper is armed. Offscreen posts, hidden tabs and excluded pages do not add Radar records. When using AI Images & videos, it also checks available media labels, alt text and caption declarations. This is local wording evidence; it does not analyse image or video pixels, download media for classification or contact an AI service. It doesn't read X messages, X settings or Grok pages, and it doesn't use X's API or your X account.
Public post text and @handles can contain personal or sensitive information, including names, health, financial or location details. PostZapper processes that content locally under the same rules; it does not request separate health records, payment details or device location.
What it keeps, in your browser only. PostZapper keeps these in your browser's storage for add-ons, on this computer. Some of it is a record of what you do on X: the posts you scrolled past, and the posts you wiped, inked by hand or peeked at.
- Your settings and filters: the moods you picked, your filters and phrases (including ones you write), saved exceptions from earlier versions, the zapper and sound, reduced sensitivity for individual filters, and accounts you trust. Keep visible remembers only that target; it does not create new phrase exceptions or account notes automatically. Earlier automatic account classifications and keep notes are cleared when this version first loads; saved phrase choices stay.
- Identifiers of posts, individual images or videos you wiped or inked by hand (and when), so the zapper remembers them, and Radar suggestions you dismissed.
- Local interest notes from peeking: holding the eye for at least one second on an automatically inked post records its identifier, the filters that matched and when. Three different posts for one filter within 14 days can trigger a suggestion to reduce its sensitivity, turn it off or keep it as it is. Peeking never changes a filter automatically and never strengthens phrases or account notes. Only the last 14 days count toward suggestions; older notes are removed when another qualifying peek is recorded. At most 1,000 interest notes are retained. Suggestion choices and their times stay with your settings and enforce a seven-day suggestion cooldown. Media peeks count distinct parent posts, so a carousel counts once. Reduced media sensitivity requires a declaration and a platform label.
- An ink tally (how many posts each filter has inked, and how many were inked each day for the last 60 days) and the identifiers of the posts it counted (up to 3,000 identifiers).
- Unlock progress for the cosmetic zappers, including a count and up to 499 post identifiers used to prevent repeat counting. At 500 distinct posts the unlock identifiers are removed. Clear activity history preserves this progress and these identifiers; Delete all local data removes them. Unlock progress is not copied into a loadout export.
- The last 150 inked items, for Recent: post text and individual images/videos have separate entries so each Keep visible choice can be reversed. Entries keep their text, @handle, the filter and phrase that hit them, when, and the post's identifier, so Open post can find it on X. Media entries record the image or video identifier and the local declaration or label evidence that matched, not image or video files.
- The last 500 visible text posts retained for Radar: their text, @handle, identifier and when you saw them, under the visibility rule above.
- A few small notes for the menu: whether it is finding posts on your X tab (no post content), whether you have seen its tips, and which menu tab and headings you left open.
Tom Sage never receives any of it. PostZapper doesn't use Chrome sync, so none of it goes to your Google account either.
What leaves your computer. Nothing. PostZapper makes no network requests. Links you click yourself, such as Open post in Recent or a link to this policy, open in your browser like any other link.
What we don't do. No accounts, no analytics, no tracking, no ads, no servers. Tom Sage does not sell, share or transfer user data, does not use it for advertising or to judge creditworthiness, and no person at Martian Winds can see it.
Chrome Web Store User Data Policy. The use of information received by PostZapper adheres to the Chrome Web Store User Data Policy, including the Limited Use requirements. PostZapper uses what it reads only to paint posts on your screen and to show you your own lists.
Permissions. "Storage", to keep your settings on your computer. Access to x.com, twitter.com and their mobile subdomains, to read and paint posts. Nothing else.
Deleting your data.
- Remove PostZapper to delete everything it stored: right-click its button in Chrome's toolbar (or click the puzzle piece, then ⋮ next to PostZapper), choose Remove from Chrome, then Remove in the box that opens. You can also press Remove on PostZapper at chrome://extensions.
- Reset filter switches & zapper, in Settings, resets selected moods, mood-controlled premade switches, the zapper and sound. It keeps all phrases and learning, AI Slop choices, own filters, colours, reduced sensitivity, trusted accounts, corrections and activity history.
- Clear activity history deletes Recent, Radar posts, ink tally, counted-post identifiers (except the separate unlock-progress identifiers above), account wipe notes and peek-interest notes and choices. It keeps filters, phrases, trusted accounts and identifiers of posts, images or videos you manually inked or wiped. New visible activity can create new history; old pending tab batches are discarded.
- Delete all local data deletes your filters, phrases, learning, unlock progress, corrections, trusted accounts, activity and menu preferences. It starts a fresh loadout with PostZapper disarmed and sound off. A small generation marker prevents old tabs from restoring deleted records. This cannot be undone. Copying a loadout backs up settings and phrases, including learned phrase exceptions, but not activity or individual post/image corrections.
Each action shows its scope and asks for confirmation. Success is shown only after the browser acknowledges the save. On failure, Retry saving and Copy settings remain available. Imports are reviewed before loading and reject oversized data without changing your current loadout: at most 1 MiB, 100 filters, 10,000 phrases overall, 1,000 per filter and 40 added exceptions per phrase, in addition to exceptions shipped with premade phrases. An import that would exceed 500 trusted accounts is rejected, preserving your current trusted list.
Children. PostZapper isn't directed at children under 13.
Changes. If this policy changes, the new version goes here with a new date.
Contact. hello@martianwinds.com