DualTran Privacy Policy
Last updated:
About DualTran
DualTran is a browser extension that helps you translate full pages or selected text between languages, and view original and translated content side by side. It supports Google Translate and Text-to-Speech (TTS), as well as AI providers you configure (e.g., OpenAI, OpenRouter, Anthropic, Google Gemini, Azure OpenAI, DeepSeek, Grok). The current version does not enable Yandex, Bing, or DeepL.
Data Safety Summary
- No collection or sale of personal data: We do not run servers to collect your personal information; no ads or third-party trackers are embedded.
- Only on-demand transmission: Text is sent to translation/TTS services only when you explicitly request translation or speech.
- API keys stored locally: If you opt to use AI providers, your keys are stored in your browser’s
storage.local, not uploaded to the developer. - Local cache is removable: Translations are cached in IndexedDB for performance; you can clear it in the extension options or by uninstalling the extension.
- No ad/marketing sharing: We do not share your data with third parties for advertising or marketing.
Chrome Web Store Disclosure Summary
- Collection: The developer does not collect user data.
- Processing: When you request translation/TTS, necessary text is sent to your chosen provider; preferences and keys are stored locally.
- Sharing: No sharing for ads/marketing; text is transmitted only to complete translation/TTS.
- Purpose: Core functionality (translation/tts).
- Retention: Local storage/cache persists until you clear it or uninstall; incognito tabs do not write persistent cache.
Content We Process
To provide translation and related features, the extension processes locally:
- Text content from pages you view, text you select, and text you input to translate.
- Runtime context to improve experience (e.g., detected language, target language, AI enhancement preferences).
- For TTS, the text to be spoken is sent to the TTS endpoint to generate audio.
Such information is processed on your device and only transmitted when you initiate translation or TTS.
How We Use Data
- When you translate, necessary text snippets are sent to the currently selected provider (e.g., Google Translate or configured AI providers).
- To reduce duplicate requests and improve speed, results are cached in local IndexedDB.
- When using TTS, the text is sent to a TTS endpoint to return audio.
- No use for advertising, analytics, profiling, or data sales.
Third-party Services & Transfers
Your browser sends necessary text to the chosen service only when you request translation or speech.
Possible Translation/TTS/AI Services
- Google Translate & TTS (translate.googleapis.com, translate.google.com, TTS endpoints) — Privacy: Google Privacy Policy
- AI providers (only if you configure and use them):
- OpenAI (api.openai.com): Privacy Policy
- OpenRouter (openrouter.ai): Privacy
- Anthropic (api.anthropic.com): Privacy
- Google Gemini (e.g., generativelanguage.googleapis.com): Google Privacy Policy
- Azure OpenAI ({your-resource}.openai.azure.com): Microsoft Privacy Statement
- DeepSeek (api.deepseek.com): Privacy
- Grok / xAI (e.g., api.x.ai): Privacy
Note: Data is transmitted to complete translation/TTS and governed by the respective provider’s privacy policy.
API Keys & Accounts
- If you use AI providers (e.g., OpenAI, OpenRouter, Anthropic, Google Gemini, Azure OpenAI, DeepSeek, Grok), you may enter API keys in the extension settings.
- Keys are stored locally in
chrome.storage.localand are not uploaded to the developer. - When you make an AI request, we send only necessary text and the authorization header (
Authorization: Bearer <key>) to the selected API endpoint. - For OpenRouter,
HTTP-RefererandX-Titleheaders may be sent as required for source attribution (customizable in settings). - Protect your keys. You can delete or rotate them at any time, or uninstall the extension to remove all local data.
Local Storage, Cache & Retention
- Preferences & keys: Saved in
chrome.storage.local(not synced across accounts). - Translation cache: Stored in IndexedDB (per service/language), used to reduce duplicate requests.
- Deletion: Clear cache from the options page, or uninstall the extension to remove all local data (including preferences, cache, keys).
- Incognito: When a request originates from an incognito tab, results are not written to persistent cache.
- Retention: Data persists locally until you clear it or uninstall.
Browser Permissions
To provide core features (Manifest V3):
- storage: Save preferences and (optional) API keys locally.
- activeTab: Inject scripts into the current tab when you interact with the extension.
- contextMenus: Provide context menu entries (translate page/selection).
- webRequest: Read document MIME type via onHeadersReceived to improve handling; not used to intercept for data collection.
- alarms: Delay auto-translate after DOMContentLoaded for compatibility.
- offscreen: Play TTS audio from the service worker via an offscreen document.
- optional_permissions → webNavigation: Optional for auto-translate on same-domain navigation.
- host_permissions: Access only hosts required for translation/TTS (examples):
https://translate.googleapis.com/*,https://translate.google.com/*https://api.openai.com/*https://api.anthropic.com/*https://generativelanguage.googleapis.com/*https://*.openai.azure.com/*https://api.deepseek.com/*https://openrouter.ai/*https://api.x.ai/*
Note: Content scripts match <all_urls> to operate on arbitrary pages. Text is only used locally and with providers you choose.
Your Choices & Controls
- Switch providers and target languages in the popup or options page.
- Enter, edit, or delete API keys at any time.
- Clear local translation cache in the options page.
- Disable or uninstall the extension at any time (uninstall removes all local data).
Children
DualTran is not directed to children under 13 and does not knowingly collect information from children.
Security
- No developer-operated backend minimizes centralized storage risk.
- API keys are stored locally in
storage.local. Note: browser local storage is not a dedicated secrets vault; avoid using shared devices or remove keys after use. - All requests are sent over HTTPS to the selected providers.
Cross-border Transfers
When using third-party translation/AI/TTS services, text and necessary metadata are sent to servers that may be located in other countries/regions, subject to each provider’s policy.
Changes to this Policy
We may update this policy due to feature or policy changes. Updates will be posted on this page with a new “Last updated” date. Material changes may be announced in release notes or the store listing.
Contact
If you have questions about this policy or our data practices, please contact us via the “Contact the developer / Support” entry on the Chrome Web Store listing.