EasyDualSub Privacy Policy

Last updated: October 16, 2026

Your viewing history and personal data belong to you. This Privacy Policy explains how EasyDualSub (the "Extension", "we", "us") collects, uses, stores, and shares information when you use the browser extension and its associated website at subtiltee.com.

EasyDualSub displays dual (bilingual) subtitles on supported streaming platforms. Whenever possible it simply merges the two subtitle tracks the platform already provides — which happens entirely on your device. Some features — accounts, payment, AI translation of a missing language, and product analytics — require sending limited data to us or to named third parties. Those flows are described in full below.

The rules governing your use of the Extension are set out separately in our Terms of Service.

1. Information We Collect

Account & Billing

If you create an account or purchase a paid plan, we collect:

  • Your email address, used to create and authenticate your account.
  • Payment information, processed exclusively by our payment provider Stripe. We never receive or store your full card number.
  • Your subscription status, so the Extension knows what you have access to.

You can merge native subtitle tracks without creating an account. In that case we collect none of the above.

Usage Analytics

We collect anonymous product analytics through our analytics provider PostHog to understand which features are used and where the Extension fails. Each installation is assigned a randomly generated identifier stored locally in your browser; it is not derived from any personal information. If you sign in, it is linked to your account ID so your activity is consistent across devices.

We record events such as:

  • Extension installed.
  • A dual-subtitle overlay being built, including the streaming platform (for example "netflix"), whether a native track was merged or a translation was generated, and the translation engine used.
  • An access barrier being shown and an upgrade prompt being clicked.
  • A subscription being created, and real-time translation failures.
  • Your browser type (Chrome, Edge, Firefox, or Opera) and the extension version.

In analytics, we do not record the titles of what you watch, the contents of subtitle files, your browsing history, your keystrokes, or any activity on sites where the Extension does not run. Automatic capture of page interactions is explicitly disabled. Error reports, described below, are handled separately.

Marketing Attribution

When the Extension is installed, it reads a marketing source tag (for example ref_source=google_ads) from our own website to learn which campaign or link brought you here. This tag contains no personal information, is stored locally, and is attached to a purchase if you make one so we can tell which channels work. It is not used to track you across the web.

Automatic Error Reports

When the dual subtitles, the dual subtitle download or the AI translation fail because of a technical problem, the Extension automatically sends an error report to our report service, hosted on Cloudflare, so the site where it failed can be fixed. The report contains the error message, the address of the page where the error happened (which can include the video title), and the technical logs of that browser tab (what the Extension tried, which subtitle requests failed, and at most a short excerpt of a subtitle line). Logs from your other tabs are left out, and any address of another site is masked. It also contains your anonymous install ID, the Extension version, your browser and, if you are signed in, your plan, but never your email. Before sending, email addresses, login tokens, URL signatures and translation API keys are masked. Problems on your side, such as a rejected API key or a used-up quota, are never reported. The same error on the same site is reported at most once a day, and no more than 5 reports are sent per day. Reports are used only to reproduce and fix bugs, and are deleted automatically after 60 days.

You can turn automatic error reports off at any time: with the Turn off link shown under any error, or with the Automatic error reports switch in the Extension's advanced settings. On Firefox, revoking the "Technical and interaction data" permission in the add-ons manager also turns them off.

Feedback Forms & Bug Reports

When you open our feedback form from the Extension, it is pre-filled so you don't have to describe your setup: the address of the page you were on, the Extension version, your browser type, your anonymous install ID, and, if you are signed in, your email and plan. These values are attached to the form only when you open it yourself, and are only sent if you submit it.

Under an error, the Report this problem button opens a short form linked to that error report, so you can describe what happened and get an answer. When no automatic report was sent for that error (for example because you turned them off), clicking it sends the same report, this time with your email if you are signed in.

2. Subtitle & Translation Processing

EasyDualSub's core job is to show two subtitle languages at once. How subtitle text is handled depends on how the second language is obtained:

  • Native tracks (no translation): when both languages already exist on the streaming platform, EasyDualSub merges the two existing subtitle tracks in your browser. No subtitle text is sent to us or to any third party.
  • Managed translation (subscription): when the second language does not exist and you use our managed translation backend, the subtitle text to be translated is sent to our processing service (hosted on subtiltee.com), which forwards it to a language-model provider. Text is processed transiently to produce the subtitle, is not stored or retained afterwards, and is not used to train models.
  • Free translation engines: if you choose a free engine (Google Translate or Microsoft Translator), the subtitle text is sent directly from your browser to that provider, under that provider's own privacy policy.
  • Bring-your-own-key (BYOK): if you configure your own API key (DeepL, OpenAI, Groq, Gemini, or OpenRouter), the subtitle text is sent directly from your browser to that provider using your key, under your own account with them. We never receive that text.
  • Local mode (Ollama): if you enable local translation via a self-hosted Ollama instance, translation happens entirely on your own machine. The subtitle text never leaves your computer and is never sent to us or any third party.

We never record video or audio, and we do not build a history of the titles you watch or the subtitles that are displayed.

3. How We Share Data — Third Parties

We do not sell your data, and we do not share it for advertising. These are all the parties data is shared with, and why:

PartyData sharedPurpose
PostHogAnonymous install ID, usage events, browser typeProduct analytics (EU-hosted)
StripeEmail, payment details, marketing source tagPayment processing
SupabaseEmail, account and subscription recordsAccount database and authentication
CloudflareIP address (transient), subtitle text to translate (managed backend), error reports (technical logs of a failure)Hosting, managed translation service and bug reports (kept 60 days)
Google, Microsoft, DeepL, OpenAI, Groq, OpenRouterSubtitle text you choose to translateTranslation — only for the engine you enable
TallyWhatever you type in a form, plus the details pre-filled when you open it (page address, version, browser, install ID, email and plan if signed in)Feedback, bug report and uninstall forms

We may also disclose data if required to do so by law, or to protect our rights and the safety of our users.

4. Permissions and Why We Need Them

The Extension requests the following browser permissions:

  • activeTab and scripting — to run on the video page you are watching and inject the dual-subtitle overlay.
  • webRequest — to observe the player's own subtitle requests so we can identify the available tracks on supported streaming sites. We do not read, log, or transmit your general web traffic.
  • storage — to save your subtitle styling preferences, settings, and session locally in your browser.
  • Host permissions — granted for the streaming platforms we support (Netflix, Disney+, Prime Video, Max, Apple TV+, YouTube and their content-delivery domains), for the translation APIs listed above, and for subtiltee.com to synchronize your login.

5. Data Retention

Account and billing records are kept for as long as your account is active and as required to meet our legal and accounting obligations. Subtitle text processed by the managed translation backend is transient and is not retained after the translation has been produced. Error reports are deleted automatically after 60 days.

6. Your Rights

You have the right to:

  • Access the personal data we hold about you.
  • Request correction or deletion of your data.
  • Delete your account at any time, which removes your associated account data.
  • Turn automatic error reports off, from the link under an error or in advanced settings.

To exercise these rights, contact us at the address below.

7. Security

We use industry-standard measures, including encryption in transit (HTTPS), to protect your information. No method of transmission over the Internet is 100% secure, but we work to protect your data using reasonable safeguards.

8. Changes to This Policy

We may update this Privacy Policy from time to time. Material changes will be reflected by updating the "Last updated" date above.

9. Contact

For any question about this Privacy Policy, contact us at contact@subtiltee.com.