Privacy Policy
Last updated July 17, 2026
Steps to Fluency ("we", "us") is a language-learning web app used by people around the world. This policy explains what personal data we collect, how and why we use it, who we share it with, how it moves across borders, and the rights you have wherever you live. Steps to Fluency is currently in beta, so features — and this policy — may change. This policy is written in English, and the English version controls.
Who we are
The Service is operated by Gabriel Muldoon, based in Michigan, United States, who is the data controller for the personal data described here. You can reach us at [email protected] for anything privacy-related.
Information we collect
When you create an account and use the app, we collect:
- Account details — your email address and a password. Passwords are stored only as a secure hash by our authentication provider (Supabase); we never see or store your password in plain text.
- Your preferences — the language you speak, the language you're learning, your interface language, time zone, and a self-selected starting level.
- Content you create — the texts you add for reading, the words and sentences you save, your decks and flashcards, and your study, review, and reading history. If you use the Watch feature, we also store which videos you've watched and your progress in them; the transcript text itself stays in your browser and is not stored on our servers, though its words are processed for lookups like any other text.
- Usage counts — daily counts of certain actions (for example, AI lookups), used to enforce the limits of your plan.
- Technical information — like any website, our hosting provider automatically processes standard request data such as your IP address, browser type, and timestamps in server logs, to run and secure the service. We also keep short-lived security records of our own — rate-limiting entries that include your IP address, deleted after about 24 hours — and pass your IP to Cloudflare when verifying that a sign-up is human.
Cookies
We don't use advertising or analytics cookies, which is why you don't see a cookie banner. We set only:
- A session cookie that keeps you logged in (essential).
- Preference cookies that remember the interface language and theme you chose — set only when you pick them.
If you use the Watch feature, the embedded YouTube player may set its own cookies when you play a video; we use YouTube's privacy-enhanced mode to limit this (see “Providers” below).
How and why we use your information
We use your data to provide the app (analyzing your texts, looking up and translating words, scheduling your reviews, tracking your progress), to send essential account emails (verification, password resets, important service notices), and to enforce plan limits and keep the service secure.
Where the GDPR or similar laws apply to you, our legal bases are: performing our contract with you (running the app you signed up for — most of what we do); our legitimate interests (keeping the service secure, preventing abuse, and enforcing usage limits); and complying with legal obligations. We don't rely on consent for any of the processing described here, and we don't use your data for automated decisions that have legal or similarly significant effects on you.
Providers we share data with
We rely on a small number of trusted providers to run the app, and share only what each needs to do its job:
- Supabase — stores your account and data, handles login, and delivers account emails.
- Vercel — hosts the application and processes your requests.
- Anthropic — we send parts of your content to Anthropic's Claude API to power the app's language features: the word, sentence, or short surrounding context when you look up or translate a word, ask for a grammar explanation, or generate practice sentences; words from a text, in batches, to determine their dictionary forms when you open it; and, on paid plans, the title and an excerpt (up to roughly the first 4,000 characters) of each text you add, to categorize and summarize it for your library. Per Anthropic's terms, text sent through their API is not used to train their models.
- Google (YouTube) — the Watch feature embeds YouTube's video player in privacy-enhanced mode. When you open or play a video, your browser communicates directly with YouTube/Google, which receives your IP address and viewing activity and processes it under Google's own privacy policy.
- ElevenLabs — on paid plans, generates the lifelike pronunciation audio: we send only the word or example sentence to be spoken (never your name, email, or anything else about you), and the resulting audio clip is stored in a shared cache that serves every learner.
- Cloudflare (Turnstile) — provides invisible bot protection on the sign-up form, which may set a cookie during that security check. Cloudflare's processing is described in its Turnstile Privacy Addendum.
If the Service is ever reorganized or sold, your data may be transferred to the successor as part of that change, under protections no weaker than this policy — and we'll notify you before it happens.
What we don't do
Pronunciation on the free plan uses your browser's built-in speech, which never leaves your device; on paid plans, lifelike audio is generated through ElevenLabs as described above — only the word or sentence being spoken is sent, never anything about who you are. Apart from the YouTube player described above, nothing on our pages talks to third-party trackers, and we use no third-party analytics or advertising. We do not sell your personal data, and we do not use or disclose it for targeted advertising (“selling” or “sharing” as defined in the California Consumer Privacy Act).
International data transfers
We serve users worldwide, and the providers above process data primarily in the United States. If you use the app from outside the US — including from the EU, EEA, UK, or Switzerland — your personal data will be transferred to and processed in the United States and possibly other countries where our providers operate.
Where those laws require safeguards for such transfers, our providers rely on recognized mechanisms such as the European Commission's Standard Contractual Clauses or certification under the EU-U.S. Data Privacy Framework (and its UK and Swiss extensions). You can contact us for more information about the safeguards that apply to your data.
Keeping and deleting your data
We keep your data for as long as your account is active. You stay in control:
- Export — from the Account page you can download a copy of your account data and learning content at any time.
- Delete — you can delete your account from the Account page. Your account is deactivated immediately, and you have a 7-day window to change your mind by signing back in; after that, your account and personal data are permanently deleted (some records may persist briefly in backups before they age out).
One narrow exception: generic, dictionary-style results we've cached to serve every user — for example, the base form or translation of a common word — live in shared caches that aren't linked to your account and may be kept after you delete it.
Your rights
Wherever you live, you can access and export your data directly in the app from the Account page at any time, and start account deletion yourself — no email or waiting on us required.
If you are in the EU, EEA, UK, or Switzerland, you additionally have the right to correct inaccurate data, restrict or object to certain processing, receive your data in a portable format, and lodge a complaint with your local data protection authority (in the UK, the ICO) — though we'd appreciate the chance to resolve any concern first.
If you live in California or another US state with a privacy law, you have similar rights to know, access, correct, and delete your personal information, and the right not to be discriminated against for exercising them.
For anything you can't do in-app, email us and we'll help. We may need to verify your identity before acting on a request, and we'll respond within the time your local law requires.
Children
The app is not directed to children under 16, and we do not knowingly collect their data. If your country sets a higher minimum age for consenting to data processing, that age applies. If you believe a child has created an account, contact us and we'll remove it.
Changes to this policy
We may update this policy as the app evolves. We'll change the “Last updated” date above, and for significant changes we'll give notice in the app or by email.
Contact
Questions? Email us at [email protected].
See also: Terms of Service