Privacy Policy
Deka German — the app “Deka: German Words & Phrases” and the website dekagerman.com
Last updated: September 28, 2026
Effective date: September 28, 2026
Data controller: KUCHERENKO DENIS VALERII, Individual Entrepreneur (PE) registered in the Republic of Armenia on 22 June 2026, state registration No. 286.1590908, TIN 20324621, registered address: N. Zaryan St. 22A, Arabkir, Yerevan 0051, Republic of Armenia (“we”, “our”, “the developer”). Contact: [email protected]
1. Introduction
Deka German (“the App”) is a vocabulary learning application that uses spaced repetition to help you study German. The App is built local-first: your cards and study progress stay on your device. dekagerman.com (“the Website”) publishes German word lists, grammar and pronunciation lessons with audio.
This Privacy Policy explains what data the App and the Website process, why, and what choices you have. Section 11 covers the Website; all other sections cover the App.
2. Data the App Processes
2.1 Data you create
The following content is created and stored locally on your device:
- Flashcards — words and phrases, meanings, pronunciation, example sentences, collocations, usage notes, and saved practice prompts
- Decks and tags — how you organise your cards
- Study progress — spaced repetition data: review intervals, ease factors, repetition counts, due dates, lapse counts
- Settings — proficiency level, practice preferences, deck-specific review parameters, theme
This data is stored in a local database on your device. We have no access to it, and it is never uploaded to our servers automatically.
2.2 Data sent to our server
Some features need our server (the “AI proxy”). When you use them, the following is sent over HTTPS:
| Feature | Data sent |
|---|---|
| Card drafting | The word or phrase you want to learn, your proficiency level and language preferences |
| Text extraction from images | The image you select, optional language hints |
| Practice prompt generation | Card front, short meaning, examples, collocations, nuances, your proficiency level and language preferences |
| Answer checking | Your written answer, the practice prompt, card content, your proficiency level and language preferences |
| Card audio | The exact German card front or example shown in the App |
| Every request to our server | A random installation identifier generated on your device (see below), the App version, and a device attestation token (Apple App Attest on iOS, Google Play Integrity on Android) |
Our server forwards AI requests to OpenAI’s API for processing. The OpenAI API key is stored on our server only — it is never present in the App.
For card audio, our server sends the German text to Google Cloud Text-to-Speech to create an AI-synthesized voice recording. The audio is stored in Cloudflare R2 and served through Cloudflare’s CDN. Audio files are named by a cryptographic hash of the spoken text and audio settings; the file name contains neither the text nor a user identifier. Most words in the built-in library already have prepared audio, so for them no request is made.
Installation identifier. So that free usage limits and subscription status can be applied to your copy of the App, the App generates a random identifier the first time it starts. It is not derived from your name, email, phone number, device serial number or advertising identifier, and it is not shared with OpenAI. It is reset if you delete and reinstall the App.
Device attestation. To block automated abuse, the App proves to our server that requests come from a genuine copy of the App on a real device: through Apple’s App Attest on iOS and Google Play Integrity on Android. The attestation contains no card content, and we do not use it to identify you outside the App.
2.3 Data the App does NOT collect
- Name, email address or phone number (the App has no accounts)
- Location, contacts or browsing history
- Background camera or microphone recording
- Your photo library, except images you explicitly select for text extraction
- The iOS advertising identifier (IDFA), unless you allow tracking through Apple’s App Tracking Transparency prompt
- Cookies or tracking pixels inside the App
2.4 Analytics and crash diagnostics
To keep the App stable and understand feature usage at a high level, we use Firebase Analytics (aggregated product usage events) and Firebase Crashlytics (crash and error diagnostics).
What is sent: event names and coarse technical attributes (for example, which feature was used, count buckets); crash stack traces, App version, OS version, device model and technical metadata.
What is not sent: the text of your cards, and account identifiers (there are none).
2.5 Install attribution
When attribution is enabled for a release, the App uses Tenjin to understand which advertising campaign led to an installation and to measure coarse milestones such as onboarding completion, first card, review completion, trial start and purchase.
- On iOS, events stay in memory until you answer the App Tracking Transparency prompt. If you allow tracking, Tenjin may process the IDFA. If you decline, Tenjin is initialised without the IDFA, and Apple’s privacy-preserving SKAdNetwork continues through the system.
- On Android, Tenjin may process the Android advertising identifier when it is available under your device settings.
Attribution data is used for campaign measurement only, not for advertising personalisation. We do not sell it.
2.6 Subscriptions
Deka Premium is an auto-renewable subscription sold through Apple In-App Purchase on iOS and Google Play Billing on Android. Apple or Google is the merchant. We never receive your payment card details, billing address or store account credentials.
To know whether your copy of the App has an active subscription, we use Adapty. It processes:
| Data | Purpose |
|---|---|
| Your installation identifier (2.2) | Linking a purchase to the copy of the App that made it |
| Store transaction or purchase identifiers | Verifying that a purchase or renewal is genuine |
| Subscription status, product, purchase and expiry dates, trial and cancellation state | Unlocking or locking paid features |
| Store country, App version, platform and OS version | Showing correct prices and products |
Adapty notifies our server when a subscription starts, renews, expires or is refunded. Our server stores the installation identifier with the resulting entitlement and its expiry date. This record contains no name, email, payment details or card content.
3. How We Use Data
| Data | Purpose | Where it is kept |
|---|---|---|
| Cards, decks, tags, study progress, settings | Core learning features | Your device only |
| Text and images sent via AI features | Generating card content, practice prompts, answer feedback, text extraction | Processed by our server and OpenAI; results are saved on your device |
| Card text for audio | Creating pronunciation audio | Google Cloud Text-to-Speech; audio in Cloudflare R2 |
| Usage events, crash diagnostics | Product quality and reliability | Firebase (Google) |
| Attribution data | Measuring install sources | Tenjin (when enabled) |
| Subscription state | Unlocking Deka Premium, enforcing free limits | Adapty; our server database |
| Installation identifier, free-usage counter | Applying free limits and entitlements | Your device; our server database |
We do not sell data and do not use it for advertising personalisation.
4. Service Providers
| Provider | What it does for us | Privacy policy |
|---|---|---|
| OpenAI | AI card drafting, practice, text extraction | openai.com/privacy |
| Google Cloud | Text-to-Speech; Play Integrity and Play Billing on Android | policies.google.com/privacy |
| Firebase (Google) | Analytics and crash diagnostics | firebase.google.com/support/privacy |
| Apple | App Store purchases, App Attest | apple.com/legal/privacy |
| Adapty | Subscription status | adapty.io/privacy |
| Tenjin | Install attribution (when enabled) | tenjin.com/privacy |
| Vercel | Hosting of our server | vercel.com/legal/privacy-policy |
| Neon | Database of our server (installation identifiers, free-usage counters, entitlements) | neon.com/privacy-policy |
| Cloudflare | Audio storage and delivery; Website hosting | cloudflare.com/privacypolicy |
| Google Analytics | Website statistics (section 11) | policies.google.com/privacy |
The App contains no third-party advertising, no social media integrations and no data brokers.
5. Storage and Security
- Your content is stored in the App’s private storage on your device, protected by the operating system.
- All network communication in release builds uses HTTPS.
- Backup export. You can export your cards as a JSON file. The export is started by you, contains your card content and learning metadata, and is not encrypted — keep it somewhere safe.
- Android system backup. Android may include App data in your device backup (for example, Google Drive backup). You control this in your device’s backup settings.
6. Your Rights and Choices
- View, edit, delete, export and import your cards, decks and tags at any time in the App.
- Delete everything on your device by uninstalling the App. We hold no copy of it.
- Server records. Our server keeps only the free-usage counter and the subscription entitlement linked to your installation identifier. Uninstalling does not delete them; reinstalling creates a new identifier. To have these records deleted, write to [email protected]. Deleting a record does not cancel an active subscription — cancel it in your Apple or Google Play subscription settings.
- AI features are optional. If you do not use them, no card content leaves your device.
- Tracking. On iOS you can decline tracking or change it later in Settings. On Android, the advertising identifier follows your device and Google settings.
If you are in the European Economic Area, the United Kingdom or another jurisdiction with data protection laws, you may request information about, deletion of, or object to the processing of your data. Most of these rights are exercised directly in the App; for server-side records and the Website, write to [email protected].
7. Children
The App and the Website are not directed at children under 13. We do not knowingly collect personal information from children under 13. If you believe a child has provided data, contact us and we will delete it.
8. International Transfers
When you use AI features, audio, subscriptions or the Website, data may be processed outside your country, including in the United States and the European Union, by the providers listed in section 4.
9. Device Permissions
| Permission | Purpose |
|---|---|
| Internet (Android) | AI features, audio, subscriptions |
| Advertising ID (Android) | Install attribution, when enabled and available under your settings |
| Camera (iOS) | Only when you choose the camera for text extraction |
| Photo library (iOS) | Only when you choose a photo for text extraction |
| App Tracking Transparency (iOS) | Asked after an in-app explanation; IDFA is used only if you allow it |
The App does not request contacts, location or background media access.
10. Changes to This Policy
We may update this Privacy Policy. The “Last updated” date shows the current version. If we make material changes to how the App treats data, we will notify you in the App.
11. The Website (dekagerman.com)
The Website has no accounts, no sign-up forms and no comments.
- Hosting. The Website is served by Cloudflare. Like any web server, Cloudflare processes your IP address and request details to deliver pages and protect the Website from abuse.
- Audio. Pronunciation audio is loaded from audio.dekagerman.com (Cloudflare R2). No identifier is attached to these requests.
- Statistics. We use Google Analytics 4 to understand which pages are useful and how visitors reach
them, including clicks to the app stores. Google Analytics sets first-party cookies (for example
_ga) and processes a pseudonymous identifier, pages viewed, referrer, approximate location and device information. We do not use this data for advertising and we do not combine it with App data. You can block these cookies in your browser or install the Google Analytics opt-out add-on. - Email. If you write to [email protected], we use your message and address only to reply.
12. Contact
Questions about this Privacy Policy: [email protected]
This Privacy Policy applies to Deka German version 1.0.0 and later and to dekagerman.com.