← Home

Privacy Policy — Netflix Dual Subtitles

Last updated: 5 September 2026

Netflix Dual Subtitles (“the extension”) runs on your device. It has no analytics or tracking, no advertising, and no remote code, and it does not collect personal information. The only network requests it makes to the developer’s site are: (1) a small feature-configuration check when you open the popup (contains no personal data — see “Feature configuration”), (2) a feedback submission, only if you choose to send one — either from the popup’s feedback form or from the short page that opens if you uninstall (see “Feedback” and “Uninstall feedback”), (3) dictionary-pack downloads and a pack-update check at most once a week when you open Netflix, only if you use word lookup’s downloadable packs (see “Dictionary packs”), and (4) a lookup of a single word on two Wiktionary-based sites only if you turn on “Also look up online” (see “Online dictionaries”).

Where it runs

Only on Netflix (https://www.netflix.com/watch/*, /title/*, /browse*, and /search*) — the watch player, the title/preview pages, and the search page, so dual subtitles work in the previews as well as full playback. It reads the subtitle information Netflix already loads for the video being shown to display a second subtitle language and offer related tools (search, copy, export). It runs on no other website.

Data stored on your device

Saved locally in your browser’s extension storage; it never leaves your device (unless you submit feedback):

Uninstalling the extension removes all of it.

Subtitle files

To display and export subtitles, the extension downloads subtitle files from Netflix’s own content servers (the same files Netflix loads for playback), within the Netflix page. These are not sent anywhere else.

Clipboard

The “click/drag a subtitle to copy it” feature is off by default. When enabled, selected subtitle text is written to your clipboard locally, only when you initiate it.

Feedback form (optional, user-initiated)

The popup includes an optional feedback/report form. If — and only if — you fill it in and press send, the following is transmitted, via the third-party form service Web3Forms, to the developer:

The diagnostics do not include your identity, your Netflix account, or which title you are watching. The form is never sent automatically. Web3Forms processes the submission under its own privacy policy.

The word popup (word lookup, in beta) has a “Report an error” link for a wrong or odd dictionary entry. It works the same way: nothing goes out until you press Send. With your message it sends the word you looked up, the subtitle line it was in, what the popup showed for it (headwords, parts of speech, first glosses, which layers answered) and the versions of your dictionary packs, the extension version and your interface language — no title, no account, no other lines.

Uninstall feedback (optional, user-initiated)

When you uninstall the extension, your browser opens a short feedback page on the developer’s website (netflix-dual-subs.pages.dev/uninstall.html). The page receives only your chosen interface language (so it can show in your language) — no personal data. It is entirely optional: nothing is sent unless you fill it in and press send. If you do, the same third-party service (Web3Forms) delivers what you typed — your message, any feature tags you tap, an optional reason, and an optional reply email — to the developer. No diagnostics, account, or viewing data are included.

Feature configuration

When you open the extension’s popup, it fetches a small static configuration file from the developer’s website (netflix-dual-subs.pages.dev) that toggles optional features (such as whether the feedback form is shown), carries the list of any deactivated supporter keys, and may include a short message from the developer (shown in the popup; you can dismiss it). This request sends no personal data (it is a plain download — your supporter key and its id are never sent); like any web request it includes your IP address, which the static host may log. The extension works normally if this check fails.

Dictionary packs (word lookup)

Word lookup — hovering a subtitle word to see its meaning — reads dictionary files that ship inside the extension; that involves no network request at all. Further dictionaries (“packs”) can be downloaded from the developer’s website (netflix-dual-subs.pages.dev/packs/…) only when you press Download (or turn on “Update packs automatically”, which then re-downloads packs you already installed when a newer edition exists). Such a download is a plain file fetch: it sends no personal data and nothing about what you watch or look up; like any web request it includes your IP address, which the static host may log. While word lookup is on and you have downloaded packs, the extension checks the site’s pack list at most once a week, when you open Netflix (one tiny request however many packs you have, again with no personal data) so it can offer updates. Nothing runs while you are not on Netflix. Looked-up words never leave your device: every lookup runs against files on your device. The dictionary data comes from Wiktionary (CC BY-SA 4.0).

Online dictionaries (optional, off by default)

The panel’s Learning screen has a switch, “Also look up online when your dictionaries have no entry” (off unless you turn it on). With it on, when the dictionaries on your device have no entry for a hovered word, the extension asks two Wiktionary-based sites over the internet, in this order, and stops at the first answer: freedictionaryapi.com and then en.wiktionary.org (v1.107.0+: for a Japanese word, jotoba.de is asked first). The request carries the word and nothing else — not the line, not the title, not your settings — and, like any web request, your IP address, which those sites may log under their own policies. It never fires for words your dictionaries know, and never for phrases. (v1.105.1+) When your explanation language is not English, the request to freedictionaryapi.com also asks for Wiktionary’s translation tables into that language — a flag on the same request; still only the word is sent. (v1.107.0+) A separate switch, off by default — “Also ask Google Translate (unofficial) for words nothing else knows” — sends the word alone to clients5.google.com, Google Translate’s unofficial endpoint, only when neither your dictionaries nor the sites above had an answer. Google’s own privacy policy applies to that request; the endpoint is not an official service and may stop working. With the switch off, nothing is ever sent to Google by this feature. Answers are kept in memory only for the current page. No permission is added for this: the sites allow such requests from any page. Turn the switch off and nothing leaves your device again.

On-device translation (optional, off by default)

A second switch, “Translate the word in its line, on your device”, uses the translator built into Chrome (Chrome 138 and newer; other browsers do not offer it) to show what the hovered word means in its line, and (v1.105.0+) to render a dictionary definition written in another language than your explanation language — for instance an English definition when you asked for Korean. The translation runs on your device: neither the word, the line nor the definition is sent to the extension’s developer or to any server. The first use for a language pair needs a language pack, which Chrome itself downloads from Google when you press the panel’s “Download language pack” button — that download is Chrome’s, governed by Google’s policies, and nothing in it comes from this extension. With the switch off, the translator is never touched.

Dictionary sites in the panel (on click only)

The word popup offers links to Naver’s dictionary and to Wiktionary. Since v1.98.0 a click loads that site inside the in-player panel by default (or, by your choice under “Open links”, in a new tab or a small window). Loading it is the same as visiting the site: the site receives the word you clicked and your IP address, under its own policy. Nothing is loaded until you click, the page is sent no referrer (Netflix’s address stays private), and the site is unloaded when you leave the screen. “Translate the line” always opens Google Translate in a tab or window, never in the panel.

Your own translation key (optional, off unless you set one up)

In the toolbar popup you can paste your own API key for DeepL or an AI provider (Gemini, Groq or OpenRouter). With a key saved, the word popup can ask that provider what the hovered word means in its line — by default only when your dictionaries have no entry, or for every word, or only when you click “Ask …”, as you choose. What is sent: the word and its subtitle line, to that one provider, under its own terms (unpaid Gemini keys let Google use inputs to improve its products — read your provider’s terms). The key is stored on your device in the extension’s own storage, is never sent anywhere but to that provider, and never reaches the Netflix page. Saving a key asks the browser once for permission to contact that one provider’s address; choosing another provider or removing the key gives that permission back. The extension asks for no other permission and works fully without a key.

Permissions

Remote code

None; all code ships inside the package.

Change history

Material changes to this policy are listed here, newest first, with the extension version each change applies from (and onward). (This tracks changes to the policy — for the full list of app features and fixes, see the changelog.)