lingi Privacy Policy

Effective from October 27, 2026. This policy covers what data the lingi iPhone app and lingi.app process, why, who processes it for us, how long we keep it and what your rights are.

This is an English translation of the Polish Polityka prywatności. If the two versions differ, the Polish version prevails.

1. Who is responsible for your data

  1. The controller of your data is Krzysztof Kraszewski (NIP 9552439000), who provides the lingi app, "we" or "us".
  2. For anything about your personal data, email contact@lingi.app. We haven't appointed a data protection officer.
  3. App, Account, Subscription, Tutor and Tutor hour mean the same as in the terms.

2. The short version

3. Using the App without an Account

  1. You can use the App without an Account. Your progress, settings, downloaded lessons and voice clips then stay on your phone only.
  2. The first time it downloads lessons, the App creates a random install ID and a secret key. The key stays in the iOS keychain; our server only gets its hash. The server also records the date and IP address of the registration, to limit how many new installs one address can register per day, and the list of lessons the install has unlocked.
  3. Lessons and audio come from content.lingi.app with a short-lived token. We log issued tokens for 2 hours to limit abuse.
  4. The App checks for updates on Expo's servers, which see your IP address, the App version and your phone's operating system.
  5. Legal basis: performing the agreement to use the App (Article 6(1)(b) GDPR). Limits and abuse protection: our legitimate interest in keeping the Service secure (Article 6(1)(f) GDPR).

4. Account and sign-in

  1. Signing in with a code: we store your email address and send the code to it from no-reply@lingi.app. The code works for 10 minutes, and the server keeps only its hash. We keep the times codes were sent to an address for one hour, to limit how many emails go out.
  2. Sign in with Apple: Apple gives us a user identifier, an email address (possibly an Apple relay address that hides your real one) and your name, if you choose to share it the first time you sign in. We also store an encrypted Apple token so that we can revoke lingi's access to your Apple ID when you delete your Account.
  3. Sign-in session: the server stores your session with the IP address and app description (user agent) you signed in from. The session token stays in the iOS keychain on your phone.
  4. The Account also holds your study settings (for example the explanation language, daily goal, reminder time and starting level) and the date you created it.
  5. Legal basis: performing the Account agreement (Article 6(1)(b) GDPR). Code limits and session records: our legitimate interest in protecting Accounts from takeover (Article 6(1)(f) GDPR).

5. Progress and sync

  1. When you're signed in, the App sends your study history to the server: which cards you reviewed and when, your ratings, response times, the kinds of mistakes in typed answers (not the text itself), each card's review schedule, saved sentences, words you've heard and practice time.
  2. That's what lets your progress work on several devices and come back after a reinstall. Legal basis: performing the agreement (Article 6(1)(b) GDPR).

6. Pronunciation scoring

  1. On cards where you say the answer out loud, you can record it and the App scores your pronunciation. It records only after you tap the microphone, for at most 6 seconds. It needs microphone permission in iOS settings.
  2. Before your first pronunciation recording or Tutor call, the App asks whether you agree to send your voice to the outside services described in sections 6 and 7. Without that consent, voice features stay off. You can withdraw it in the App: Profile, Settings, "Funkcje głosowe" (voice features).
  3. The App sends the recording, with the expected sentence, straight from your phone to Microsoft Azure AI Speech in the Sweden Central region (European Union), which returns the score. Our server only issues a short-lived access token and counts how many tokens an Account or install got that day. It never sees the recording or the score.
  4. Only the latest recording stays on your phone, so you can play it back. The App deletes it when you record the next one. Analytics (section 9) get only a score range, with no audio and no text.
  5. Legal basis: performing the agreement (Article 6(1)(b) GDPR). We don't use your voice to identify you.

7. Tutor conversations

  1. Tutor conversations need an Account and the Kurs + Tutor plan. The microphone is on only during a conversation.
  2. Your voice goes from your phone in real time to LiveKit Cloud, where our Tutor program runs. ElevenLabs turns your speech into text. An OpenAI language model writes the reply, and ElevenLabs turns it into speech. Requests to OpenAI pass through Cloudflare AI Gateway. The same route takes your turns to OpenAI for grading and the whole conversation for the recap.
  3. The Tutor also gets what it needs for the conversation: your level, explanation language, words from your current lesson and words due for review, the words you know and its memory of earlier conversations.
  4. On our server we store the conversation text (your turns and the Tutor's replies), the grades and corrections of your turns, the recap, start and end times, length and mode, and technical data such as latency and service usage.
  5. We also store the Tutor's memory: topics of recent conversations, interests you mentioned, recurring mistakes with an example, a short summary of the last conversation, and your name if you said it. It lets the next conversation pick up where the last one left off.
  6. We don't record conversation audio or keep it on our server. LiveKit deletes the conversation room when it ends, and LiveKit session recording is off. On our current plan, ElevenLabs may keep recordings and transcripts in its logs for the period its own terms set. OpenAI doesn't use API data to train models and may keep it for a limited time to detect abuse. Cloudflare AI Gateway may keep a log of requests to the model, which we use to track down errors and costs.
  7. The Tutor is a program, not a person. Don't tell it things you don't want to share, such as health details, your beliefs or other people's data. The conversations don't need them.
  8. Legal basis: performing the agreement (Article 6(1)(b) GDPR). The App's data export doesn't include conversation text. Email us for a copy (section 17).

8. Purchases and subscriptions

  1. Apple handles payment. We don't see your card details, address or Apple ID. Apple processes purchase data as a separate controller, under its own privacy policy.
  2. From Apple (through the App, App Store Server Notifications and the App Store Server API) we get transaction data: transaction identifiers, the product, purchase and expiry dates, and whether there's a free trial, auto-renewal, a scheduled plan change, a refund, and which environment (test or production) it's in.
  3. At purchase the App attaches a random Account identifier, or the install ID if you have no Account. That's how we link the Subscription to your Account or phone. One Subscription covers a limited number of installs, so we record which installs use it.
  4. Your Account holds your balance of bought Tutor minutes and its history: purchases, refunds and use.
  5. Legal basis: performing the agreement (Article 6(1)(b) GDPR), and for complaints and refunds also our obligations under consumer law (Article 6(1)(c) GDPR).

9. Statistics, screen recordings and error reports

  1. We use PostHog, with servers in the European Union, for usage statistics, screen recordings and error reports. They help us find bugs and see which parts of the App work and which need fixing.
  2. Statistics are events in the App, for example a finished welcome step, a session with its card count, a card rating (not the answer itself), a lesson download or opening the plans screen. They come with the App version, phone model, system version, language and the IP address they're sent from. When you're signed in we link events to your Account identifier, your Account email and name (if you gave one), and to your level, explanation language, daily goal and Account creation date. When Apple tells us about a change to your Subscription or a Tutor hour purchase (for example a trial start, a renewal or a refund), our server sends that event to PostHog if statistics are on. Events linked to an Account carry its identifier and email.
  3. Screen recordings are screenshots of the App while you use it. Text fields and the places that show your email, sign-in code, typed answers, Tutor captions and the conversation recap are masked. Recordings include no audio and no network traffic.
  4. Error reports contain the error or crash description, where in the code it happened, the App version and the device model.
  5. We never send PostHog your sign-in codes, typed answers, conversation text or voice recordings.
  6. Statistics are on by default. Turn them off in the App: Profile, Settings, "Share usage statistics". With it off, the App sends no events, screen recordings or error reports, and our server sends no Subscription events.
  7. Legal basis: our legitimate interest in improving the App and fixing bugs (Article 6(1)(f) GDPR). Turning the switch off is an objection, and it takes effect straight away.

10. Reports and contacting us

  1. You can report a problem with a card in the App. The report holds the category, your comment if you add one, the card and what it showed, the App and system versions, and your Account or install identifier. We use it only to fix the course. Legal basis: our legitimate interest in the quality of the course (Article 6(1)(f) GDPR).
  2. When you email contact@lingi.app, we process your address and message to reply. Cloudflare Email Routing forwards messages to our mailbox. For complaints, withdrawals and data requests the legal basis is a legal obligation (Article 6(1)(c) GDPR); for everything else, our legitimate interest in answering questions (Article 6(1)(f) GDPR).
  3. If you answer the in-App question about why you ended your Subscription, we store the reason you picked, your optional comment, the plan and the date with your Account identifier or a random phone identifier, use them only to improve lingi (Article 6(1)(f) GDPR) and delete them with your Account.

11. Reminders

Your phone schedules the study reminder and the end-of-trial reminder itself. We don't collect push tokens or send notifications from a server. You can change notification permission in iOS settings.

12. lingi.app and the waitlist

  1. Cloudflare runs the site. It processes your IP address and browser details to deliver the site and protect it from attacks, and keeps short request logs.
  2. Cookies: the site uses no analytics or advertising cookies. If you change the language with the switcher, we set a lang cookie with your choice for a year, so the home page opens in that language. After you join the waitlist, your browser remembers it in tab storage (sessionStorage) until you close the tab. Both only serve features you asked for.
  3. When you join the waitlist we keep your email address (lowercased and trimmed), the language of the page you joined from, the page the form was sent from, the date and time you joined, and the version of the consent text under the form (currently 2026-10-17). We don't store your name, IP address or browser details. Each address is on the list only once.
  4. We use it to send you one email when lingi launches. There's no newsletter, and we don't pass addresses to anyone for marketing. The legal basis is your consent (Article 6(1)(a) GDPR), which you can withdraw at any time by emailing us.
  5. The list lives in a Cloudflare D1 database in the European Union. Once the launch email is sent, we delete the list. If you ask us to remove your address before that, we delete it straight away.
  6. The form has a hidden field that catches bots and a limit on attempts per IP address. Cloudflare keeps that counter for about a minute. It never reaches our database.

13. Who processes data for us

These companies process data on our behalf, under data processing agreements and only for their service:

Apple processes data about App downloads, purchases and Sign in with Apple as a separate controller. We may also share data with public authorities when the law requires it.

14. Transfers outside the EEA

Some of the companies in section 13 are based in the USA or use subprocessors outside the European Economic Area, so data may leave the EEA, even when we store it in the European Union. We transfer it under the European Commission's adequacy decision (the EU-US Data Privacy Framework) when the company is certified, and otherwise under the standard contractual clauses adopted by the European Commission (Article 46(2)(c) GDPR). Email us for a copy of these safeguards.

15. How long we keep data

16. Deleting your Account

  1. Delete your Account in the App: Profile, Settings, Delete account. You don't need to email us.
  2. We delete the Account, your sign-in sessions and the Apple link straight away, and revoke lingi's access to your Apple ID. Within minutes we delete the rest of the Account's data from the server: progress and study history, Tutor conversations, recaps and memory, bought minutes and their history, Subscription data linked to the Account, reports sent from the Account, export files and sign-in logs.
  3. Deleting your Account doesn't cancel your Subscription, because Apple manages it. Cancel it in iOS settings: tap your name, then Subscriptions. Unused bought minutes are lost.
  4. Progress on your phone stays until you delete the App. The install registration stays, without the link to your Account, so downloaded lessons keep working.
  5. When you delete your Account, we ask PostHog to delete the profile linked to it, along with your email, name, events and screen recordings. We don't delete other statistics automatically, for example those collected without an Account. We'll delete them if you ask. Copies at ElevenLabs, OpenAI and Cloudflare expire on the schedules in section 7.
  6. Without an Account, deleting the App removes its data from your phone. To have the install registration or your reports deleted, email us.

17. Your rights

  1. You have the right to access your data and get a copy, and to have it corrected, deleted, restricted or ported (Articles 15 to 18 and 20 GDPR). You can object at any time to processing based on our legitimate interest (Article 21 GDPR) and withdraw consent. Withdrawing consent doesn't affect processing that happened before.
  2. You can use some of these rights in the App. Profile, Settings, Export data gives you a JSON file with your Account data, settings and progress (without an Account: the data on your phone). The same screen lets you delete your Account and turn off statistics.
  3. For anything else, email contact@lingi.app, ideally from your Account's address. We may ask you to confirm the Account is yours. We reply within one month. For complex requests we may extend that by two months, and we'll tell you if we do.
  4. If you think we process your data unlawfully, you can complain to a data protection authority. In Poland that's the President of the Personal Data Protection Office (UODO), ul. Stawki 2, 00-193 Warszawa, uodo.gov.pl.
  5. Giving us data is voluntary. Without an email address or Sign in with Apple you can't create an Account, but you can study without one.
  6. We make no decisions about you based solely on automated processing that have legal or similarly significant effects (Article 22 GDPR). Pronunciation scores and Tutor corrections only help you learn.

18. Children

Under the terms (section 6), people aged 16 and over can use the App on their own. Younger people can use the App and create an Account only with the consent of a parent or legal guardian. If you're a parent and think your child created an Account without your consent, email us and we'll delete their data.

19. Security

The App and the site talk to our servers over encrypted connections (HTTPS). We store sign-in codes and install keys only as hashes, and the Apple token encrypted. Keys to outside services stay on the server, not in the App. Only we and the companies in section 13 can access the data, each for its own service.

20. Changes to this policy

  1. We may change this policy when the App, our providers or the law change. The effective date is at the top of the page. We'll tell you about significant changes in the App or by email to your Account address.
  2. The Polish version of this policy is binding. The English version is a translation. For common questions, see Support.