Privacy at Diffy
Updated
This page explains, in plain words, what Diffy keeps, where it keeps it, what it measures and how to remove it. It describes the site as it works on the date above.
For kids: the short version
- You can play every game without signing in. Diffy never asks you for your email, birthday, photo or where you live.
- There are no ads on Diffy.
- When you play as a guest, your stars last until the page reloads.
- If a grown-up signs in and picks your player, the stars you earn after that are saved in their account. Stars from this visit’s guest play aren’t saved.
- Diffy counts things like “a game was opened” to make the games better. It doesn’t send your name or your answers.
- This browser can remember which games you played, so you can jump back in. A grown-up can tap Forget to clear it.
Playing without an account
Every game and every level works without signing in, and books can be read without an account. Guest play is not saved: stars, unlocked levels and answers live only in the open page and are gone when the page reloads, when a grown-up signs in, or when the player changes. Diffy does not create an account or a profile on its servers for a guest.
When a guest opens a game, the browser keeps a small record named diffy.trial.v1: a random code and a generic player called “Explorer”. It holds no name and no answers. On a browser that used an earlier version of Diffy, it may still hold guest progress from that version, which a grown-up can add to an account when signing in.
What stays on this device
The “Jump back in” list
So a child can find their way back on another day, this browser keeps a short list of the games recently played here without signing in. The home page shows up to three of them as “Jump back in”. For each game the list stores only:
- the game’s id, for example
genelab; - the id of the level or activity the game opened, for example
atoms; - the date it was last played.
It keeps at most six games. A game not played for 60 days stops showing and is removed the next time the list changes. It stores no names, stars, scores or answers. The list (saved as diffy.recent.v1) is never sent to Diffy or anyone else, never put into analytics and never copied into an account. It is not analytics, so turning analytics off does not remove it. To clear it, tap Forget next to “Jump back in” on the home page (when that row is showing), use the button below, or clear this site’s data in your browser.
Checking this browser…
Everything else Diffy keeps in this browser
- Whether sound is on, and which Spanish voice was chosen in Amigo.
- Your analytics choice, if you turned analytics off (
diffy_no_analytics). - For signed-in families: which player is active on this device, whether this device is locked to one child (Kid Lock), and whether older on-device players were imported. These hold account and profile ids, not names.
- From versions of Diffy before accounts existed: an older on-device copy of players and their progress (
diffy.v1) may still be here. Diffy only reads it to offer an import. - The guest record described above.
- Short notes kept only while the tab is open (most expire after 30 minutes): which home-page card or link opened a game or chapter, whether the visit came from an AI assistant such as ChatGPT, where the current first level is up to, and which child’s certificate the family page just asked for. For a signed-in player, the first-level note is labelled with the account and profile ids, and the certificate note holds that child’s profile id until the certificate page opens, which removes it. The ids in these notes stay in this browser.
- When a grown-up signs in, Google’s Firebase sign-in code keeps the session in this browser so you stay signed in.
- Google’s Firebase code also keeps small technical records in this browser’s storage. When analytics is on, these include a random installation id for this browser, which is sent to Google with analytics. It is not a name or an email.
- One game, Prickly Pot, normally keeps its progress in the open page like every other game. If someone opens its standalone file directly (
/pricklypot/index.html) instead of playing it on Diffy, that copy saves its own game progress in this browser.
Signing out ends the session but leaves these small items. Clearing this site’s data in your browser settings removes all of them.
Grown-up accounts and child profiles
An account is only needed to save progress across visits and devices, print certificates and lock a device to one child. A grown-up signs in; children never need an email.
- Sign-in uses Google Firebase Authentication. With email, it keeps your email address and handles your password; the password is not stored in Diffy’s database. With “Continue with Google”, Google shares your account’s email, name and profile picture with the sign-in service. Diffy shows only your email.
- Your account record (one per grown-up, in Google Cloud Firestore) holds the child profiles you create — each with a name you type (up to 16 characters; a nickname works), an emoji avatar, a colour and the date it was made — and each child’s game progress: stars, levels, best scores and saved game state.
- It also holds recent learning activity for each child: which activities were played, the result, how many were right out of how many, attempts, hints and time taken. Each time new activity is saved for a child, Diffy keeps only that child’s latest 200 records from the last 90 days. Older records stop being shown right away and are removed from your account record the next time that child’s activity is saved, or when you remove the profile or ask us to delete the account.
- If you set one, it holds the 4-digit grown-up PIN used to unlock Kid Lock.
- Who can see it: the database rules let only your signed-in account read or change your record. The people who run Diffy can access the database to operate and fix the service.
- Diffy never asks for a child’s email, birthday, photo, phone number or location.
Analytics
Diffy measures how the site is used so we can see what helps children learn and fix what doesn’t. Analytics runs only on the live diffy.ai site, not on test copies.
- Vercel Web Analytics counts page views: the page, the site you came from, and the country, browser, operating system and device type. It uses no cookies.
- Google Analytics (through Google Firebase) records standard Google Analytics measurements, such as page views, and Diffy’s own events. Google also records standard details such as browser, device and approximate location.
- Diffy’s own events are these. Games and books: a game, level or chapter opened; a level started, tried or finished; a saved level resumed; the next level asked for; a tutorial finished, skipped or left; a chapter finished; an adventure step finished; progress saved to a signed-in player. Finding things: a home-page card shown or tapped; a link to a game or book tapped; a visit that came from an AI assistant. Guest play: a guest game started; the offer to save older guest progress shown; that progress added to an account. Accounts: a grown-up signing up, in or out; a child profile added, renamed, switched to or removed; older on-device players imported.
- The details Diffy adds to those events are only: game, level, tutorial, book and chapter ids, the game’s category, and whether it was a game, book or experiment; whether the player was a guest, whether a saved player was involved, and whether this was a game’s first level; the result and simple counts such as correct out of total, attempts, hints, time taken, a tutorial’s step number and the number of panels in a chapter; which home-page card or link was used, including a random code for that set of home-page cards; which level was asked for next and whether the first level had been finished; the number of child profiles, whether it was the first, and how many were imported; the sign-in method, whether it was a new account, and where sign-in started; and, if you arrived from an AI assistant, which one and how that was known.
- The details Diffy adds to its events never include names, email addresses, child profile ids, answers, typed text or code, or the address of an AI conversation.
- Both services also record the full address of each page viewed, and Google Analytics attaches it to events too. Addresses can include a game’s level id. Diffy’s links never put a child’s name or profile id in a page address: the family page passes the chosen child to the certificate page inside this browser tab instead.
- When a grown-up is signed in, Google Analytics links events to the account’s random sign-in id — not an email or a name.
- If this browser blocks site storage, Diffy keeps analytics off automatically.
Turn analytics off on this device
This switch turns off both Google Analytics and Vercel Web Analytics in this browser. Each browser and device has its own setting. It fully applies from the next page load in each open Diffy tab. It stops new collection but doesn’t delete Google Analytics cookies already set. Clearing this site’s data deletes those cookies and also resets this setting.
Checking this browser…
Cookies and similar storage
Diffy’s own code sets no cookies. When analytics is on, Google Analytics sets its standard cookies (named _ga and _ga_…) to tell visits apart. Vercel Web Analytics uses no cookies. Firebase also uses this browser’s storage (not cookies) for the sign-in session and, when analytics is on, a random installation id, as listed under “What stays on this device”. “Continue with Google” uses Google’s sign-in pages, which have their own cookies and privacy policy.
Creator studio
Signed-in grown-ups can pitch a game in the creator studio. Diffy stores the pitch you write, the public author name you choose, your originality and credit confirmations, and the review history. In the studio, drafts are visible only to you; submitted ideas are also visible to Diffy’s reviewer. If a game is published, its page shows the author name you chose, and Diffy keeps performance numbers for it that you can see. No email, account id or child name is published.
Services Diffy uses
- Vercel hosts the site and runs Vercel Web Analytics. Like any web host, it receives standard request details such as IP address and browser type in order to deliver pages.
- Google Firebase provides sign-in (Firebase Authentication), the account database (Cloud Firestore) and Google Analytics.
- Google provides “Continue with Google” sign-in.
Diffy shows no ads and uses no ad networks. Google Analytics has optional advertising features: Google signals and ad-personalization signals. Diffy’s analytics setup turns both off whenever it starts Google Analytics.
How long things are kept
- Guest play: until the page reloads.
- Notes kept while a tab is open: until the tab closes (most expire after 30 minutes).
- The “Jump back in” list: a game drops off after 60 days without play; the whole list goes when you tap Forget.
- Other items in this browser: until you clear this site’s data.
- Account records: until you remove them or ask us to delete the account. Each time new learning activity is saved, a child’s records are trimmed to the latest 200 from the last 90 days; older ones stop showing straight away and are removed at that child’s next save.
- Analytics: kept by Vercel and Google under each service’s retention settings.
Deleting your data
- A child’s profile: on the family page, choose Remove on that child’s card. This removes the child’s name and progress from your account record.
- Your whole account: there is no delete button yet. Contact us at hello@diffy.ai from the email address you sign in with and ask us to delete your account and its record.
- This browser: tap Forget for the “Jump back in” list, or clear this site’s data in your browser settings to remove everything Diffy keeps here.
What Diffy doesn’t do
- No ads and no ad networks, and Google Analytics’ optional advertising features are turned off (see “Services Diffy uses”).
- No email, birthday, photo, phone number or location asked of children.
- No names, answers or typed text in analytics.
- No microphone, camera or location access. Read-aloud uses your browser’s built-in voices or Diffy’s own recordings; some browsers use an online voice service for their built-in voices.
Changes and contact
When what Diffy keeps or measures changes, this page and its date change with it. Questions or requests: contact us at hello@diffy.ai.