Your feed is your business.
last updated 2026-07-15 · applies to the Topic Filter for X browser extensionShort version: the extension collects nothing. It has no servers, no analytics, no accounts. Your settings and the posts you read stay in your browser. Nobody, including us, can see what you filter.
What the extension does
Topic Filter for X hides posts on x.com that match topics you choose. All filtering happens locally, inside your browser, on your device. The extension never sends the content of your timeline, your settings, or anything else to us or to any third party.
Data we collect
None. The extension has no backend, no telemetry, no analytics, no error reporting, no ads, and no user accounts. We cannot see which topics you filter, what you read, or that you use the extension at all.
What is stored, and where
- Your settings (enabled topics, keyword and @handle lists, language, sidebar and semantic-filter toggles) are stored with Chrome's
chrome.storageAPI on your device. They never leave your browser except through Chrome's own sync, if you have that enabled in Chrome, which is governed by Google's privacy policy, not by us. - The hidden-post counter shown on the toolbar badge is computed in memory per tab and is not persisted or transmitted.
- Post content is read only in memory, only to decide whether a post matches your topics, and is never stored or transmitted.
The optional semantic filter
If you switch on the semantic filter, the extension downloads an open-source embedding model (a few hundred MB of model weights) once from Hugging Face's servers and caches it in your browser. That download is a plain file fetch: Hugging Face sees a standard web request from your IP, the same as visiting any website, and nothing about your tweets or settings is included. The model then runs entirely on your device (WebGPU or WASM). Tweet text is classified locally and never leaves your browser. The semantic filter is off by default; nothing downloads until you enable it.
Permissions the extension asks for
storage: save your settings on your device.offscreen: run the local semantic model in a background document.- Access to
x.com/twitter.com: read the timeline in your tab so matching posts can be removed before they render. - Access to
huggingface.co: download the semantic model weights, only if you enable the semantic filter.
Your X account
The extension takes no actions on your X account. It does not log in as you, post, like, mute, block, follow, or call X's APIs with your credentials. It only filters what your own browser has already loaded. Removing the extension instantly restores your feed exactly as X serves it.
This website
This landing site (xfilter.urbanodx.com) is separate from the extension: the extension sends nothing here, ever. The site itself:
- Uses Google Analytics 4 to count visits, with consent mode. By default no analytics cookies are set and no identifier is stored; Google receives only anonymous, cookieless pings. If you click "allow" in the consent bar, an analytics cookie is set so visits can be counted properly. Your choice is remembered in your browser's local storage, and declining keeps the site cookie-free. We use this only to see how many people visit; we do not run ads and do not sell or share data.
- Has one optional form: update emails. If you leave your email there, we store that email address (with the time you joined and your browser language) on our own server in the EU, and use it for exactly one thing: sending you a short note when the extension gets a meaningful update. We do not add you to a newsletter, share the address with anyone, or use it for anything else. To be removed at any time, write to the contact address below and we will delete the address.
- Also counts visits with our own cookieless analytics. Pages send a small beacon to our own server (jido-api.urbanodx.com) with the page path and referrer hostname. No cookie is set and no IP address or browser fingerprint is stored; visitors are counted with an anonymous hash that changes every day, so visits can never be linked to a person or followed across days. This runs regardless of the consent bar because it stores nothing about you.
- Sets no other cookies.
- Keeps standard web server logs (IP address, requested page, user agent) briefly for security and capacity purposes; they are not used to identify visitors.
- Is served through Cloudflare, which processes traffic as described in Cloudflare's privacy policy.
Children
The extension does not collect data from anyone, including children.
Changes to this policy
If the extension's behavior ever changes in a way that affects privacy, this page will be updated and the date above will change. Since the extension collects nothing, we expect this policy to stay boring.
Contact
Topic Filter for X is built by Urbano DX (Poland, EU). Questions about this policy: [email protected].