SayAgain — Privacy Policy

Effective date: 24 July 2026 · Last updated: 19 August 2026

SayAgain is a browser extension that lets you capture, translate, and replay phrases from YouTube subtitles. This policy explains, in plain terms, what data the extension handles, why, and who it is shared with. We keep the list deliberately short — SayAgain collects only what it needs to do its job.

The short version: we store the phrases you choose to save, your account email, and your settings. We do not run ads, we do not sell your data, and we do not follow you around the web. We do count how the extension is used — which features are used and when — against a random number made on your device that is not linked to you or to your account, and those counts never contain a phrase, a video, or an address. We do record which video a saved phrase came from — its address and title — because a card cannot replay a moment without knowing where that moment is. Card payments are handled entirely by Stripe — we never see or store your card number.

1. Who we are

SayAgain is an independent project operated by the extension's developer ("we", "us"). For any privacy question or request, contact us at the address in the Contact section below.

2. What we collect

The extension works without an account. If you choose to create one, and as you use the features, the following data is handled:

Account information

Saved phrases ("cards")

When you save a phrase, we store the information needed to show and replay it later:

Settings and subscription

Your voice

SayAgain can show you how closely you repeated a line. Pressing the microphone is the only thing that starts this, and this is the whole of what happens.

Anonymous usage statistics

SayAgain counts how the extension is used, so that we can tell which parts help people learn and which parts are failing. These counts are deliberately anonymous. This is the complete description of them.

What we do NOT collect

3. How we use your data

We do not use your data for advertising or profiling, and we do not sell or rent it to anyone.

4. Who we share data with (service providers)

SayAgain relies on a small number of trusted providers that process data on our behalf, strictly to deliver the features above:

ProviderPurposeData involved
Supabase Database and account authentication (sign-in, account emails) Email, saved cards, settings, subscription status
Resend Delivering account emails (confirmation code, password reset) on Supabase's behalf Your email address and the message contents (e.g. the verification code)
Google Cloud Translation Translating the phrase text you ask to translate The phrase text and the target language (no account identity attached)
Google Cloud Run (Frankfurt, EU) Hosting our server — the one that translates, syncs cards and serves the review player page Everything the extension sends us passes through it: phrase text, saved cards, account requests
PostHog (EU region) Anonymous usage statistics — which features are used and when Only the fixed list of events described above, labelled with a random per-installation number. No phrase, translation, video, address or account identity. Our server sends these; the extension never contacts PostHog directly, and the data stays in the EU.
Cloudflare Our domain and the secure connection to our server Requests to our server pass through Cloudflare, which terminates the encrypted connection
Stripe Processing subscription payments and the billing portal Payment details you enter on Stripe; a subscription/customer identifier
Google Chrome Web Store Distributing and updating the extension Governed by Google's own policies

Each provider processes data only as needed for its function and under its own privacy terms.

5. Payments

Subscriptions are not switched on yet — the current version of the extension cannot take a payment at all. This section describes how it will work when they are.

Subscription payments are processed entirely by Stripe. When you upgrade, you are taken to a Stripe-hosted page and enter your card details directly with Stripe. We never receive, see, or store your card number. We only learn from Stripe whether your subscription is active, plus an identifier that lets us match it to your account.

6. Browser permissions

The extension requests only the permissions it needs:

The microphone is not in this list, and that is not an omission. The repeat-out-loud feature uses your browser's own speech recognition from the YouTube page itself, so the extension asks for no microphone permission of its own — your browser asks you directly, on behalf of www.youtube.com, the first time you press the button. See Your voice above.

7. Data retention and deletion

We keep your data for as long as your account exists. You can request deletion of your account and associated data at any time by contacting us at the address below; we will remove it from our database. Cards you keep only on your device (before signing in) are removed when you clear the extension's storage or remove the extension.

8. Data security

All communication between the extension, our server, and our providers uses encrypted HTTPS connections. Access to the database is restricted to our server, and account credentials are handled by our authentication provider, not stored by the extension.

9. Children

SayAgain is not directed at children under 13, and we do not knowingly collect data from them.

10. Changes to this policy

We may update this policy as the extension evolves. Material changes will be reflected here with a new "Last updated" date. Continued use of the extension after an update means you accept the revised policy.

11. Contact

For any privacy question, or to request deletion of your data, contact us at: flsfedorovlev@gmail.com.