Private Translator Extension: What "No History" Actually Means
If you translate medical notes, legal contracts, NDA-bound product specs, or sensitive client correspondence, the privacy policy of your translator is part of your security model. Most browser translation tools retain text on the server — sometimes indefinitely, sometimes to train on. SwiftIn does not. This article walks through what that means in code, what it does not mean, and how to verify the claim yourself.
The default is “off”
SwiftIn ships with translation history disabled by default on every plan, including paid plans. Free has no server-side history at all — the option does not exist. Pro and Team have history as an opt-in toggle in the settings, with retention windows of 90 and 180 days respectively when enabled.
The translation request itself runs through the backend (the AI engines live there), but once the response is returned to your browser, the text is discarded. There is no persistent record on our side of what you translated, who translated it, or in which direction.
For users who never touch the history toggle, this is the whole story: type, translate, nothing remains.
What this matters for
- Medical and clinical text — symptoms, prescriptions, patient notes. HIPAA-adjacent workflows usually need an explicit data-handling story; a translator that retains the source text on a server you do not control is a compliance risk.
- Legal correspondence — draft contracts, settlement letters, attorney-client privileged messages. Translation services that train on free-tier input have leaked legal phrasing in past incidents; defaulting to no retention avoids that surface entirely.
- NDA-bound product specs — cross-border engineering teams often need to read foreign-language spec docs without sending them to a public cloud. The translation still hits a backend, but the lifecycle ends there.
- Personal sensitive content — mental-health journaling, support-group messages, financial statements. Privacy here is about not having a server-side record at all, regardless of who could request it.
What “no history” does not mean
Honest scope: SwiftIn is a cloud-AI translator. The translation request travels from your browser to our backend and to upstream AI models. Three implications:
- You need an internet connection. If your threat model rules out any cloud egress for translated text, only an on-device tool (e.g. a native OS translator with local language packs) can satisfy that. SwiftIn does not.
- Upstream model providers have their own policies. When the premium AI engine processes your text, the upstream provider may briefly handle it under their published policy. We pass the text through; we do not republish it.
- Free tier with Google or Bing fallback uses those public engines. When the AI quota is exhausted on the free plan, SwiftIn falls back to Google or Bing translation. Their privacy policies apply for those requests — not ours. For sensitive text, stay on premium AI translation (Pro or Team) where the routing is under our backend.
How to verify it yourself
Three things you can check today:
- Open SwiftIn settings and look for the “Translation history” toggle. On a fresh install on Pro or Team, the toggle is off. On Free the section is absent entirely.
- Open the dashboard at swiftin.dev/dashboard/translations — if you have not opted in, the page is empty. There is no hidden record.
- Read the Privacy Policy and the Data Processing Addendum. The retention table there matches the toggle behavior described above. We wrote those documents to match the code, not the other way round.
Operational note for legal and medical teams
Team plan owners can enforce the no-history policy across the whole team via the dashboard. Once the owner toggle is off, individual team members cannot opt back in. For organisations with regulated data-handling requirements, this is the easier way to keep the surface clean: configure once at the team level, every seat inherits the default.
Enterprise contracts can additionally include data-residency commitments and custom DPA language — reach out via the Enterprise tier on Pricing.
When SwiftIn is the wrong tool
Be honest about scope. If you cannot send the text to any cloud at all — offline translation requirements, air-gapped environments, classified material — a browser extension that talks to AI APIs is not the right shape. For that need, an on-device translator (native OS, downloaded language packs) or a self-hosted model is the correct surface. SwiftIn does not pretend to compete in that category.
For everything that does live in a normal browser tab and can hit a cloud endpoint — and where you want the lifecycle to end after the response — the no-history-by-default behavior is the differentiator.
Related: Privacy Policy · DPA · Pricing