Legal
Privacy Policy
This policy explains which personal data is processed when you use the Engrain app and this website, why, and on what legal basis. In short: as little as possible. This English version is provided for convenience; the German version is legally binding.
Controller
The controller responsible for processing personal data in the Engrain app and on this website is:
Codext GmbHFrankenstr. 10
74549 Wolpertshausen
Germany
Email: kontakt@codext.de
More company details are in our imprint.
The short version
- You don’t need an account. We don’t know your name or email address unless you write to us.
- There is no tracking, no analytics, no advertising and no third-party tracking or advertising SDKs.
- Your decks, cards, media, review history and settings are stored only on your device.
- Data leaves your device only when you use an AI feature or FSRS optimization, and when the app checks your purchase. Details below.
Data on your device
Engrain stores decks, cards, notes, images, audio recordings, review history, statistics and settings only locally on your device. We have no access to them. This includes the automatic backups the app creates on your device.
When you create and share a backup or export (.colpkg, .apkg, CSV), for example to iCloud Drive, Google Drive, by email or AirDrop, you decide where the file goes. The privacy policies of those services apply.
Depending on your device settings, app data may be included in your system backup with Apple (iCloud Backup) or Google (Android backup). You control this in your device settings; Apple’s or Google’s terms apply.
If you delete the app, its local data is removed from the device. Exports and backups you saved elsewhere remain there.
Camera, photos, microphone and notifications
- Camera and photos: only when you take or choose a picture yourself, for example for a card, for image occlusion or to create cards with AI from a photo. Images on cards stay on your device. A photo is sent to our server only when you explicitly create cards with AI from it (see “AI features”).
- Microphone: only when you start an audio recording, for example for a card. Recordings stay on your device.
- Notifications: reminders are scheduled as local notifications on your device. There is no push server and we receive no push token.
You can revoke any permission at any time in your device settings.
AI features
Engrain offers optional AI features: create cards, Explain, tutor chat, answer check and improve card. They only run when you explicitly use them.
What data is processed
For each request the app sends the content you provide for it, for example a text or topic, a photo, a PDF, a web address, the text of the current card and the deck name, your typed answer or your chat messages, plus options such as language or number of cards. It also sends an access token for your installation (see “What our server stores”).
How it works
The content is sent encrypted (TLS) to our server at engrain.codext.de and forwarded to OpenAI solely to produce the answer. The content may be checked automatically for abuse (moderation). The answer goes back to your app. We do not store the content of your requests or the answers; they are processed in memory only and not logged.
If you provide a web address as a source, our server fetches that page to read its text. The website operator sees our server’s IP address, not yours.
OpenAI as processor
The recipient is OpenAI (OpenAI Ireland Ltd, Dublin, Ireland, and OpenAI OpCo, LLC, San Francisco, USA). OpenAI processes the data on our behalf under a data processing agreement pursuant to Art. 28 GDPR. OpenAI does not use API data to train its models and may retain it for up to 30 days for abuse monitoring, after which it is deleted.
Data may be transferred to the USA. The transfer is based on the European Commission’s adequacy decision for the EU-US Data Privacy Framework (Art. 45 GDPR) or the European Commission’s standard contractual clauses (Art. 46(2)(c) GDPR).
Please don’t send sensitive data such as health information, or other people’s personal data, in AI requests unless your cards need it. Check photos and PDFs for personal details before sending.
Legal basis
Art. 6(1)(b) GDPR: the processing is necessary to provide the AI feature you request. Providing the content is voluntary; without it, that AI feature cannot be used. All other features of the app are unaffected.
Personal scheduling (FSRS optimization)
When you start optimizing your scheduling, the app sends your review data to our server: anonymous card IDs (numbers, no card content), timestamps, ratings, answer durations and review types, plus your time zone and day start. Our server calculates your personal FSRS parameters and sends them back.
This data is processed in memory only, not stored and not shared with OpenAI or any other third party. The legal basis is Art. 6(1)(b) GDPR.
Purchase check
The AI features are part of the purchase price. To make sure only buyers use them, our server checks the purchase before accepting AI requests:
- iOS and iPadOS: the app sends Apple’s signed app transaction (AppTransaction). It contains, among other things, the app identifier, app version, purchase date and a device-related verification value, but not your name or email address. Our server verifies Apple’s signature.
- Android: the app sends a Play Integrity token. Our server sends it to Google (Google Ireland Ltd or Google LLC) to verify that the app is licensed through Google Play. Google processes information about the app and device under its own privacy policy.
We store only the result of the check. The purchase itself, including payment and refunds, is handled by Apple or Google as independent controllers under their privacy policies (Apple, Google).
The legal bases are Art. 6(1)(b) GDPR (providing the purchased features) and Art. 6(1)(f) GDPR (our legitimate interest in preventing abuse of our server).
What our server stores
For quotas, abuse prevention and the purchase check, our server stores only the following per installation:
- Installation ID (hashed)
- The app generates a random ID on first launch. We store only a hash of it. It is not linked to your name, email address or Apple or Google account.
- Platform, app version, language
- For example “iOS, 1.0.0, de-DE”, so answers come in the right language and we can trace errors to app versions.
- Monthly AI usage
- A counter of how many AI actions the installation used in a given month.
- Purchase check result
- Whether and how the purchase was confirmed.
- Timestamps
- First and last use, and the day of the last FSRS optimization.
- IP address (hashed)
- Only to limit requests per minute (rate limiting). Deleted after 24 hours at the latest.
- Server logs
- Time, requested path, status code and duration of a request, without the content of your requests.
The legal bases are Art. 6(1)(b) GDPR (providing AI features and quotas) and Art. 6(1)(f) GDPR (security, abuse prevention and debugging).
This website
This website sets no cookies, uses no analytics or tracking tools and loads no third-party content. Fonts and images are served from our own server.
When you visit, our server necessarily processes your IP address and information about the requested page and your browser in order to deliver the page. Server logs contain time, path, status code and duration of the request. The legal basis is Art. 6(1)(f) GDPR; our legitimate interest is delivering the website securely and reliably.
Hosting
Our server and this website are hosted by Hetzner Online GmbH, Industriestr. 25, 91710 Gunzenhausen, Germany. The servers are located in Germany. Hetzner processes data on our behalf under a data processing agreement pursuant to Art. 28 GDPR.
Beyond this, we do not share personal data with third parties and we never sell data.
Contacting us by email
When you write to us, we process your email address, your name (if provided) and your message to handle your request. The legal basis is Art. 6(1)(b) GDPR where it concerns the app, otherwise Art. 6(1)(f) GDPR. We delete messages once they are no longer needed, unless statutory retention obligations apply.
Retention
- Content of AI requests: not stored by us; kept by OpenAI for up to 30 days for abuse monitoring.
- FSRS optimization data: not stored.
- IP hash for rate limiting: up to 24 hours.
- Server logs: contain no IP addresses and no request contents; they are rotated automatically (at most 30 MB) and older entries are overwritten.
- Installation data: as long as the installation uses our services; deleted after 12 months of inactivity.
- Emails: until your request is resolved, unless statutory retention obligations apply.
Your rights
Under the GDPR you have the right to:
- access your data (Art. 15 GDPR)
- rectification (Art. 16 GDPR)
- erasure (Art. 17 GDPR)
- restriction of processing (Art. 18 GDPR)
- data portability (Art. 20 GDPR)
- object to processing based on Art. 6(1)(f) GDPR on grounds relating to your particular situation (Art. 21 GDPR)
Just write to kontakt@codext.de. Because we have no accounts and store the installation ID only as a hash, we usually cannot link stored data to a person (Art. 11 GDPR). If you give us additional information that allows identification, we are glad to help. You can export or delete the data on your device yourself at any time.
You also have the right to lodge a complaint with a data protection supervisory authority (Art. 77 GDPR). The authority responsible for us is:
Der Landesbeauftragte für den Datenschutz und die Informationsfreiheit Baden-WürttembergLautenschlagerstraße 20
70173 Stuttgart
www.baden-wuerttemberg.datenschutz.de
Security and automated decisions
All connections between the app, the website and our server are encrypted with TLS. We store the installation ID and IP address only as hashes and collect only the data each feature needs.
There is no automated decision-making within the meaning of Art. 22 GDPR. The ratings suggested by the answer check are only suggestions; you decide.
Changes
We update this policy when the app, our services or legal requirements change. The version published on this page applies.