PRIVACY

A little less data, too.

Crumb filters search listings on supported shopping websites. Here’s what it uses to do that.

What leaves your browser

When AI filtering is on, Crumb sends your search and listing tile text (which may include the title, price, location, labels, product specifications, and offered variants) to Crumb’s backend, hosted on Fly.io. The source store and product or listing identifiers (including site IDs and locally derived identifiers) accompany the request so results can be matched to tiles. The backend sends the search and text to TypeSafe for relevance classification; listing IDs aren’t included in that provider request. This processing is required for AI filtering and continues if you decline optional model-improvement storage. Turn AI filtering off to stop new classification requests.

Crumb also sends a random installation ID. The server receives your IP address as part of the connection. These support usage limits; they are not store account identifiers. Crumb does not send listing images, store cookies, private messages, or account details as separate fields. Avoid putting sensitive information in searches.

What Crumb stores

Your browser stores per-site filtering, ad-removal, and panel-visibility preferences, global animation settings, cached decisions, animation history, and separate counts of filtered listings and hidden ads. Local deduplication uses hashed listing or ad-placement identities, so repeated hiding does not increase the counts. Requests and stored records distinguish the source store. The backend stores keyed hashes and scores for up to 30 days, plus hashed usage counters until one day after their minute, day, or month expires. Token counts, cost, and completion status for API requests are retained for 90 days; these receipts contain no search or listing text. Unless you allow the optional model-improvement sharing described below, it does not save raw searches or listing text. Raw IP addresses are not saved in its application database, and request logs do not contain search or listing text. Hosting and AI providers process requests under their own policies. Fly volume backups may retain expired database entries for up to seven additional days.

Optional model improvement

If you choose “Allow sharing” in the extension, Crumb saves your shopping searches, listing text, and filtering results to improve its filtering model. This optional storage is off until you agree. Declining or turning sharing off stops saving new examples; searches and listing text are still processed to provide AI filtering. This applies only to the default hosted connection, not personal-key mode. We retain newly generated results with their model version for up to one year (365 days). Search and listing text are encrypted at rest. The dataset does not include listing IDs, raw IP addresses, store account IDs, or images. Text itself may contain personal information, so this is not anonymous data.

A separate random token associates your contributions with this browser so you can delete them. Under Advanced, turn off “Help improve Crumb” to stop future sharing, or use “Delete shared data” to stop sharing and delete retained examples for this browser. Previously submitted requests may finish after switching sharing off; deletion also blocks those requests from restoring deleted examples. Uninstalling does not delete server data and removes the local deletion token; delete shared data before uninstalling if you want it removed immediately. Backups may retain deleted or expired entries for up to seven additional days. Deleting examples does not undo training already completed using them. Access and exports are restricted to the password-protected admin dashboard; exported copies must follow the same retention and deletion rules.

Feedback

If you send feedback from the extension popup, Crumb stores your chosen topic, any response you write, the current website’s domain (not the full page address), and your extension version for up to one year. No search or listing content is attached automatically. A keyed hash of the installation ID supports duplicate prevention and rate limits; the server also uses a keyed hash of network information for rate limits. Feedback is reviewed in the password-protected admin dashboard to improve the product, and is not automatically added to the model-training dataset. Please leave out personal or sensitive information.

If you use your own key

The optional setting under Advanced stores your TypeSafe API key locally in your browser profile. In this mode, classifications go directly to TypeSafe and usage is billed to your TypeSafe account. Your key is not sent to Crumb’s backend.

Service activity metrics

For the hosted service, the extension also sends cumulative daily counts of unrelated listings first filtered and, separately, ad placements first hidden, identified by source store. Cached decisions count too; an ad carousel or banner counts as one placement. These reports contain no listing IDs or text and exclude personal-key mode. Crumb keeps filtering and ad counts, limit-hit counts, and timestamped counts of new classifications for 30 days, and hourly service activity for up to 31 days. These are associated with keyed hashes of installation IDs. These help us understand usage, available allowances, and service reliability. They do not contain raw installation IDs, raw IP addresses, search text, or listing text. This activity does not include requests made directly to TypeSafe using your own key.

Website requests

When you open Crumb on an unsupported website, it reads the current tab’s hostname locally. Only if you click “Request this site,” Crumb sends that domain and your installation ID to its backend, including in personal-key mode. Page paths, search terms, page content, and tab titles are not sent with this request. The backend stores the domain, a keyed hash of the installation ID, and the request date for up to one year to count requests once per installation and plan support. Network-based rate limits prevent abuse. Domain totals are visible only in the authenticated admin dashboard; a local acknowledgement remembers sites you requested.

Your controls

Turn filtering off to stop new classifications and restore hidden listings. Ad removal has its own switch and runs locally. Uninstalling Crumb removes its extension storage from your browser. The extension does not include website analytics.

Website analytics

This website uses Google Analytics to understand visits and interactions. Google may use cookies and process information about pages visited, referring sites, browser and device details, and approximate location. This analytics tag runs on the Crumb website, not inside the extension, and is not sent your shopping search or listing data by the extension. See Google’s privacy policy and Google’s Analytics opt-out tool.

Free usage

Daily and shared service allowances help keep Crumb free. When the allowance is exhausted, new AI filtering pauses. Cached decisions and local ad filtering remain available.

Crumb is an independent project, not affiliated with or endorsed by the shopping platforms it supports. TypeSafe and Fly.io operate their own services. See TypeSafe and Fly.io’s privacy policy for provider information.