Document
Privacy policy
Last updated: 29 October 2026.
Lernify is an iOS app for learning a foreign language — English, Spanish, German, Russian or Turkish. This page explains what the app collects, why, and what you can do about it.
What we collect
- Your email address and account ID. To create your account and sign you in — with an email and password, with Apple or with Google. If you sign in with Google, Google gives us your name, email address (and whether Google has verified it), your Google account ID and the web address of your Google profile picture. We use them only to create your account and sign you in, and the name to fill in your profile name the first time; we don't use or show your Google profile picture. They are stored in Supabase Auth with your account, are never sold, shared or used for advertising, and are deleted when you delete your account — except the one-way hashes of the email address and the Google account ID kept if the account is blocked for breaking our rules (see "Blocks that outlast an account" below). If you sign in with Apple and choose Hide My Email, we only ever see the relay address Apple gives us. We never see your Apple or Google password. If you sign in with Apple, the app also hands our server the one-time code Apple gives it at that moment; our server swaps it with Apple for a Sign in with Apple token and keeps that token with your account only so that, when you delete your account, Lernify's access can be revoked at Apple, as Apple requires. The token is not shown or used for anything else, and is deleted with your account. Accounts are held in Supabase Auth.
- When you try the app without an account. Choosing "Try it without an account" creates an anonymous account ID without asking for any personal details — only to count the one free photo you can take without an account — your first word; more photos need a free account. Meanwhile your words stay on your phone; if you then create an account, they move to it. Unused anonymous accounts are deleted automatically after 30 days.
- The photos you take. You can take the photo with the camera or choose one from your library (only the one you choose is shared with the app). Before it leaves your iPhone, the app shrinks it and saves it again as a plain picture, which leaves out the original's hidden data, such as its location (EXIF). A photo is sent from our server to an AI service only to recognise the objects in it. Before your first photo is sent, the app tells you it goes to this AI service and asks for your permission; if you don't allow it, no photo is sent. If part of a person shows — a hand, an eye — it can be offered as a word, like what they wear or hold; the app never describes or identifies anyone: not who they are, nor their age, gender, ethnicity, looks or mood. If a photo shows someone else, take it only with their consent. If you have an account, the photo of each word you save is also stored privately on our server with your account — a copy of up to 1080 pixels on its longest side — so a new phone, a reinstall or signing in again brings it back. Only you can see these photos; nobody else ever can, your friends included. A word's photo is kept until you delete it in the Passport (keeping its words, or together with them) or delete the word — it is then removed from your phone and from our server — and all of them are deleted with your account. While you try the app without an account, your photos stay only on your phone. An unfinished account photo's JPEG stays in protected, non-backed-up storage on this iPhone for up to seven days; it and its pending result are deleted when the flow ends, you sign out, change or delete the account, or a terminal response arrives.
- Your words, sentences, XP, streak, badges and practice history. Kept on your phone, and a copy is kept on our server with your account, so a new phone — or a reinstall — gets them back. The practice history is when you practised, for how long and the XP it earned, plus your level in each language you've learned. Each word also keeps its review stage and the date of its next review, so your review schedule comes back with it. The photos of your words are kept with it too (see above). If you repair a broken streak, we keep which day was repaired, when, and your streak before and after; if you freeze a day in advance, which day, when and the streak it kept — so this month's repairs and freezes can be counted; if you earn a broken streak of at least 7 days back by practising, which streak, the days that counted and when it came back, for the same reason; this is deleted with your account. Each XP you earn is also written to an XP record on our server, with your account: its kind (for example a photo word, a review, the day's goal, a photo quest, a game or a duel), the day, the language and the amount; for a word you saved or reviewed, that word with its language; and the limits it was counted against. The weekly leagues and your badges read it, the daily limits are applied with it and misuse is found with it. XP records stay while your account exists, even if you delete the word, and are deleted with the account.
- Apple Watch. If you use Lernify on an Apple Watch, your iPhone sends it the words due for review (each with its translation and an example sentence) and your streak, and the watch sends back which ones you knew. This goes between your iPhone and your paired watch through Apple's watch connection (WatchConnectivity), never through our server. On the iPhone, the XP and review dates a watch session earns are then saved like any other practice (see above). The watch keeps the words and the streak on the watch itself, for its flashcards and its complication; our server never receives them from the watch.
- Word sets you make or add. A word set you make in the app — its name, its language, its words and their example sentences — is stored on our server with your account, so anyone you give its code or link can open it. They see the set's name, its words and your username. Sets can't be searched or browsed; the code is the only way in. You can delete a set in Passport → My sets, and its link stops working. When you add someone's set to your Passport, its words (with their example sentences) and the language you speak are sent from our server to an AI service, which writes each word's translation in your language; the translated words are then kept like any other word you've learned. When you save a set you made, its name, words and example sentences are sent from our server to the same AI service, which checks them for objectionable content before the set is published. Set usage, imports and code lookups are recorded with your account, their source and time, and the set ID or a one-way code or network hash; these records are kept for 14 days. A counter of failed code lookups (with your account ID, your phone's random ID and a salted one-way hash of your network) is kept for two days. An approved import response cache is also kept for 14 days. The account's mapping from set positions to word IDs is deleted when the word, set or account is deleted. An unfinished create draft stays only on this iPhone until you save or discard it, or sign out. Import retry IDs are derived in memory and are not stored locally.
- Your name, level and languages. Kept on your account, so signing in again doesn't ask for them. If you sign in with Apple or Google, the name they share with us fills in the name field the first time; you can change it in the app. Your languages — the app's language, which is the language your iPhone uses for Lernify, and the one you're learning — are also sent with each photo and each conversation with Mosy, because they decide which language the word or Mosy's answer is written in and which one it's translated into. When the app's language changes, the words you've saved (with their example sentences) and the new language are sent from our server to the same AI service, which writes their translations in the new language.
- Your Friends profile and username. Every account gets a Friends profile when it's created (people trying the app without an account don't): a username such as "cavid.4821", which you can change any time in Profile, and the name on your profile. By default anyone who knows your username can find your profile and send you a friend request, while your points and badges are shown only to your friends (people you follow each other with). On the Friends screen you can change this to "Only me" or "Everyone". This setting doesn't cover your profile photo or the weekly leagues (see below). When you send someone a friend request, they see your name and username so they can decide, whatever your setting. Your friend requests, friends and blocks are kept with your account. When you change your username, or delete your account, the old username is kept for 90 days so nobody else can take it and be mistaken for you (you can take it back yourself, unless we reset it for breaking our rules); for a deleted account only the username is kept, not linked to anyone.
- Your profile photo on Friends. The photo you set on Profile is stored on our server as a copy of up to 1080 × 1080 pixels, so it can appear on the leaderboard, in friend lists and on your card. Once it has passed our safety check (below), every signed-in Lernify member can see it, whatever your visibility setting — never anyone you have blocked or who has blocked you, and never people trying the app without an account. Changing or removing the photo on Profile changes or removes it on the server too.
- Weekly leagues. While leagues are on, your first XP of the week in a language you have a tested level in puts you in that week's group of about 30 learners with the same learned language and level. If you learn several languages, you are in one league per language. Everyone in that group — not only your friends — sees your place and your XP for that week, and, unless your Friends setting is "Only me", the name and photo on your profile; with "Only me" you appear without them. Last week's top three in each group are shown to it with their language and level. People you have blocked, or who have blocked you, never see your name or photo there. Your league places and weekly XP are kept with your account and deleted with it.
- Duels. When you challenge a friend to a duel, or they challenge you, we keep the duel with both accounts: its language and level, the questions, each player's answers, times and score, whose turn it is, and the deadline — 24 hours from when it was sent, for both turns. Only the two players can see a duel; your opponent sees the result and your score, not your individual answers. A turn not played by the deadline counts as zero. A duel is kept until either player deletes their account. To limit repeat invitations and investigate abuse, we keep a separate record of who sent each invitation, its time and an opaque challenge/request id until the nightly purge after day 16 (at most 17 days). If the invited account is deleted, its id is removed; the record is deleted with the sender’s account or by the purge.
- Games with friends, and Word Rain. Tug of War is a live match between two friends. When you invite a friend, or a friend invites you, we keep the match with both accounts: its language and level, its status, each question (a word from our own list of everyday things, with four choices), who answered it, whether the answer was right and how many milliseconds it took, the score, the winner, and the times it started and ended. While the app is open it tells our server, about once a minute (every few seconds during a match), that you are there; we keep one "last seen" time per account, so that your friends can see in Tug of War whether you are online, and so that a match can tell whether you left. While you play a live match of Tug of War, Word Tennis or Bridge Together, your friends' lists in these games show you as busy, so that nobody invites you then; nothing else about the match is shown to them. Word Tennis is played live in the same way, and we keep the same for it: the match with both accounts, its language and level, each word the ball carried with its three choices, who answered it, whether the answer was right and how many milliseconds it took, the points, the winner and the times. Photo Riddle is played in turns with a friend: you send one of your saved words with its photo, and your friend guesses the word while the photo slowly clears. We keep the photo (a copy of the whole photo, at most 1024 pixels, re-encoded without the camera, place and time details a photo can carry) in private storage that only the two players can open, and with it the word, its translation, the four choices, the guess (a choice, or the word typed, up to 60 characters), whether it was right, the points and the time it took. Word Rain sends our server a summary of each finished round: its score, whether you cleared it, how many words you caught and missed, wrong taps, bonus words, how long it took, the language, and which of your saved words it asked about (by their random IDs); your best score in each language is kept too and shown only to your friends (people you follow each other with). These four games can earn league XP (Bridge Together too, below), which is written to the XP record described above, with the ID of the round or match, for Tug of War, Word Tennis and Photo Riddle also the other player's account ID and how many answers were right, and for Word Rain how many words you caught. Tug of War, Word Tennis and Photo Riddle matches, with their questions, answers and photos, are deleted 30 days after they end (a Tug of War or Word Tennis invitation or match that nobody finished, after two days; the photos by the nightly clean-up soon after); your "last seen" time, 30 days after the app last told us; Word Rain rounds, 30 days after they were played. Your best Word Rain score stays while your account exists. All of it is deleted with your account.
- Bridge Together. When you invite a friend to build a bridge together, or they invite you, we keep the game with both accounts: its language and level, the sentences, which blocks each player placed and when, whether each block was right, the team hearts left, who left and how the game ended, and the XP it earned. Only the two players can see a game. A game is deleted 30 days after it ends (an invitation nobody answers ends after one minute), and at once when one of the two accounts is deleted. While the Games screen is open, your phone tells our server about once a minute, so your friends can see that you are online. The sentences come from a list we wrote, so your saved words are never shown to your friend.
- The level test. Your answers, the level the test measured and the questions you have already seen are kept with your account — the questions so that your next test doesn't repeat them. Only our server uses them; nobody else sees them. They are deleted with your account.
- Photo safety checks. Every photo you take for a word, and every new profile photo, is checked automatically for nudity, sexual content and graphic violence by the same AI service that recognises objects; a second, separate check must agree before a profile photo is shown to anyone or anything counts against your account, and both checks are told to treat any text inside a photo as part of the picture, never as an instruction. A new profile photo is visible only to you until it passes. A photo that fails is discarded and never stored — not on your phone's word list, not on our server, not anywhere. We keep only what the check found (its category, such as "nudity") and when, with your account, to apply our photo safety rules; these records are deleted after 90 days. If you have turned on Apple's Sensitive Content Warning (or Communication Safety for a child), the photo is also checked on your iPhone first, and one it flags never leaves the phone — Apple's check runs on the device and tells us nothing.
- A notification token, if you allow notifications. Your phone's push token (an address Apple gives the app for this phone), the language the app is set to, and whether it's a test or App Store build are kept with your account, so we can tell you when someone sends you a friend request or accepts yours, when a friend challenges you or makes a move in a challenge, and when a challenge is answered, cancelled, expires or ends (with its result), when a friend invites you into the channel room they are in, when a talk time you asked to be reminded of is about to start, when a speaking seat you were waiting for in a channel room is free ("Your seat is ready"), when a friend invites you to a shared streak, when a friend nudges you in one, when a friend invites you to Tug of War, and when a friend sends you a Photo Riddle. We send nothing else this way. Each notification also carries your account's ID, so this phone shows it only while you are logged in here. The token is removed when you log out; if the phone is offline then, it is kept on this iPhone together with your session and removed from your account as soon as the phone is back online within 7 days (after that, it stays with your account until someone logs in on this phone, as below). If your session was ended elsewhere (for example, by changing your password), the token stays with your account until someone logs in on this phone, and meanwhile your notifications appear there without any of their content. When you invite a friend into a room, we keep who invited whom, into which room and when for 7 days — to limit how many invites can be sent and to look into abuse — and then delete it. We keep a log of each notification sent (to whom, from whom, what kind and when) for 30 days, to limit how many can be sent. The friend, challenge, channel-invite and Tug of War invitation notifications are also kept as the list you see under the bell on Home — who, what kind, the challenge or room it is about, when, and whether you have read it, never their text — even if notifications are off: for 90 days, at most the last 100, and deleted with your account. While you are in a channel room, its Live Activity (on the Lock Screen and in the Dynamic Island) gets its own push token from Apple. We keep it with your account only while you are in the room, together with how the Live Activity should look as it closes (the room's name and how many people are in it), and use it only to close the Live Activity when you leave or are removed, or the room ends — even if the app can't do it itself. The token is deleted as soon as it has been used — at most an hour later if the first try fails — and with your account.
- Saved logins on this iPhone. When you log out, the app asks "Save your login info?". If you choose Save, this iPhone keeps your name, email address, how you sign in, a small copy of your profile photo and a sign-in key (a refresh token — never your password), so you can come back with one tap, after Face ID, Touch ID or your passcode if your iPhone has them (iOS does that check on the phone; Lernify never receives any biometric data). They stay on this iPhone only — the key in its Keychain — and are never synced, backed up or restored to another phone. Your session stays open on our server until you use the key, tap "Remove from this iPhone" on the sign-in screen (which also ends that session), change your password or delete your account. Choose "Not now" and nothing is kept — unless the phone is offline at that moment: then only what is needed to remove its notification token from your account is kept, until the phone is back online, for up to 7 days (see above).
- The email you give the waitlist. If you put your address in the form on the site, we keep it for one thing: to tell you when the app is released. It stays in our own database, we don't pass it on and we don't use it for advertising. To come off the list, write to [email protected] and we'll delete the row.
- Reports you send. If you report someone, a word set or a reply of Mosy's, we keep the report — the reason, your note if you wrote one, what was reported (for a reply of Mosy's: that reply and your message before it) and your account ID — so the Lernify team can review it; an email about it goes to our support address. For a report made in a channel or voice room, that email also contains the room's topic and the reported person's last 20 chat messages in it, so the team can see what happened; it is kept in our support mailbox until the report is handled, and at most 180 days. You can report someone in a room for 24 hours after you leave it or are removed from it, and you can report someone even if they have blocked you. The person reported isn't told who sent it. If you delete your account, the reports you sent about someone or a word set stay without your account ID, so the team can still act on them, and are deleted with the report; reports you made inside a voice room are deleted with your account, and in any case after 180 days. Reports of a reply of Mosy's, which hold your own words, are deleted with your account too, and in any case after 180 days. To prevent misuse of profile lookup, follow, avatar and block limits, we keep a safety trail with the actor account ID, the target account ID for follow attempts, the request or source and its timestamp. The profile lookup that checks whether a username is free also keeps a salted one-way hash of your network — your IP address, or for IPv6 its first half — never the address itself (HMAC-SHA-256, with a secret only our server holds). These limit trails are kept for 8 days (successful username changes: 15 days) and do not contain searched handles or profile image bytes. When several people report the host of a voice room, the room is put under review: we keep who was reviewed, the IDs of the accounts whose reports counted, and the team's decision for up to 180 days after the review ends; the review is deleted with the reviewed account. A record of what a moderator did in a room (removing someone or ending the room, with a short note) is kept for one year; if that account is deleted, the record stays without it. Reports made about an account, and the sanctions taken on it, are kept after that account is deleted — without the account itself — until 180 days after they were made, so repeated abuse can still be recognised; then they are deleted too.
- Blocks that outlast an account. If an account is blocked for breaking our rules (suspended, banned, or its camera turned off), we keep one-way, salted hashes (SHA-256) of its sign-in identifiers — the email address and the Apple or Google account ID — and of the random ID of the phones it was used on. This stops the block from being escaped by deleting the account and signing up again, or by making a new account (or using the app without one) on the same phone: a matching account is blocked for the time the block has left. Accounts that were already on that phone before the block are not affected. The hashes can't be turned back into the email or the IDs, and nothing else about you is in them. They are kept for as long as the block lasts plus 180 days (or 180 days after it is lifted) — also if the account was deleted — and then deleted.
- Apple DeviceCheck. With each photo the app sends a one-time token from Apple's DeviceCheck. Our server uses it to ask Apple for two yes/no values that Apple keeps for this iPhone on our behalf: whether the phone has already used its one free photo without an account, and whether a block for breaking our rules was traced to it. They stay with the phone even after it is erased, so the free photo doesn't come back that way. The second value is only a note for our moderators: it never blocks an account by itself — it only means an erased phone doesn't get the free photo without an account again. The token and the two values contain no personal data — nothing about you, your account or your photos. We don't store the token; Apple keeps only the two values and the month they last changed, and we can't read anything else about the phone this way.
- A usage counter. How many photo, conversation and word-set requests you make each day, kept with your account ID to prevent abuse. So the day's limits start again at your own midnight, the app sends your phone's time zone (such as "Asia/Baku") with those requests, and the last one is kept with your account — or, while you try the app without an account, with the phone's random ID. Rows kept with a phone's random ID are deleted after 7 days — except the note that the phone has used its one free photo without an account, which is kept so that reinstalling the app doesn't bring it back, until the phone has not been seen for 12 months — and the time zone kept with it after 30. These requests are also counted per network, with a short, salted hash of your IP address — never the address itself — which is deleted after two days: all of them while you try the app without an account, and, with an account, the requests that aren't camera photos (such as conversations, word sets and the check of a new profile photo). With an account, a fingerprint (hash) of each photo you send and the words it gave are also kept for two days, so a photo re-sent after a lost connection isn't counted twice. For the one free photo without an account we also keep, with the phone's random ID, a fingerprint (hash) of that photo — never the photo itself — and the words it gave, so the same photo sent again after the app closes isn't counted twice and gets the same words. The words it gave are deleted after seven days; the fingerprint stays with the phone's random ID only as the note that this phone used its free photo. After 90 days, the daily counts are merged into totals kept only for your badges (the other counts are deleted); the totals are deleted with your account. For photo-limit checks and queued photo XP, we keep photo ID/day/tier records, limit events and one-way word hashes for up to 14 days; these records contain no image bytes or clear-text result words. When a photo earns XP, one-way hashes of the (at most five) words it gave are also kept in that XP record (see "Your words, sentences, XP, streak, badges and practice history") for as long as your account exists, so the other words from the same photo can earn review XP when you save and review them. If your account, or a network it uses, goes over one of our usage limits, we keep one flag per account, limit and period for 180 days: the account ID, the limit, the counts, and the IDs and times that show how it happened (such as the other account, the phone's random ID, a photo or set ID, or the network hash). It is deleted with your account.
- Your phones, and checks on limits. So that duels and leagues stay fair, and so that a block for breaking our rules can be applied, our server keeps with your account the random ID of the phones you have used (a limited number of the most recent ones, at most about twenty), with the first and the last time each was seen. Two accounts used on one phone earn no XP from duels against each other. These IDs stay while your account exists and are deleted with it. When a phone's notification token moves from one account to another, the two account IDs and the time are kept for 30 days to prevent misuse. A daily total of the AI requests your account made — per kind of request (for example photo recognition, a conversation with Mosy, a safety check or a translation), with the day, the kind of account (a guest or a member) and an estimated cost, never any text or photo — is kept for 400 days and deleted with your account, to see what the service costs and to apply fair limits. If your XP looks scripted (the day's whole XP limit reached on several days in a row), a flag with your account ID, the day and the pattern is kept with your account for a person to look at; nothing is ever done automatically because of it. Our automatic data checks may note, for about 30 days, the account ID and the record that broke a rule (such as two numbers that should agree) so we can repair it. A weekly email to our support address (through Resend) lists the accounts that went over a usage limit and the accounts whose AI requests cost the most, by random ID, limit and numbers; for an account over a limit, a ticket in the Lernify team's issue tracker (Jira, from Atlassian) may name it the same way — never your name, email address, words or messages. A ticket stays in the tracker after an account is deleted, and then points to no one.
- Your conversations with Mosy. When you talk about a saved photo or talk freely in a rehearsal scene, each message you write is sent from our server to an AI service (Claude, from Anthropic, through OpenRouter) together with the words saved from that photo (or the scene's word), the language you learn, your level and up to the last six lines of the conversation, so Mosy can answer and correct you gently. The photo itself is not sent. When you tap a word in a line of the conversation to see what it means, that word, the sentence it stands in and the two languages are sent the same way, with no earlier lines and nothing about your account, and the meaning comes back to your screen only. Before your first message the app tells you this and asks for your permission; if you don't allow it, nothing is sent. A message is checked against the same list of words that are not allowed in chat before it is sent, and Mosy's answer is checked before you see it. We do not keep your messages or Mosy's answers on our server. On your iPhone, the conversation is saved as you write, only so that you can carry on with it, and you can clear it when you leave it. A saved conversation is offered again for 12 hours after your last activity in it (24 hours after your first message at the latest), and is deleted from your iPhone the next time the app opens after that, as it is when you clear it, log out or delete your account. It is kept in the app's storage on your iPhone, which iOS may include in your own iPhone backup, and goes nowhere else, except the last six lines that go with your next message, as described above. Mosy's answers are read aloud with your iPhone's own voice, on the phone; no audio is sent anywhere. The one exception to "we do not keep" is a reply you choose to report: when you tap the flag on a reply of Mosy's and send the report, we receive that reply and your message before it, with your account ID and the reason and note you wrote, and keep them up to 180 days to review the report; they are deleted sooner with your account. For each message we keep a count with your account ID — the kind of conversation, the day, which photo or word it was about, your level, what the AI service charged for it and a one-way fingerprint of the message (mixed with your account ID and the request ID, it cannot be turned back into the message, and only stops one send being repeated for another), never any text — for 35 days, to apply the daily limits and to prevent abuse; it is deleted with your account. A daily total of these requests is kept longer (see "Your phones, and checks on limits").
- Speaking with Mosy for one minute (Premium only). When you speak with Mosy, the app records short clips from your microphone, only while the chat is listening. Each clip goes from our server to OpenAI, which turns it into text; we then discard the clip and do not store it. That text, the chat so far, the word you saved today, the language you learn and your level go to an AI service (Claude, from Anthropic, through OpenRouter) so Mosy can answer, and Mosy's answer goes to OpenAI to make Mosy's voice, which plays on your phone. We keep neither the text of the chat nor Mosy's answers, and the chat is not saved on your iPhone. Before your first chat the app tells you this and asks for your permission; if you don't allow it, nothing is sent. To apply the daily limit and to prevent abuse we keep only counts with your account ID: the day, the number of turns, the time, whether the chat finished, what the AI services charged for it, and what happened to the step (shown, skipped, started, finished, reported, a voice problem, or the Premium invitation shown or tapped). For how long, see "How long we keep it". The flag on the end card only records that you reported the chat; no text is sent.
- Your weekly story and memory tips. Once a week, if you ask for it, Lernify sends the words you saved in the last seven days, their meanings, the language you learn and your level from our server to an AI service (Claude, from Anthropic, through OpenRouter) so Mosy can write a short story from them. When you keep missing a word in a review and ask Mosy for a tip, that word, its meaning, your level and the example sentence it already has go to an AI service (Gemini, from Google, through OpenRouter). The first time, the app tells you this and asks for your permission; if you don't allow it, nothing is sent. The story and the tip are checked against the same list of words that are not allowed in chat before you see them. We keep your latest twelve stories and one tip for each word on your account so you can read them again; they are deleted with the word or with your account. A count of each story or tip - the kind, the day, your level and what the AI service charged for it, with no text - is kept for 35 days. The detailed stats and the word export are made on your iPhone from data you already have; nothing is sent. How you answered in your reviews is kept on your iPhone only.
- Photo quests, weekly events and shared streaks. Photo quests: each day Lernify gives you three small photo tasks, and each week one (for example, find something red). A task is checked on the names and colours of objects that photo recognition already found in a photo you take; nothing more is sent and no extra AI call is made. We keep your quests, which object names counted for each (with the photo's ID and day) and whether you finished them for 120 days, and for each photo checked the quest, the photo's ID, the result and the XP for 35 days, to apply the daily limits and to prevent abuse. Weekly events: the Lernify team schedules a themed week, and the same recognition result counts the objects you find for it. We keep which object names counted for you, the day and the photo's ID, and when you finished, for 90 days after the event ends. Shared streaks: you and a friend (someone you follow each other with) keep a streak that grows on the days you both finished the day's path; it is worked out from the practice days we already keep, and it earns no XP. We keep who is in it, who invited whom, when it started and ended, and each invitation, answer, leave and nudge with its day: 35 days, an ended streak 90 days, and an invitation nobody answers ends after 14 days. Your friend sees your name and photo as on Friends, and whether you practised today. If you practised and your friend has not, you can send them one nudge a day, a notification with your name on it; it is not sent in their quiet hours. A block, or removing the friend, ends the streak. All of this is deleted with your account.
- Channels and voice rooms. Channels are for learners 16 and over, so the first time you open them the app asks your age range (through Apple, or with its own question). Your age, age range and birth date never leave your phone; only the answer to "may this account use channels?" — yes or not yet — and when it was given are kept with your account, so our server can check it when you join a channel. It is deleted with your account. When you join a channel or a voice room, the other people in it see the name on your profile and your profile photo (never between blocked people), and can send you a friend request from there whatever your Friends setting; the room keeps who is in it, each person's role (such as owner or moderator), their speaking permission and whether their hand is raised. A channel's owner can protect it with a password: only a one-way hash of the password is kept, wrong guesses are counted for a day to stop guessing, and once you enter the right one the channel remembers that you may come in for as long as the room exists. Your phone also tells the room, live and without storing it, whether it is recording its screen, so others see a "REC" mark next to your name; emoji reactions are shown live too and deleted within minutes. A room's record — its topic, who was in it and their roles — is deleted 30 days after the room ends. Chat messages you write there are kept on our server and deleted after 30 days, or 7 days after the room closes; if someone reports you in a room, your last 20 messages there go to our team with the report (see "Reports you send"). Your voice is sent live from your phone to the other people through Cloudflare's real-time servers; it is never recorded or stored, by us or by them. Others in the room could still record it with another device, so don't share personal details. The microphone is used only while you are in a room and have turned it on. To keep voice rooms working and their cost under control, we keep when you joined and left, how long you spoke and technical connection figures (such as delay and lost audio packets) with your account for 90 days; after that only daily totals without any account remain. If you ask to be reminded of a scheduled talk time, we keep that request with your account and your phone's time zone (so you get at most one such reminder a day) until two days after the talk; a record that a reminder was sent (your account, the talk and the day) is kept for 16 days, to look into abuse; others only see how many people are coming, never who.
- Classes. Classes are for learners 16 and over, with the same age answer as channels (see above). A teacher makes a class — a name, the language it learns and an 8-character code — and shares the code; a student who joins with it shows the teacher their name and username. For each class we keep who teaches it, who is in it and when each person joined or left (and, if a teacher removed a student, that fact, so the code cannot let that student back in), the word sets the teacher shared with it (only links to sets; the rules for word sets above apply to the sets), and its weekly class goals — the goal, the seven days and the result. A student's progress stays private until the student switches on “Share my progress with my teacher”, which is off when joining. Then, and only then, the teacher sees that student's XP this week, how many days they were active and their part of the class goal — never their words, photos, answers or conversations. Switching it off, leaving the class, or the teacher deleting it ends what the teacher sees at once. Students never see each other: a student sees the class, its teacher, the shared sets and the class total. Wrong class codes are counted with your account and your phone's random ID, in the same two-day counter as wrong word-set codes. A record that you joined a class, entered a wrong class code or made a class (your account, the kind of event, the class, your phone's random ID and the time) is kept for 14 days, to stop guessing and other abuse. A class is deleted with its teacher's account, and your seat in a class with yours.
- Announcements. Now and then the Lernify team shows a short announcement on Home (news, an event, what's new). Our server picks the ones that fit your app version, the language you learn and the age of your account, and records with your account whether each one was shown, tapped or closed — so it is shown only once, on every phone of yours, and so we can see which announcements help. These records stay while your account exists and are deleted with it.
- Premium offers. While Premium is on sale, a free account that has just used up a free limit (the day's photos, game rounds or messages with Mosy, or the month's streak repair or freeze) may be shown a full-screen Premium offer, at most once every three days. Your phone decides this from what it keeps on the phone itself. Our server records with your account which limit led to the offer and whether it was shown, closed, opened the Premium page or ended in a purchase — so we can see which offers help and never show too many. These records stay while your account exists and are deleted with it.
- What stays on your iPhone. Several features run on your iPhone and send nothing to our server. Widgets and today's Live Activity (on the Lock Screen and in the Dynamic Island) show your streak, today's steps, your XP and some of your recent words with their translations and small copies of their photos; the app writes them to a storage on your iPhone that only Lernify's own widgets can read (an App Group), and they are marked private, so iOS can hide them on a locked screen. Games (Photo Memory and Listen and Choose) use your saved words and photos on the phone, and their scores stay there. Daily reminders are scheduled by the app on your iPhone itself; they use neither our server nor your notification token. Sharing: when you share a word card or your week card, or export your words (a CSV or an Anki file), the app makes the picture or file on your iPhone and hands it to the iOS share sheet; when you choose Save Image it saves the week card to Photos. Where it goes then is your choice and that app's rules apply — Lernify receives nothing. Spoken words are read aloud with your iPhone's own voice.
- Crash and performance reports. iOS gives the app technical reports about its crashes, freezes and performance (Apple's MetricKit): the app's version and build, the iPhone model and iOS version, where in the app's code a problem happened, and figures such as launch time, memory and battery use. They contain no words, photos, messages or voice. The app sends them to our server, where they are stored with a random ID made only for these reports — never with your account or anything worked out from it. Daily limits on how many reports can be sent are counted per install ID (with that ID's hash, as the reports are), and per account and per network with one-way keyed hashes that change every day and are never stored with a report; these counters are deleted after a week. The reports are used only to find and fix bugs, and are deleted after 90 days. For each kind of crash we also keep one summary — how often it happened, the app versions, one example with its iPhone model and iOS version, and the hashes of the random IDs of the installs it hit — until that crash has not been seen for 180 days.
What we don't collect
- No advertising identifiers and no tracking.
- We don't sell or share your data for advertising.
- We don't read your location, contacts or other files on your device.
Services we use
- Supabase — accounts, sign-in and server functions (EU, Ireland region).
- OpenRouter, and through it Google Gemini and Anthropic's Claude — recognising objects in photos, checking word and profile photos for safety, translating the words of a word set you add or your saved words when the app's language changes, checking a word set you make before it is published, (Claude only) answering you in your conversations with Mosy, explaining a word you tap in them, answering you when you speak with Mosy for one minute and writing your weekly story, and (Gemini only) writing your memory tips. These services may process the data outside the EU, in the United States.
- OpenAI (API) — turning your voice into text, and Mosy's answers into Mosy's voice, when you speak with Mosy for one minute. We do not keep the audio or the text. OpenAI does not use API data to train its models and may keep it for up to 30 days to monitor for abuse, then deletes it.
- Resend — sending confirmation codes and the waitlist email, and sending to our own support address the emails about reports (for a room, with its topic and the reported person's recent chat messages) and the team's weekly usage-limit report (account IDs and numbers only).
- Atlassian (Jira) — the Lernify team's issue tracker: tickets for crashes (a kind of crash and how often it happened) and for accounts that went over a usage limit (the account's random ID, the limit and the numbers). No names, email addresses, words or messages. Atlassian may process the data outside the EU, in the United States.
- Apple (Sign in with Apple) and Google (Sign in with Google) — only if you choose to sign in with them. They confirm who you are and give us your name and email address (Google also your account ID and profile picture address). If you use Sign in with Apple, we also keep Apple's token for your account, as described above, so that deleting the account can revoke it. "Lernify's use of information received from Google APIs adheres to the Google API Services User Data Policy, including the Limited Use requirements."
- Apple (DeviceCheck) — keeping the two yes/no values for this iPhone described above; it receives only the one-time token.
- Apple Push Notification service — delivering friend, challenge, channel-invite, talk-time reminder, shared-streak invitation and nudge, Tug of War, Word Tennis and Bridge Together invitation, Photo Riddle and "Your seat is ready" notifications to your phone, if you allow notifications. Only the notification's text, the other person's username, your account's ID and the ID of the challenge, room, channel or match it is about are sent.
- This website — lernify.app is served by Cloudflare Pages. Cloudflare briefly logs each request (the IP address, the page and the time) to keep the site running and secure. The fonts are served from lernify.app itself, so drawing the text contacts no other service; the waitlist form uses Cloudflare Turnstile to tell people from bots. None of this is used for advertising or tracking.
- Cloudflare Realtime — carrying voice live between the people in a channel or voice room. Audio passes through it but is not recorded or stored.
Only what those services need to do the job is sent to them.
How long we keep it
Account data is kept while the account exists. The photos of your words are kept privately as long as the word is on your account, and are deleted with your account; the profile photo you share with Friends is kept until you remove it or delete your account. Your Friends profile, friend requests, word sets and notification tokens are deleted with your account; notification tokens are also removed when you log out (if the phone is offline then, as soon as it is back online within 7 days). Usage-counter rows, league places, duels, streak repairs, earned-back streaks and level-test answers are deleted with the account. Badge progress (counts of chats with Mosy, talk times and days in channels, a first channel message, photo quests, weekly events, shared streaks and duels started, each with the learner's day, and never any text or photo) is kept while the account exists and is deleted with it. Anonymous accounts made for trying the app are deleted after 30 days without use. Voice-room usage and connection figures are deleted after 90 days. Photo safety records (a category and a time, never the photo) are deleted after 90 days. A login saved on this iPhone stays until it is used, you remove it, you change your password or you delete your account. A Live Activity's push token is deleted as soon as it is used, when you leave the room or it ends (at most an hour later if the first try fails). Usage-counter rows kept with a phone's random ID are deleted after 7 days (the note that the phone has used its free photo is kept until the phone has not been seen for 12 months), the time zone kept with it after 30 days, and the network hash after two days. Per-network hashes (of photo, conversation and word-set requests) and per-photo fingerprints for accounts: two days; handle-check (with a network hash), follow-attempt, avatar-upload, avatar-screen and block-attempt limit trails: 8 days; successful handle-change event trails: 15 days; word-set usage, import and code-lookup records (code lookups with a network hash): 14 days; failed code-lookup counters (with a network hash): two days; usage-limit flags (for network limits, with the network hash): 180 days; notification log: 30 days; the bell's list: 90 days (at most 100); room reviews: up to 180 days after they end; moderators' room actions: one year; report emails in our support mailbox: until handled, at most 180 days; daily usage counts: merged into badge totals after 90 days; a guest's free-photo words: seven days; talk-reminder sent records: 16 days; photo-quest sets: 120 days; photo-quest checks: 35 days; weekly-event progress: 90 days after the event ends; shared-streak invitations, answers and nudges: 35 days; an ended shared streak: 90 days, and an invitation nobody answers ends after 14 days; Tug of War and Photo Riddle matches with their questions, answers and photos: 30 days after they end (a Tug of War invitation or match nobody finished: two days), the Tug of War last-seen time: 30 days, Word Rain rounds: 30 days; the one-way hashes of the words a photo gave when it earned XP: kept with that XP record while the account exists. Crash and performance reports are deleted after 90 days; the summary of each kind of crash, with the hashes of the install IDs it hit, 180 days after that crash was last seen. Announcement records, Premium offer records, the random IDs of your phones, XP records and badge evidence are kept while the account exists; unusual-XP flags are kept with the account; the daily totals of AI requests: 400 days; data-check notes: about 30 days; the record of a notification token moving between accounts: 30 days; a room's record (who was in it and their roles): 30 days after the room ends; emoji reactions: about 10 minutes. A conversation saved on your iPhone with Mosy is offered again for 12 hours after its last activity (24 hours after its first message at the latest) and is deleted when the app next opens after that.
Class records are kept while the account exists and are deleted with it: your seat in classes, and the classes you teach with their seats, shared-set links and class goals. Leaving a class ends the seat at once and your progress stops being visible to anyone; the record that a teacher removed you from a class stays until the class or your account is deleted, so the code cannot let you back in. The trail of class joins, wrong class codes and classes made is deleted after 14 days.
Your conversations with Mosy are not stored on our server, except a reply you choose to report (the reply and your message before it are kept up to 180 days to review the report). Of each message only a count is kept — the kind of conversation, the day, your level, what the AI service charged for it and a one-way fingerprint of the message, with no text — for 35 days, or until you delete your account; a daily total of your AI requests is kept for 400 days. On your iPhone, the conversation is saved as you write and offered again for 12 hours after your last activity in it (24 hours after your first message at the latest); it is deleted when the app next opens after that, and when you clear it, log out or delete your account. Your weekly stories and memory tips are kept on your account (the latest twelve stories, one tip a word) until you delete the word or your account.
Speaking with Mosy for one minute: a voice clip is discarded as soon as it has been turned into text, and the text of the chat and Mosy's answers are never stored. The counts of each chat (the day, the number of turns, the time, whether it finished, and what the AI services charged for it) are kept for 35 days, and the counts of what happened to the step (shown, skipped, started, finished, reported, a voice problem, the Premium invitation shown or tapped) for 120 days; all of them are deleted with your account.
Deleting your data
In the app, Profile → Delete account (at the bottom of the Profile screen) removes your account and the data stored for it, the photos of your words included. So that nobody else can delete your account from your unlocked phone, the app first asks you to confirm it's you, unless you have only just signed in: by signing in again with Apple or Google, with a 6-digit code we email to you, or with your password. If you signed in with Apple, we also ask Apple to end Lernify's access to your Apple account. A few things stay for a limited time, as described above: your old username (90 days, tied to no one), the one-way hashes kept because of a block, and reports about an account and the sanctions taken on it (until 180 days after they were made, without the account itself). Words and photos on your phone go when you delete the app, and when you log out. If you signed in with Apple or Google, you can also remove Lernify from your Apple Account (Sign in with Apple) or Google Account (third-party connections) settings. If you need help, write to [email protected].
If you are in the EU, the EEA or the UK (GDPR)
Who is responsible. The controller of your personal data is Javid Taghiyev, who publishes Lernify on the App Store. You can reach us about anything in this policy at [email protected].
Why we may use your data (legal bases).
- To provide the service you asked for (Article 6(1)(b), contract): your account and sign-in, keeping your words, progress, photos and level on your account, Friends, shared streaks, photo quests, weekly events, leagues, duels, games with friends, Word Rain, word sets, classes, channels and voice rooms, announcements, the notifications you allow and saved logins.
- Your consent (Article 6(1)(a)): sending your photos, the messages you write to Mosy, your voice when you speak with Mosy and the words you saved (for the weekly story and the memory tips) to the AI and speech services (the app asks before the first of each), push notifications, and the waitlist email. You can withdraw it at any time — stop taking photos, writing to Mosy or speaking with Mosy, turn notifications off in iOS Settings, or write to us — without affecting what was done before.
- Our legitimate interests (Article 6(1)(f)) in keeping Lernify safe, working and affordable: photo safety checks, text filters, reports and moderation records, usage limits and fair-play checks (phone IDs, daily AI totals, the XP record), the network hash, the website's logs, voice-room connection figures, and crash and performance reports. You can object to these at any time (see below).
- A legal obligation (Article 6(1)(c)): when the law requires us to keep or hand over information.
Your rights. You can ask us for access to your data and a copy of it (also in a machine-readable format), to correct it, to delete it, to restrict how we use it, and you can object to uses based on our legitimate interests. Automatic safety checks can pause your camera or suspend your account; you can ask for a person to review any such decision. To use any of these rights, write to [email protected] from the email address of your account (or tell us your username). We answer within one month, free of charge; we may ask you to confirm it's you. Deleting your account in the app (Profile → Delete account) erases your data at once.
Transfers outside Europe. Your account data is stored by Supabase in the EU (Ireland). OpenAI, OpenRouter, Google Gemini, Anthropic, Resend and Atlassian may process data in the United States, and Cloudflare runs a worldwide network. Where a provider outside the EEA or the UK receives personal data, the transfer relies on the European Commission's adequacy decision for the EU–U.S. Data Privacy Framework when the provider is certified under it, and otherwise on the Commission's Standard Contractual Clauses (with the UK Addendum) in that provider's data processing terms. Write to us for a copy of the relevant safeguards.
How long. Each kind of data is kept only as long as the section "How long we keep it" says, and no longer.
Complaints. If you think we have handled your data unlawfully, please tell us first at [email protected]. You also have the right to complain to the data protection authority where you live or work, or where you think the problem happened — the list of EU authorities is at edpb.europa.eu; in the UK it is the ICO (ico.org.uk).
Young people. Lernify is rated 16+ on the App Store because of live voice rooms with other learners. Where a country sets a higher age for consenting to online services on your own (up to 16 in the EU), a parent or guardian must give the consents above for anyone younger.
We don't sell your data, don't use it for advertising, and don't make decisions about you based only on automated processing that have legal or similarly significant effects, other than the safety checks above, which a person reviews on request.
Children
The app isn't intended for children under 16, and we don't knowingly collect data from them.
Changes
If this policy changes, the new version will be published on this page and the date above updated.