Privacy Policy

Marytale · Last updated 2 October 2026

Marytale is an app of illustrated bedtime stories for children. It is listed in Apple’s Kids Category on iPhone and in Google Play’s Families programme on Android, and it is built so that a parent can hand the phone to a child without worrying about what happens next.

This policy describes exactly what the app does and does not do with data. It is short because the app collects very little. The last section covers this website, marytale.app, which is a different thing from the app and is described separately.

What Marytale does not collect

Marytale never asks for and never collects:

  • a name, an email address, a phone number or a postal address;
  • a date of birth;
  • photos, camera or microphone access, contacts, or location;
  • an advertising identifier — Apple’s IDFA on iPhone, Google’s advertising ID on Android. On iPhone the app contains no tracking permission prompt, because it does not track anyone; on Android the permission that would let it read one is removed from the app outright, so it cannot be read even by a library that asks.

There is no advertising inside Marytale of any kind — no banners, nothing that interrupts a story, and no advertising network in the app. Google Analytics for Firebase is switched off and is not built into the app.

We do advertise Marytale itself on other platforms. On iPhone, one measurement service tells us whether those advertisements led to installs; it is named below, and it runs in the build its maker publishes for children’s apps, with the part that reads the advertising identifier not compiled into Marytale at all, so it cannot read one. The Android app contains no such service. The only outside service it contacts on first launch is our subscription provider, Adapty, which sets up an anonymous subscription record (described below); it does not report where the install came from.

There are no accounts. You do not sign in, and there is nothing to sign in with.

What Marytale does store

  • A random identifier. The first time the app runs it generates a random identifier and keeps it on the device — in the keychain on iPhone, in the app’s own storage on Android. It is not derived from your device, your Apple or Google account, or anything about you, and it is not shared with anyone. Its only purpose is to keep your reading progress attached to your copy of the app. On Android it is also kept in Google Play services’ Block Store and in the device backup, if you have one switched on, so that reinstalling the app or moving to a new phone does not erase a child’s reading streak.
  • Reading progress, stored against that identifier: how many books and pages have been read, which days reading happened on, and the reading streak. This is what the profile screen shows you.
  • Subscription status — whether an active subscription exists, so the app knows which stories to open.
  • A push notification token, if you allow notifications. It identifies the device to Apple’s notification service on iPhone, or Google’s on Android, so a message can reach it. We never read or store it ourselves: announcements of new stories go to everyone reading in a given language, not to a device. Notifications are optional and can be turned off in the phone’s settings at any time.
  • The three answers given when the app first opens — an age range for the stories (1–2, 3–4, and so on up to 11+, never an exact age and never a date of birth), the themes you picked, and what brought you to the app. They tell us who the app is for and what to write next. The answers unlock nothing and restrict nothing — every story is open to everyone, whatever you choose. These answers are stored without any identifier, so they cannot be linked to the random identifier described below or to anyone’s reading.
  • Settings and saved books, which stay on the device itself.
  • How many times each story has been read or saved — two counters kept against the story, not against you. They carry no identifier at all, so they say how popular a tale is and nothing whatever about who read it.
  • Which screens were reached, and what was read, recorded against the same random identifier as your reading progress. Each entry says what happened — the app was opened, a story was tapped, the reader opened, a page was turned, a subscription screen was shown or closed — together with which story and which page number, the language, the country (of the app store on iPhone, of the phone’s region setting on Android), and the version of the app. Nothing a person types is ever included, and nothing is free text: every value is chosen from a fixed list built into the app, and anything longer than sixty-four characters is cut before it leaves the device.

    We keep this for one reason. Four readers in ten reach the library and never open a single story, and until now we had no way to tell whether that was disinterest, a locked story, or a download that silently stalled — three problems with three completely different fixes. These entries are what tell them apart.

    They are deleted automatically after ninety days, by the database itself rather than by us remembering to do it, and what survives is only daily totals with no identifier and no story-by-story trail. This record can be switched off entirely in the app’s settings, and switching it off stops it at once; everything else in the app works exactly the same either way.

  • A record of the app ending badly — when it crashes, freezes or is shut down by the phone for using too much memory. What is sent is the reason, whether the app was on screen at the time, how much memory it was using, the phone model, and the versions of the app and of the operating system. There is no identifier of any kind in it, so it cannot be linked to you, to your device or to your reading progress, and we do not use a crash-reporting service. This is the only way we learn that a story disappeared mid-page on a particular kind of phone: a phone shutting an app down for memory is not a crash and leaves no other trace.

Corrections you send us

If you notice a mistake in a story — a wrong word, a clumsy translation — you can mark it and type what it should say. The entry sits behind a parental gate, so it is meant for an adult. Sending a correction is entirely optional; the app works exactly the same if you never do.

What reaches us is only what is needed to find and fix the place:

  • the fragment you marked and the words you typed in its place;
  • a little of the text on either side, so we can locate the fragment in the book;
  • which book, which page and which language, and the version of the app.

Nothing else travels with it. There is no name, no email address, no contact field, and no identifier at all — not even the random identifier that carries your reading progress. A correction therefore cannot be linked to you or to your device, and it is not shown to any other reader; only we see it. This also means there is nobody for us to write back to, so a correction never receives a reply.

Because a correction carries no identifier, we have no way to find the ones that came from you, and so a single correction cannot be withdrawn or retrieved on request. A correction is kept while it waits to be read, and after it has been dealt with, so that a wrong edit can be undone; we clear them out once the queue no longer needs them. If a correction ever contains something personal — a child typing their own name into the box, for instance — we delete it on sight and it is never used for anything.

Who else is involved

  • Apple handles every payment made on iPhone. We never see or receive card details. Apple also operates SKAdNetwork, a measurement system that tells us, in aggregate and without identifying anyone, whether an advertising campaign led to installs.
  • Google Play handles every payment made on Android. We never see or receive card details. Android has no equivalent of SKAdNetwork, and the Android app sends nothing to any advertising measurement service.
  • Google Firebase stores the stories and illustrations and delivers push notifications. Firebase’s analytics product is disabled in this app.
  • Adapty manages subscription status. It runs in its children’s mode and IP address collection is switched off in code. On iPhone the advertising-identifier component is compiled out of the app entirely. On Android the advertising-identifier permission is removed from the app and collection is switched off in code, so the advertising identifier cannot be read. To recognise a subscription on Android, Adapty’s library receives the Android ID (an identifier specific to this app on this device), the App Set ID, the device model, the Android version, the language, the time zone and the store country. It uses them only to keep track of the subscription, not for advertising.
  • AppsFlyer, on iPhone only — it is not part of the Android app at all. It tells us whether an advertisement we placed on another platform led to an install, and whether that person later started a free trial or subscribed. It runs in the strict build its maker publishes for children’s apps: the component that reads the advertising identifier is not in Marytale at all. What it receives is which step was reached — the end of the introduction, the first story read to the end, the moment a locked story is tapped — together with the device’s network address and an identifier that belongs to this app on this device only and cannot follow anyone into another app. It never receives a name, an age, an email, or anything a child types.

None of these companies receive a child’s name, age, email address, photograph or anything a child writes, because Marytale does not collect those. What they do receive is described above, item by item, so you can judge it yourself rather than take a promise.

This website

Everything above is about the app. The website at marytale.app is a separate thing: anyone can read it without installing anything, there is nothing to sign in to, nothing to buy, and no form to fill in. It asks for nothing and stores nothing on your device.

The website sets no cookies. Not for measurement, not for preferences, not at all. Nothing is written to your browser’s storage either.

We do measure how the website is used, because otherwise we cannot tell which stories people look for or whether the site works on a slow phone. That measurement is ours: the page sends a short message to marytale.app itself. No other company is involved, no analytics service, and nothing is loaded from anyone else’s domain. It is built so that it cannot identify anyone:

  • it records the page address, the kind of page, the language, and the website you arrived from;
  • if a link you followed carried campaign tags (the utm_source family, which we put into our own links so that a newsletter and an advert do not both look like “someone just arrived”), it records those tags — they describe the link, never you;
  • it records your country, which Cloudflare’s network tells us directly —your IP address is never stored. The only thing we ever do with it is compare it, at the moment of the request, against our own addresses, so that our own visits do not end up in our own numbers; the comparison keeps nothing;
  • it records whether you are on a phone, a tablet or a computer, and the family of your browser and operating system — those seven or so words, never the full identifying string your browser sends;
  • it records how far down a page you scrolled and how long it stayed open, and which links were pressed — the App Store button, a printable PDF, a link leaving the site — because that is how we learn whether the site is any use;
  • it records that a page was sent to a printer, because the printable sheets exist to be printed and nothing else would ever tell us whether they are;
  • if your browser hits an error on one of our pages, it records the error message and the kind of page — not what you were doing, and never the contents of the page;
  • it sets no cookie, reads no advertising identifier, and writes nothing to your browser’s storage;
  • it gives you no identifier of any kind, not even a temporary one, so there is nothing that could tell one reader from another, or recognise you on a second visit, or follow you to any other website — which also means we cannot count visitors, only visits, and we accept that;
  • it also measures how quickly pages actually load and respond for real readers, which is how we find out that a page is slow on a real phone rather than on our own.

One thing is counted on top of the page views: how often the button that leads to the App Store is pressed, and on which kind of page. That is a count, with no identifier attached to it. It exists because it is the only way to know whether the website is any use to the app at all.

There is no advertising on the website, no advertising network, no social-network buttons that report back, and no Google Analytics. The App Store link carries a short label so Apple can tell us, in totals only, how many installs came from the website; Apple never tells us who they were.

Children

The Marytale app is made for children and follows Apple’s Kids Category rules on iPhone and Google Play’s Families policy on Android. It contains no third-party advertising and no third-party analytics. The only outside service that receives a device identifier is our subscription provider, Adapty, and only to keep track of a subscription, as described above. The random identifier described above never leaves our own systems: it is used to support the internal operation of the app — keeping reading progress attached to a copy of the app, and working out where the app itself is failing people — and it is not used to build a profile, to target advertising, or to contact anyone. It is never sold, shared, or handed to an advertising network, because there is none. The website is written for the adult choosing what to read aloud — it carries no advertising either, and the measurement described above transmits no device or user identifier, because it has none to transmit. Settings, sharing a story and every link that leads outside the app sit behind a parental gate — a step a young child cannot complete on their own. On iPhone, purchases sit behind the same gate. On Android, a purchase is confirmed by Google Play itself, with the authentication you have set for purchases in Google Play or, on a child’s account, with approval through Google Family Link.

We do not knowingly collect personal information from children, in line with the US Children’s Online Privacy Protection Act (COPPA) and Article 8 of the EU General Data Protection Regulation. If you believe a child has somehow provided personal information to us, write to us and we will delete it.

How long data is kept, and how to delete it

Reading progress is kept while the app is in use. The record of which screens were reached and what was read is deleted ninety days after it is written, automatically. Deleting the app removes everything stored on the device, including the random identifier — after which the reading progress held on our side can no longer be linked to anyone or retrieved.

One exception, on Android: the random identifier is also kept in Google Play services’ Block Store and, if it is switched on, in the phone’s backup, and reinstalling the app restores it — which is what keeps a child’s reading streak from disappearing when a phone is replaced. To cut that link for good, ask us to erase the progress, below: the progress is deleted on our side, and a restored identifier then points to nothing.

To have the stored reading progress erased outright, follow the steps on the data deletion page — they matter, because the message carries the random code that is the only way we can find your records. You may also ask what is stored, ask for a copy, or object to its storage: support@pixagen.io.

Changes

If this policy changes, the new version appears on this page with a new date at the top.

Contact

support@pixagen.io