Privacy policy
Last updated: October 14, 2026
This policy explains what data Retineo processes, why, and what rights you have. Retineo is a flashcard app for learning languages at retineo.io and app.retineo.io.
Data controller
The controller is Łukasz Sprężak, running a sole proprietorship registered in CEIDG, ul. Władysława Truchana 37 lok. 13, 41-500 Chorzów, Poland, NIP (tax number) 6262886108, REGON 521689917.
For personal data matters, write to contact@retineo.io or use the contact form with the topic “Account and personal data”.
What data we process and where it comes from
All data comes from you or is created while you use the app.
- Account: email address, password hash (we never store the password itself), the dates the account was created and the address confirmed, the language of the confirmation email.
- Study: card state and review history (ratings, response time), study rounds, flashcards switched on or off, study, interface language, theme and pronunciation settings.
- Your content: your own flashcards, your own decks and language pairs, descriptions of reported flashcard mistakes.
- Contact: email address, topic and message from the contact form; for a bug report — if you tick that option — the app version and the browser identifier.
- Technical data:
- IP address after a failed sign-in (protection against password guessing),
- IP address and a hash of the email address when an activation email is sent (sending limit),
- IP address and account identifier when the contact form is sent (message limit),
- server logs and error reports with the account identifier, without form contents, passwords or cookies.
Purposes and legal bases
| Purpose | Legal basis (GDPR) |
|---|---|
| Creating and running the account, studying, saving progress and your content | Art. 6(1)(b) — performance of the service contract |
| Sending the account activation email | Art. 6(1)(b) |
| Replying to a contact form message | Art. 6(1)(f) — legitimate interest: replying to the person who wrote |
| Security: sign-in and sending limits, logs and error reports | Art. 6(1)(f) — legitimate interest: protecting the service and accounts |
| Mnemonics, simpler flashcards and illustrations you ask for | Art. 6(1)(b) — performance of the contract (you start the feature yourself) |
| Database backups | Art. 6(1)(f) — protection against data loss |
| Attaching the app version and browser to a bug report | Art. 6(1)(a) — consent (a checkbox in the form that you can untick) |
An email address and a password are required to create an account. We make no decisions based solely on automated processing and do not profile users for marketing.
Recipients
We use providers that process data on our behalf:
- OVHcloud (OVH SAS, France) — the application and database server in Strasbourg and the mailbox we send from and where contact form messages arrive.
- Sentry (Functional Software, Inc.) — application error reports in the EU region (Frankfurt), with the account identifier, without the email address, cookies, headers or request contents.
- Anthropic (Anthropic, PBC) — the Claude language model: at your request it suggests a mnemonic or simpler flashcards for a difficult flashcard and draws illustrations, suggests flashcards from an uploaded TXT or PDF file, and assesses decks submitted for publication. It receives only flashcard content (both sides, the example, the note), the content of an uploaded file and the interface language, without the email address or account identifier. We do not store an uploaded file on our server – it is processed only while the suggestions are prepared.
Sentry and Anthropic are US companies. Transfers outside the European Economic Area rely on the standard contractual clauses approved by the European Commission, included in these providers' data processing agreements, and for providers participating in the EU–US Data Privacy Framework also on the Commission's adequacy decision.
Similar flashcards are found by a language model running on our own server; this search does not send flashcard content to external services.
Retention
- Account, progress and your content — until the account is deleted. You delete the account yourself in “Settings” with your password: we immediately erase your email address, pseudonym, study progress, review history, settings, own flashcards and decks. Decks published in the catalog leave it; people who added them keep their copies without your pseudonym, and approved versions of those decks stay in the moderation history without data that identifies you.
- Failed sign-ins — 15 minutes, then the entry is removed on the next attempt.
- Activation and contact form limits — 1 hour.
- Activation link — valid for 24 hours.
- Accounts never activated — deleted 30 days after registration if the address was not confirmed.
- Backups — a weekly database copy, kept encrypted by the controller; for 5 weeks; data deleted from the database disappears from backups at the latest after that time.
- Contact form messages — 12 months after the correspondence ends.
- Server logs and error reports — server logs for up to a few weeks (the oldest entries are replaced by new ones), error reports in Sentry for 90 days.
Your rights
You have the right to:
- access your data and receive a copy (you can also download your study progress as a JSON file in Settings),
- rectification,
- erasure,
- restriction of processing,
- data portability,
- object to processing based on legitimate interest,
- withdraw consent at any time, without affecting the lawfulness of processing before the withdrawal,
- lodge a complaint with the Polish supervisory authority, the President of the Personal Data Protection Office (ul. Stawki 2, 00-193 Warsaw), or the authority in your country.
To exercise your rights, write to contact@retineo.io. We will reply within one month of receiving the request; in complex cases this may be extended by two further months, and we will tell you so.
Browser storage and cookies
We use only strictly necessary browser storage. There is no analytics, no advertising and no scripts or fonts from external servers, so we do not ask for cookie consent.
| Name | Type | Purpose | Duration |
|---|---|---|---|
nuxt-session |
cookie | encrypted session of a signed-in account | 90 days |
tabula-guest-locale |
cookie | interface language of a signed-out visitor | 90 days |
retineo-verification-request |
session storage | email address during account activation, so the email can be resent | until the tab is closed |
retineo.changelog-seen |
local storage | the last “What’s new” version you saw | until you clear it |
Pronunciation
Pronunciation is played by your browser (Web Speech API), without any external service of ours. Some browsers also offer cloud voices of the browser vendor (e.g. “Google” voices in Chrome). Such a voice sends the text of the flashcard to the browser vendor. The app chooses a voice installed on your device by default and marks cloud voices as “online” in the list; they are used only when your device has no voice for the language or when you choose one yourself.
Moderation of content published by users
The content of a submitted deck is assessed automatically by the Claude language model of Anthropic (USA, see “Recipients”). Only the card content is sent to the model, without the email address or account identifier.
Changes to this policy
We will announce significant changes in the app or by email. This policy applies from 14 October 2026.
