SonjoKids Privacy Policy
Last updated: October 31, 2026
SonjoKids is an app for parents and guardians of children aged 3 to 5. The adult creates the account, sets up one profile per child, pays for the subscription and follows the child's progress. The child uses a voice-guided activity game with no text, no ads, no purchases and no account of their own.
In short:
- About your child we only keep their first name, age, game language and progress, always linked to your account. Never their photo, voice, surname, date of birth, location or email.
- Until you have an active subscription (trial or paid), your child's profile and progress do not leave the phone. Once you subscribe, their profile and progress are also stored on our servers so you have them on all your devices.
- About you, your email, your sign-in data and the status of your subscription.
- There are no ads, we do not use advertising identifiers (IDFA or GAID), we do not use analytics services and we do not sell data.
- You can delete your account and all its data from inside the app.
1. Who is responsible
Jhon Peña, an individual trading as CodeAndBrands, based in the Dominican Republic ("we", "us"). He is the publisher of SonjoKids on Google Play. Contact for any privacy matter: contact@codeandbrands.com.
We process data in accordance with the Dominican Republic's Law 172-13 on the protection of personal data. Because the app is offered in other countries, we also comply with the rules that protect you where you live: in the United States, the Children's Online Privacy Protection Act (COPPA) and state privacy laws.
For now, SonjoKids is not offered in the European Economic Area (the European Union countries, Iceland, Liechtenstein and Norway), the United Kingdom or Switzerland. If we ever offer it there, we will update this policy first.
2. What data we process and why
What is stored where, at a glance:
| Data | Before you have a subscription | With an active subscription (trial or paid) |
|---|---|---|
| Your child's profile: first name, age and game language | Only on the phone | On the phone and on our servers |
| Your child's progress: level in each activity | Only on the phone | On the phone and on our servers |
| Last right and wrong answers, minutes and rounds this week, stickers | Only on the phone | Only on the phone |
| Your acceptance of the notice for families (version and date) | On the phone | On the phone |
| Your account: email, identifier and sign-in data | On our servers, from the moment you create the account | On our servers |
| Subscription status | Does not exist | On our servers and at RevenueCat |
| Daily counts with no name or identifier (section 2.5) | Sent to our servers | Sent to our servers |
If you never subscribe, your child's profile and progress stay on the phone until you delete their profile, your account or the app. If you delete a child's profile, the app always sends the profile's random identifier to our servers, so the deletion reaches them too even if your subscription has ended.
2.1 Your account
- Email. Used to create the account and to sign in with an access link we send you by email. SonjoKids has no password of its own.
- Sign in with Google or Apple, if you choose it. With Google we receive your account email, a user identifier and, depending on your Google account settings, your name and the address of your profile photo; the authentication service stores them with your account, but the app neither shows nor uses them. With Apple we only ask for your email (or Apple's relay address, if you choose to hide it) and receive a user identifier. We never receive your Google or Apple password.
- Internal account identifier. A random code that links your profiles, progress and subscription.
- Technical sign-in data. Sign-up date, last sign-in and the security logs of the authentication service, which may include your IP address.
Your session is stored in your device's secure system storage (Keychain on iOS, Keystore on Android).
Purpose: to create, maintain and protect your account. Legal basis: it is necessary to provide the service you sign up for (Law 172-13, Art. 27) and we have a legitimate interest in the security of the service.
2.2 Your children's profiles (up to six)
- First name (up to 20 characters; a nickname is fine), age in years and game language (Spanish or English).
- Stored on the device. When you have an active subscription, they are also synced to our servers, linked to your account, so they are on all your devices.
- The answers to the three-question starting questionnaire are only used to calculate the starting level. The level is stored on the device; the answers are not stored.
We never ask for or store a child's surname, date of birth, photo, voice, email, location or any contact details. The app does not use the microphone or the camera.
Purpose: to adapt the activities to each child and show you their progress. Legal basis: performance of our contract with you. You enter the data yourself, as the child's parent or legal guardian, with your consent (see section 7).
2.3 Progress
- For each activity, the level reached (1 to 5) and the date of the last update, linked to the profile. Synced to our servers only when you have an active subscription.
- The recent history of right and wrong answers (the last few attempts) is stored only on the device and is used to raise or lower the difficulty.
- The minutes and rounds played each week and the stickers earned are also stored only on the device: they are not sent to any server.
Purpose: adaptive progression and the progress dashboard. Legal basis: performance of a contract.
2.4 Subscription
- Purchases are handled and charged by Google (Google Play) or Apple (App Store). We never receive or store your card details.
- RevenueCat, our subscription management provider, receives your internal account identifier and the purchase data provided by the store. Before you sign in, its SDK uses a random anonymous identifier.
- Our database stores the subscription status (plan, status and end of period) and a log of the subscription notifications RevenueCat sends us: event type, product, dates, price, currency, store country and transaction identifiers.
Purpose: to give access to paying users and to manage the trial, renewals and purchase restoration. Legal basis: performance of a contract and, where applicable, compliance with legal obligations.
2.5 Aggregated learning statistics
The game counts, per day, how many sessions and rounds take place and how many times a level goes up or down, together with the skill area (logic and math, phonics or vocabulary), the level, the age and the language. The counts are grouped on the device and sent when an adult opens the grown-up area, also without an active subscription. The statistics we store carry no name and no account, profile or device identifier.
Purpose: to measure and improve the educational content. Legal basis: legitimate interest.
2.6 No crash reporting or analytics
Today we use no crash reporting or product analytics service. The app's code includes integrations with Sentry (crash reports) and PostHog (analytics), but they are switched off in the published versions: no key is configured, so they never start and send nothing.
If we ever turn on one of these services, we will first update this policy with the provider, the data it receives, where it stores it and for how long, and we will let you know as explained in section 10. Analytics, if added, will only run in the grown-up area, after the parental gate, never during play.
2.7 Local notifications: end of trial and Sunday summary
If you start a free trial, the app asks for permission to show a local notification 24 hours before the trial ends. It is scheduled on the device itself: we do not use push notifications or send any token to any server.
If you turn it on in the dashboard, on Sunday evenings the app shows another local notification with how many rounds each child played that week and in which areas they moved up a level. It is put together on the device from the progress stored there: it never leaves the phone. You can turn it off in Settings.
2.8 Advertising and campaign measurement
The app contains no advertising or attribution SDK, and today we send no data to any advertising platform. Our server has a ready-made function that could tell Meta and TikTok that a purchase happened (event type, amount, currency, country and date, with no identifier at all), but it is switched off and sends nothing. If we ever switch it on, we will update this policy first.
2.9 What we do not do
- We show no ads and include no advertising SDKs. We do not use IDFA or GAID: the advertising ID permission is blocked on Android and the app does not show the iOS tracking prompt.
- We do not sell personal data or share it for behavioural advertising.
- There is no chat, no user-generated content and no contact between users. Nothing the child does is published or seen by anyone but you.
- We do not ask for location, contacts, photos, camera or microphone.
- We do not build profiles for commercial purposes or make automated decisions with legal effects. Activity difficulty adjusts automatically based on right and wrong answers, solely to adapt the game.
3. Providers that process data on our behalf
| Provider | Purpose | Data | Location |
|---|---|---|---|
| Supabase, Inc. | Database, authentication and server functions | Account, profiles, progress, subscription, aggregated statistics | United States (Virginia) |
| Resend, Inc. | Delivery of the sign-in email | Adult's email | United States |
| RevenueCat, Inc. | Subscription management | Account identifier, purchase data, technical device data | United States |
They only process the data to provide their service to us, under their data processing agreements.
Google and Apple process payment data, your store account data and, if you sign in with them, your Google or Apple account data as independent controllers, under their own privacy policies. Meta and TikTok receive no data (section 2.8).
We do not disclose children's data to any third party outside this table. We would only disclose data when required by law or by a competent authority.
4. International transfers
We operate from the Dominican Republic and our providers store data in the United States, so your data is sent to the US from wherever you are. This transfer is necessary to provide the service: by creating an account and using the app you authorise it, in accordance with Law 172-13. Your child's profile and progress are only sent once you have an active subscription (section 7).
5. How long we keep data
- Account, profiles, progress and subscription: for as long as you have the account. When you delete it, they are removed from our database immediately. If the provider keeps backups, deleted data disappears from them as they are overwritten, within 30 days at most.
- A child's profile: until you delete it or delete the account.
- Data on the device: until you delete the account (everything is erased) or uninstall the app. Signing out does not erase the profiles and progress stored on the device.
- Aggregated statistics: with no time limit, because they identify no one.
- RevenueCat: for as long as the account exists. After deletion, we delete the associated customer record in RevenueCat within 30 days.
- Providers' technical logs (for example, sign-ins with IP address or the delivery log of the sign-in email): according to each provider's retention periods.
- The stores keep their purchase records under their own policies.
6. How to delete your account
From the app: Progress & settings → parental gate → Settings → Delete account → Delete permanently. Your account, your children's profiles, their progress and your subscription status and history are deleted from our servers immediately, together with all data stored on the device.
Without the app: email contact@codeandbrands.com from your account's email address asking for deletion. We will do it within 30 days and confirm it to you.
Important: deleting the account does not cancel the subscription. Cancel it in Google Play (Payments & subscriptions → Subscriptions) or, on an iPhone or iPad, in Settings → your name → Subscriptions.
Deleting a child's profile (Settings → Delete) removes it, together with its progress, from the device and, if it was already there, from our servers. If the device is offline at that moment, the deletion reaches our servers as soon as it is back online with you signed in.
Correcting a child's data: a change of name, age or language made in Settings is saved on the device. To also correct the copy on our servers, email us at contact@codeandbrands.com and we will do it.
7. Children and parental consent
- SonjoKids is designed to be used by an adult, with their children aged 3 to 5 playing under their supervision. Children have no account and cannot enter data.
- The grown-up area (creating profiles, dashboard, settings, subscription and external links) is behind a parental gate: you have to type in digits a number between 21 and 99 that is shown in words. Three wrong answers in a row lock it for 30 seconds. Access expires after 10 minutes or if the app spends more than 60 seconds in the background, and leaving the game requires passing it again. It is not an identity check: it stops a young child from getting in by accident.
- Notice and acceptance before creating the profile. Before you create a child's profile, the app shows you a notice with what we keep about the child (only their first name, age, game language and progress; never photos, voice or location, and no ads), with links to this policy and to the Terms of Use. To continue you have to accept it yourself: nothing is pre-ticked. The app stores on the phone the version of the notice you accepted and the date. By accepting it you confirm you are the child's parent or legal guardian and consent to the processing described in this policy. You enter the profile data yourself; the child cannot.
- Verifiable consent: the store purchase. Until you have an active subscription (trial or paid), your child's profile and progress do not leave the phone; only the aggregated counts in section 2.5, which carry no name or identifier, are sent. The subscription is bought on Google Play or the App Store with the payment method of your store account, which notifies the account holder of the transaction: this is the verifiable parental consent method we use under COPPA. From then on, your child's profile and progress are also stored on our servers so they can be synced across your devices.
- The child area has no text, ads, purchases, external links or chat.
- What is collected while the child plays: only their progress (each activity's level and their last right and wrong answers), linked to their profile's random identifier. The child cannot type or publish anything.
- What the identifiers are for: the profile's random identifier and your account's identifier are used only for the internal operations of the service: saving progress, adapting difficulty and showing it to you in the dashboard. They are not used to contact anyone, for advertising or to build a profile of any person, and only the providers in section 3, acting on our behalf, receive them.
- Retention policy for children's data: we keep the profile and progress only as long as they are needed for your child to keep playing at their level and for you to see their progress. They are deleted when you delete the child's profile or your account, within the periods in section 5. We do not keep them indefinitely.
- Your rights as a parent or guardian (COPPA and other applicable laws): you can review your child's data in the dashboard, ask us for a copy, correct it, delete it and stop further collection, by deleting the child's profile or your account or by emailing contact@codeandbrands.com. We never make play conditional on providing more data than necessary.
- If we learn that we have processed a child's data without their parent's or guardian's consent, we will delete it. Let us know at contact@codeandbrands.com.
8. Your rights
Everyone. You can ask us for access to your data and your children's data, for a copy in a commonly used format, and to rectify it, erase it, restrict its processing and object to it, and you can withdraw your consent where it is the legal basis. Email us at contact@codeandbrands.com from your account's email address; if you write from another address, we will ask you to confirm the account is yours. We reply within one month at most, or sooner if the law of your country sets a shorter deadline. You can correct your children's data in Settings (see section 6) and delete the account from the app. If you disagree with our answer, you can lodge a complaint with the data protection authority in your country.
Dominican Republic (Law 172-13). We answer access requests within 5 business days and requests to rectify, update or erase data within 10 business days. If we do not answer, or you disagree with our answer, you can bring a habeas data action before the Dominican courts.
California (CCPA/CPRA) and other US states. In the last 12 months we have collected these categories: identifiers (email, internal identifier and, if you sign in with Google or Apple, that account's identifier), commercial information (subscription history), app activity (progress) and information about minors (first name and age). We obtain them from you, from your device, from Google or Apple if you sign in with them and from the stores through RevenueCat, for the purposes in section 2. We do not sell personal information or "share" it for cross-context behavioural advertising, and we do not use sensitive information to infer characteristics. You have the right to know what data we hold, to access, delete and correct it, and not to be discriminated against for exercising your rights. You or an authorised agent can exercise them by email; to verify your identity we will ask you to write from your account's email address.
9. Security
- All of the app's communications are encrypted in transit (HTTPS/TLS).
- Each account can only read and write its own data (row-level security in the database). The subscription status is only written by our server, based on authenticated notifications from RevenueCat.
- The session is stored in the secure system storage; profiles and progress in the app's private storage.
- Internal access to data is restricted to those who need it.
No system is infallible. If a security breach affects you, we will notify you and the authorities as required by law.
10. Changes to this policy
The date at the top shows the latest version. If we make significant changes, we will let you know in the app or by email before they take effect. If a change affects how we handle children's data, we will ask for your consent again where the law requires it.
11. Contact
Jhon Peña (CodeAndBrands) · Dominican Republic · contact@codeandbrands.com
See also the Terms of Use.