Privacy notice
Ahaboom is a library of branching comics for kids 9 to 12, made by BOMI Lab. Its first series is SLICE!, a fractions comic. This notice covers what we collect on each part of the site, why, and how long we keep it.
The short version
- The comic opens after a parent or guardian signs in with their email, or through a kid link the parent sends from their account. Kids never sign in, and they can’t type anything into the comic. We don’t ask them for a name, email or photo.
- Your account keeps your kid’s reading progress (how far they read, the endings, the choices and fractions in the report) so we can show it to you and email you a short report after an ending. We use it for nothing else.
- The comic also counts taps under a random id that goes away when the tab closes, to improve the story. No ads or ad trackers run in the comic.
- Meta’s ad pixel runs only on the pages for grown-ups who are choosing: our home page, For parents, How it works, Pricing and the series pages (SLICE!, RAMP, MIX, PUSH, FIZZ and LOOP). Never in the comic, never in your account.
- There are no passwords, and we never ask for card details. You can delete your account, and everything tied to it, from your account page.
Children’s privacy (COPPA)
SLICE! is made for children, so the US Children’s Online Privacy Protection Act (COPPA) applies to the comic.
- We don’t ask a child for personal information. The comic screens have no text boxes, chat, sign-up or share buttons.
- Your consent comes first. Reading progress is tied to an account only after a parent or guardian, 18 or older, enters their email and opens the sign-in link we send. Opening that link confirms the address is yours, and it is how you give consent. The sign-in screen says, before you send it, that the account keeps your kid’s reading progress for your reports.
- What we keep about your kid: a made-up reader name we generate (like “Comet Fox 27”, never a real name), which hero they read as, how far they read, the endings they found, and for each ending the choices they made, how many fractions they solved on the first try and how many hints they asked for. Nothing they typed (they can’t type), and no photo, voice or location.
- How we use it: only to run the comic, to show you their progress on your account page and to email you a report. We don’t use it for ads, we don’t share it with Meta or any other ad company, and we don’t sell it.
- The kid link you can send from your account opens the comic on your kid’s device with no sign-in. It holds a random code that lets that device add reading progress to your account and nothing else: it can’t see your email or your account page. You can turn it off, or replace it with a new one, at any time.
- There are no prices or email forms inside the comic. When the comic sends a grown-up to the Episode 2 plans, a grown-up check comes first: hold a button for 3 seconds, then type a year of birth. We never store the year. If this device opened the comic in the last 24 hours, the sign-in screen asks the same question.
- Deleting: “Delete my account” on your account page deletes your account, the kid link and all reading progress and reports at once. You can also write to us (see “Your choices”).
On the comic screens
These are the pages your kid uses: the start screen, the episode, the practice slices and the “Episode 2” screen.
What we collect
- Reading progress for your account (see “Children’s privacy” above), sent to our database while your kid reads.
- A random session id for analytics. The browser tab makes it, and it goes away when the tab closes. It is not linked to your account.
- Taps in the story for analytics: the scenes your kid reached, the choices and fractions they picked, how many hints they asked for, the ending they reached and the practice answers.
- Campaign tags from the ad link, if you arrived from an ad (for example, which campaign it was). They name the ad, not you.
Where it goes
Reading progress goes to our database (Supabase), through our own web address. The analytics taps go to PostHog, our analytics service, in its EU cloud, also through our own web address. We set PostHog to drop IP addresses and to skip session recordings, heatmaps and automatic click tracking. Fonts and pictures load from our own site.
What stays on the device
- Your sign-in, or the kid link’s random code, until you sign out, turn the link off or clear this site’s data.
- The endings your kid found (ending names only), until you clear this site’s data.
- Story progress, until the browser tab closes.
- A “kid mode” timestamp for 24 hours. It keeps Meta’s pixel off every page on this device, and makes the sign-in screen ask for a year of birth.
What we never collect from your child
Name, email, photo, voice, location or contacts. The comic loads no Meta pixel, no ads and no third-party trackers.
Your Ahaboom account
What we store
- Your email, and that you confirmed you’re a parent or guardian, 18 or older.
- Whether you ticked the news box, and the plan you picked on our pricing page, if any.
- Your kid’s reading progress and reports, as described under “Children’s privacy”.
- The report emails waiting to be sent to you.
What we never collect
A password (we sign you in with an emailed link) or card details.
Emails we send
Sign-in links when you ask for one. After your kid reaches an ending, a short report, at most one a day. News about new episodes only if you ticked the box.
The Episode 2 email list
- The grown-up check stores a 30-minute pass on this device. If the year typed is too recent, it stores a 24-hour lock as a timestamp only.
- If you type your email on the Episode 2 form, we store it with: whether you came from a plan or the free link, the plan and price you picked (if any), whether you ticked the news box, the sign-up date and the confirmation date. This list is separate from accounts.
- We store nothing from your child’s play next to that email.
Emails we send
First, one email asks you to confirm the address is yours. If you don’t confirm within 14 days, we delete the address. After you confirm, we email you once when Episode 2 is out, and about new episodes only if you ticked the box. Every email has an unsubscribe link.
Meta (Facebook and Instagram ads)
- Meta’s pixel runs only on our home page, For parents, How it works, Pricing and the series pages (SLICE!, RAMP, MIX, PUSH, FIZZ and LOOP). On each it records a page view, and one “view content” event when you tap “Read Episode 1 free”.
- It sets two cookies on our site: _fbp, a random browser id, and _fbc, Meta’s click id when you arrived from an ad.
- We remove the click id (fbclid) from the address bar right away. It goes only into the _fbc cookie, never into our analytics.
- The pixel doesn’t load on the comic, on the grown-up screens after it, on the sign-in pages or your account page, on Help, About and Terms, or on this page.
- It also stays off when your browser sends Global Privacy Control, when you visit from outside the US, or when this device opened the comic in the last 24 hours.
- When you leave an email on the Episode 2 form, our server tells Meta that a sign-up happened (Meta’s Conversions API). It sends the _fbp and _fbc values, your browser type and the IP address of that request. It never sends your email, a scrambled copy of it, or anything about your child.
Global Privacy Control
If your browser sends a Global Privacy Control signal, we treat it as an opt-out. Meta’s pixel doesn’t load, and our server doesn’t report your sign-up to Meta.
The Facebook and Instagram app browser
If you tap our ad inside the Facebook or Instagram app, SLICE! opens in that app’s own browser. Meta runs that browser and can see the pages it shows, the comic included. We can’t switch that off.
For more privacy, open SLICE! in Safari, Chrome or another browser you use. When we spot one of these app browsers, the comic’s first screen shows a note with a “Copy link” button.
Who handles the data for us
| Service | What it does |
|---|---|
| Vercel (hosting) | Serves the site. Keeps request logs, which include IP addresses, for its standard log period. We don’t extend it. |
| Supabase (accounts and database) | Signs parents in and stores accounts, your kid’s reading progress and reports, and the Episode 2 email list. US region. Keeps database logs for its standard log period. We don’t extend it. |
| Resend (email) | Sends sign-in links, report emails, the confirmation emails and the Episode 2 email. |
| PostHog (EU cloud) | Stores the anonymous taps, with IP addresses dropped. |
| Meta | Measures our ads: the pixel on our pages for grown-ups (see “Meta” above) and the sign-up report from our server. |
How long we keep data
| Data | Kept |
|---|---|
| Unconfirmed lead | Deleted after 14 days |
| Confirmed lead (Episode 2) | Deleted 30 days after the Episode 2 email, or 12 months after we stop taking sign-ups, whichever comes first |
| Account, reading progress and reports | Until you delete the account, or 12 months after the last sign-in or reading on it, whichever comes first |
| Kid link | Until you turn it off or make a new one |
| Report emails waiting to be sent | Deleted with the account |
| If Episode 2 is not made, or Ahaboom doesn’t open | One honest email, then deletion within 30 days |
| Passwords | None: sign-in is by emailed link |
| Unsubscribed address | Reduced to a SHA-256 hash, kept only to avoid emailing it again |
| Analytics events (PostHog EU) | 12 months |
| Gate token | 30 minutes (production: signed server cookie) |
| Gate lockout | 24 hours, stored as a timestamp only |
| Kid-mode flag | 24 hours, timestamp only |
| Endings found | On the device until cleared; ending ids only |
| Story progress | Until the browser tab closes |
| Year of birth | Never stored |
| Platform logs (hosting, database) | The provider’s standard log period (see “Who handles the data for us”) |
| Deletion requests | Handled within 30 days |
Your choices
- On your account page: see your kid’s progress, turn off the kid link, or delete your account and everything tied to it.
- Write to hello@bomilab.com to ask what we hold about you or your kid, or to have it deleted. We reply within 30 days.
- Use the unsubscribe link in any of our emails to stop them. If you sign up again later, we send one email asking you to confirm, and nothing else until you do.
- Clear this site’s data in your browser to remove the endings and story progress from a device.
- Turn on Global Privacy Control in your browser to keep Meta’s pixel off.
The analytics taps from the comic carry no name or email, and we never connect them to your account. They expire after 12 months.
Contact
BOMI Labhello@bomilab.com