Privacy Policy
This policy explains what Zoy LLC (“Zoy”, “we”, “us”) collects when you use the meetzoy.com website and the Zoy app, why we collect it, how long we keep it, and how a parent can ask us to delete it. It is written for the grown-up who installs the app and pays for it. The app is for a child to read and listen. The child does not create an account.
Zoy LLC is at 1050 Kettner Blvd, Suite D #1019, San Diego, CA 92101, USA. Privacy requests go to hi@meetzoy.com.
The short version
- The customer is the parent. The child is about 2–8. The app has no accounts and no child profiles. We do not ask a child for a name, age, birthday, photo, voice, location, or contacts.
- Eight picture books are free. They do not need a sign-up, a trial, or an account.
- One subscription unlocks the rest of the library, including Calm Corner. Calm Corner is audio. Apple or Google bills the plan. We keep a hash of an anonymous purchase ID only so we can unlock the stories a grown-up paid for. That use is an internal operation of the subscription. It is not a profile of a child, and it is not used to contact a child or to advertise.
- A grown-up’s email and message leave the phone only if that grown-up sends them from Contact us. That message is support mail to hi@meetzoy.com. It has no pixel that reports whether it was opened. A form on this website can also send a name, an email address, and a message.
- Once a week the app sends a usage summary. We store that summary with no IP address and no identifier.
- The app has no ads, no analytics SDK, no session recording, no push notifications, and no email marketing. This website is separate and loads Google Tag Manager. The app does not. We do not sell personal information.
What the app collects
This is the app’s data inventory. Apple’s App Privacy answers and Google’s Data safety form match it.
- Anonymous purchase ID. The app creates a random ID for the subscription service (RevenueCat). A copy stays on the device and at RevenueCat. Our database stores a hash of that ID when a subscription event arrives, and only so we can unlock the stories a grown-up paid for. We keep our hash while the subscription is active, plus 90 days. We do not use the ID to contact a child, to advertise, or to build a profile.
- Purchase records. Apple or Google, and RevenueCat, hold the receipt. We do not store the card number. Their policies govern those records. We ask RevenueCat to delete its customer record when a parent asks us to.
- Weekly usage summary. Once a week the app sends one summary: the week, how many weeks since install, the platform, the app version, stories started, stories finished, minutes listened, and whether a subscription was active. We store that summary with no IP address and no identifier. We use it to see which stories are finished. Raw rows last 90 days. After that we keep weekly totals only.
- Error reports. The app can send a crash or error report with the app version and the operating-system version. The report has no name, no purchase ID, and no device identifier. We use it to fix bugs. We keep it for 30 days.
- Server request logs. Our host (Laravel Cloud) keeps request logs that can include an IP address, for operations. Those logs last 1 day.
- Server exceptions. Nightwatch receives error details after the IP address and the customer header are removed. We use them to fix bugs. Nightwatch keeps them for its usual period, up to 90 days.
- Contact messages. A grown-up’s email address and message, sent from Contact us in the app. The message is support mail to hi@meetzoy.com. It has no pixel that reports whether it was opened. It is not stored in the app database. We keep the email thread for 12 months after the last message. A privacy-request thread is deleted when the request is closed.
- Support ID. The app creates an ID on the device and shows it in the grown-ups area. We do not receive it unless a grown-up copies it into a message to hi@meetzoy.com. We use it only to handle that request.
- Favorites, recently viewed, downloads, and settings. These stay on the device. We do not receive them. They remain until the app is deleted or a grown-up removes a download.
- Store age and consent signal. Where Apple or Google provides a signal about age or a parent’s approval, the app reads it in memory so it can follow that store’s rule. We do not store the signal.
- Old accounts. We do not hold user records from the previous version of the app. That database was deleted with the old hosting account. If a copy of it ever appears, it goes into a private archive and is deleted 90 days after we process it.
What the website collects
This website is separate from the app.
- Contact form (/contact-us/). A name, an email address, and a message. We send that message as support mail to hi@meetzoy.com, with no pixel that reports whether it was opened. It is not stored in the app database.
- Message form at /get-samples/. A first name, last name, email address, organization, state, and role, plus a checkbox agreeing that Zoy may reply about the stories or the printed toolkit. We do not use this form to sell coaching or a school package. The same email path is used. A grown-up can ask us to stop those messages.
- Support email. Threads in our inbox are kept for 12 months after the last message. If we keep a separate note from the form at /get-samples/, that note lasts 24 months and contains only what the grown-up submitted.
The website does not ask a child to create a profile. Please do not send a child’s name or other personal information in a form. If a message appears to come from a child, we reply once to ask for a grown-up, then delete it.
Service providers
These companies process information only so they can perform the job below. They are not allowed to use it for their own advertising.
- Apple and Google bill the subscription, keep the purchase record, and may provide an age or consent signal.
- RevenueCat holds the anonymous purchase ID and whether the subscription is active.
- Laravel Cloud hosts the API and the database, including the one-day request logs.
- Cloudflare delivers the story pictures and audio.
- Nightwatch receives the redacted server exceptions described above.
- Resend delivers a grown-up’s contact or sample message to our inbox as support mail, with no pixel that reports whether it was opened. We do not keep a copy of that message in the app database.
- Google Workspace holds the support inbox.
- Vercel hosts this website.
- Google Tag Manager loads on this website only, in container
GTM-NLZH36J. It does not load in the app. Tags in that container can set cookies and can send visit information to Google and to other tools the container is set up to use. - UptimeRobot checks that public web addresses respond. It does not receive personal information.
How long we keep it
- Hashed subscription ID: while the subscription is active, plus 90 days.
- Weekly usage: raw rows 90 days, then weekly totals only.
- App error reports: 30 days.
- Server request logs: 1 day.
- Nightwatch events: the vendor’s usual period, up to 90 days.
- Support email: 12 months after the last message. A privacy-request thread is deleted once the request is closed.
- Privacy-request log (date, type of request, and the date it was finished; no message text): 24 months.
- Notes from the /get-samples/ form, kept outside the inbox: 24 months. A note contains only what the grown-up submitted.
- Database backups: the database provider keeps a backup for 7 days. Export copies last as 30 daily copies and 12 monthly copies. A row we have deleted can remain in those copies until they expire.
- Favorites, downloads, and settings: on the device until the app is deleted.
- Store age and consent signal: not stored.
- Purchase records at Apple, Google, and RevenueCat: their policies. The RevenueCat record is deleted when a parent asks.
Children and parents
The app is directed to children and is used with a parent. The child is about 2–8. We do not ask a child for a name, age, birthday, photo, voice, location, or contacts, and we do not build a profile of a child. The anonymous purchase ID is a persistent identifier. We use our hash of it only as an internal operation: to provide the subscription a grown-up bought. We do not use it to contact a child, to advertise, or to recognize a child across other services.
A child can read and hear the eight free picture books without giving us personal information. We do not condition that use on the child disclosing more information than we need. The subscription is optional, and a grown-up buys it from Apple or Google.
A parent can review the information above, refuse any further collection, and ask us to delete what we have. Refusing further collection does not close the eight free picture books. A request is usually about a support message or the anonymous subscription ID, because we do not ask a child for a profile.
How to make a request
- Email hi@meetzoy.com, or use Contact us in the app. Contact us is in the grown-ups area, behind the parental gate.
- If the request is about the app, include the support ID shown in the grown-ups area. That ID stays on the device until a grown-up sends it.
- We acknowledge the request within 7 days and finish it within 30 days.
- We delete our hashed subscription record and ask RevenueCat to delete the customer record. Apple and Google keep their own purchase records under their policies. We tell you that.
- When the request is closed, we delete that email thread. We log only the date, the type of request, and the date it was finished.
You can also use the contact form. The same times apply.
Selling and advertising
We do not sell personal information. We do not share it for targeted advertising. We do not use it to profile a child. The app does not show ads and does not read the device advertising ID.
Cookies, analytics, and messages
The app does not use cookies. It does not load an advertising pixel or an analytics SDK, and it does not send push notifications or a marketing newsletter. Support mail has no pixel that reports whether it was opened.
This website loads Google Tag Manager on each page. Tags in that container can set cookies and can record that a page was opened. Which tags run is set in the container, not in the app. Hosting and email providers also process the connection data needed to deliver a page or a message. Our separate cookie policy describes cookies. You can block cookies in your browser.
The form at /get-samples/ includes a checkbox for a reply about the stories or the printed toolkit. A grown-up can ask us to stop those messages. That form is not in the app.
The website links to our pages on other sites, such as a social network or a bookstore. Those sites have their own policies. We do not place their buttons inside our pages. A tag inside Google Tag Manager could still load one of their tools.
Security
We keep administrative, technical, and physical safeguards that fit a small service: access limits, hashed purchase IDs, private storage for original story files, and short log retention. No transmission over the internet is perfectly secure.
Where data is processed
Zoy is in the United States. A message you send us is handled here. Apple, Google, and the other providers above may process their part of the service in the United States and in other countries where they operate.
Other privacy rights
Depending on where you live, you may have a right to know, correct, or delete personal information a grown-up gave us, and to appeal our response. Email hi@meetzoy.com. We will not close the eight free picture books because you asked. We do not use sensitive personal information for advertising.
If you are in the European Economic Area or the United Kingdom and you contact us, you can ask for access, correction, or deletion, and you can object to processing that is not required to provide the subscription or to meet a legal duty. You can also complain to your local data protection authority. The legal bases we rely on are: providing the subscription and support you asked for, our interest in keeping the service secure and in anonymous weekly totals, and a legal duty where a store’s age rule applies. We do not store that age signal.
Changes
When this policy changes, we update the date below. If we start collecting a new kind of personal information, we will describe it here before we rely on it.
Contacting us
Zoy LLC
1050 Kettner Blvd, Suite D #1019, San Diego, CA 92101, USA
hi@meetzoy.com
This policy was last updated on October 10, 2026.