Privacy Policy & Student Data Protection

Effective Date: October 22, 2026 • Version 3.8 • Kinetic Inspiration LLC

Summary for parents: Contest Math Pro™ (CoMP) is built for students in grades 5–8. Students never create an account or give us their name or email. Practice history stays on the device. We don't show ads, sell data, or track students across other apps or websites. The AI Coach is off until a parent turns it on, and a parent can delete the student's data at any time.

1. Who We Are

This Privacy Policy describes how Kinetic Inspiration LLC ("we", "us", or "our") handles information in the Contest Math Pro™ (CoMP) app ("the App"), our website, and our support channels. The App is designed for middle school students preparing for math competitions such as the AMC 8®, and we designed it to follow the Children's Online Privacy Protection Act (COPPA) and Apple's App Store guidelines.

2. Children's Privacy

  • No registration: there are no accounts. Students never provide an email address, phone number, school, or location. A student may enter an optional name or nickname to personalize their profile and the parent report; it stays on the device and is never sent to us, the AI provider, or anyone else. It appears outside the App only if a parent chooses to share a progress report. The name can be changed or removed at any time in the profile (saving an empty name removes it), and it is also removed when a parent erases the student's data in the Parent Dashboard or the App is deleted.
  • No advertising or tracking: the App contains no ad networks or tracking software, and we don't track students across other apps or websites.
  • No selling: we never sell, rent, or trade student information.
  • Parent controls: the AI Coach stays off until a parent turns it on behind a parent verification step, and a parent can turn it off, turn off anonymous practice statistics, or delete the student's data at any time in Progress → Parent Dashboard → Parental Controls & Privacy.

3. Information Stored on the Device

Most of what the App knows stays on the iPhone or iPad: practice test answers and times, the Mistake Bank, scratchpad drawings, XP and badges, study plans, AI Coach conversation history, and the reports shown in the Parent Dashboard and PDF report. This information is not sent to us, except as described below.

4. Information Sent to Our Servers

Our server runs on Google Firebase. It receives only what the App needs to work:

  • Anonymous account: the App signs in with a random anonymous ID (no name or email), created the first time it opens and again after a parent's Reset, so we can apply daily AI Coach limits, unlock Pro, and deliver the App's encrypted problem library. An anonymous account that hasn't been used for about 13 months is deleted, and the App starts a new one the next time it's used (Section 10). Section 11 says what happens to it when the App is deleted. We also receive Apple's app-specific device identifier, which our server stores only as a one-way scrambled (hashed) value to prevent abuse of the daily limits.
  • Usage counts: how many AI Coach questions were used each day (kept 30 days), plus a running total of questions used and the date the App was last active (kept with the anonymous account; see Section 10).
  • Time zone: each AI Coach request includes the device's time-zone offset (for example, UTC−5) so the daily allowance resets at the student's local midnight. To keep the allowance fair, so that changing the device's time zone can't start the next day's allowance early, our server stores the offset in two places: with the anonymous account, and with the hashed device record. Section 10 says how long each is kept and what a parent's Reset deletes.
  • Subscription status: when a parent subscribes, Apple's signed purchase record (which plan, its expiration date, and Apple's transaction ID) is linked to the anonymous ID to unlock Pro. This subscription link lists each anonymous ID that uses the purchase (for example, one for each family device) and when each last used it, so one purchase can't unlock Pro on an unlimited number of devices. We never receive payment details.
  • App verification: requests are checked with Apple DeviceCheck and Firebase App Check to confirm they come from the genuine App.
  • Diagnostics and reports: crash and performance reports (device model, iOS version, app version, and technical details such as memory use and how many minutes the App was open; no personal information); reports a student sends about a problem that looks wrong; and AI Coach replies a student reports for review, including the text of that reply. These are kept for 90 days, except a short summary per problem (a snippet of our own question, the answer choice most recently reported, and how many reports) that we keep until the problem is fixed. To limit how many reports one installation can send in a day, our server also keeps a daily count of them for about 2 days (Section 10). Firebase's software in the App, which handles the anonymous sign-in, also sends Google basic technical details about itself with its requests (such as which Firebase versions the App uses), not linked to the student; Google uses them to measure and improve its software.
  • Anonymous practice statistics: described in Section 6.

Like any internet request, connections reveal a network (IP) address. Our server does not store it; our cloud provider's standard request logs record it temporarily (about 30 days) for security and reliability.

5. AI Coach (Mathimus™)

  • Off until a parent turns it on. The App explains what is shared before a parent turns it on.
  • Students cannot type to the coach. The AI Coach has no text box. Students interact only by tapping buttons the App provides ("Give me a hint", "Show a faster way", answer choices A–E), so every request is assembled by the App and our server from the App's own problems and study content — never from text a student wrote.
  • What is sent: the tapped request, the recent conversation (up to the last 12 messages), and study context: topic progress, practice stats such as streak, level and score estimate, up to six recently missed problems with the answer chosen, and choices made in the profile (grade and target score), plus the latest official AMC 8 score if the family entered one, with its year and the App's score estimate before that contest (earlier years' scores are not sent). Nothing a student typed is sent, and the student's name is never sent. Each request also includes the device's time-zone offset so daily limits reset at the student's local midnight; our server stores it to keep the daily allowance fair (Section 4).
  • Defense in depth: even though students cannot type, our server still automatically removes anything that looks like a name, school, street address, zip code, email address, phone number or username from the conversation and the study profile before they leave it, and the coach is instructed never to ask for personal information.
  • Who processes it: our server forwards each request to Anthropic, the AI provider (the App calls it a third-party AI service), to write the reply, with child-safety filters.
  • Not kept on our server: our server doesn't keep coach messages, neither the requests nor the replies, except a reply the student chooses to report (see Section 4). Anthropic may keep them briefly, only to detect abuse, and never uses them for training: its paid API terms don't allow it to use them to train or improve its products. The conversation history kept on the device is described in Section 3.

6. Anonymous Practice Statistics

To make our practice problems the right difficulty, the App sends anonymous statistics about how problems are answered: one anonymous record for each problem answered, which our server adds to running totals. Each record holds only: a short code identifying the problem, its topic and difficulty; the type of practice; whether the answer was correct, incorrect, or skipped and which choice was picked; a broad time range (such as "30 to 60 seconds"); the student's general skill level for that topic (1–5); whether the student said a fast correct answer was a guess; whether a correct answer came after the App showed the method (the Fast Path hint or the AI Coach); which part of the App it came from; and the version of our problem library. The App sends these records in batches, and each batch carries a random one-time batch code, which our server keeps for about a week so that a batch sent again (for example, after a dropped connection) isn't counted twice. The code is new for every batch and isn't linked to the student, the device or the anonymous account.

Once a day the App also reports a few anonymous totals about how it is used: that it was opened (grouped by days since install), milestones such as finishing the placement test or a parent turning on the AI Coach, which screen led to a purchase, and how many missed questions are waiting in the Mistake Bank (as a range such as "6 to 12", never an exact count). Each of these counts, like each upgrade-screen view, carries a random one-time code, which our server keeps for about a week so that a count sent again isn't counted twice. The code is new for every count and isn't linked to the student, the device or the anonymous account.

These statistics contain no name, contact information, device identifier, or location. Our server adds them to running totals for each problem and each type of problem (for example, "answered 1,240 times, 61% correctly") and does not keep individual answers. We use the totals only to improve the App: measuring how hard problems are, improving the placement test, and finding problems that need fixing. They are on by default; a parent can turn them off in the Parent Dashboard, which also deletes any statistics waiting to be sent and stops the daily counts of app events, upgrade-screen views and AI Coach buttons tapped (Section 10).

7. Purchases

  • Subscriptions (Monthly, Season Crunch, and Annual passes) are processed by Apple through the parent's Apple ID. We never receive credit card numbers or billing addresses.
  • Manage or cancel subscriptions in the Apple ID settings on the device.

8. Service Providers

We share information only with service providers that run the App for us, and only for that purpose: Google Firebase (hosting, database, and anonymous sign-in), Apple (App Store purchases and DeviceCheck), and Anthropic (AI Coach replies). For this website: Cloudflare (hosting, and a spam check on the support form), FormSubmit (delivers support-form messages to our email), and Google Fonts (your browser loads the site's fonts from Google, which sees your network address). We do not share information with advertisers or data brokers.

9. App Privacy Summary

Data Collected? Linked to the anonymous account? Used for tracking?
Contact info (name, email, phone) No (only if a parent contacts support by email or the website form) No No
Payment details No (handled by Apple) No No
Location No No No
Purchase history (subscription status) Yes, to unlock Pro Yes No
User ID (the random anonymous ID; no name or email) Yes, to apply daily limits and unlock Pro Yes No
Device ID (Apple's app-specific identifier, stored hashed) Yes, to apply daily limits Yes No
Product interaction (daily AI Coach question counts, a running total, and the last-active date) Yes Yes No
Other data (the device's time-zone offset, such as UTC−5) Yes, to keep the daily AI Coach limits fair Yes No
Other usage data (anonymous practice statistics: one record per answered problem, added to totals) Yes, can be turned off No No
User content (AI Coach requests, built from the buttons a student taps; reported replies) Sent to write replies; our server keeps only reported replies No No
Diagnostics (crash, performance, and Firebase's technical details about its own software) Yes No No

10. How Long We Keep Information

We keep information only as long as we need it for the reason we collected it. Information in our database is deleted automatically when its time is up (we use automatic expiry dates, so nothing depends on someone remembering to delete it), and an automatic monthly cleanup deletes anonymous accounts that haven't been used for about 13 months (described below the table). We don't keep any student information indefinitely.

Information Why we keep it How long
Profile name and avatar, practice history, Mistake Bank, scratchpads, AI Coach conversations, reports (on the device) So the student can keep practicing and the parent can see progress. It never leaves the device except as described in this policy. Until a parent erases it in the Parent Dashboard or the App is deleted
Daily AI Coach question counts, hashed device records, and the device's time-zone offset kept with them To apply the daily free and Pro limits fairly and prevent abuse. The limits reset daily, so older counts aren't needed. The time-zone offset stops a change of time zone from starting the next day's allowance early. About 30 days (the device's time-zone offset: about 30 days after the device's last AI Coach request)
Diagnostics, problem reports, and AI Coach replies a student reports To fix crashes, correct problems, and review flagged replies. Ninety days gives us time to investigate and confirm a fix. 90 days
Daily report counter (how many diagnostics and reports came from one installation that day, filed under a one-way scrambled (hashed) form of the anonymous ID, with nothing else) To stop one installation from flooding us with reports. It's never stored with a report, so reports stay unlinked to any account. About 2 days
Per-problem summary of error reports (a snippet of our own question, the answer choice most recently reported, and how many reports) To find and fix problems with a wrong answer or a typo. It's about our question, not about a student. Until the problem is fixed
Support messages (email or the website form) To answer the question and keep a record of what was fixed. Up to 12 months
Anonymous account's database record and subscription link (the anonymous ID, Pro status, a running total of AI Coach questions, the last-active date, the time-zone offset used for the daily limits, and Apple's transaction ID for a purchase; the subscription link lists the anonymous IDs that use the purchase and when each last used it) So Pro keeps working across days and devices (including Family Sharing), and so one purchase can't be used on an unlimited number of devices. Kept a little over a year so an annual subscriber who takes a break keeps their link. About 13 months after the App was last used
Anonymous sign-in record (the random anonymous ID and when it was created, last signed in and last used; nothing else) So the App can sign in to our server without a name or email. Firebase Authentication, our sign-in provider, keeps it. It holds no usage, progress or purchase information. About 13 months after the App was last used (deleted by our monthly cleanup); a parent's Reset deletes it right away
Deleted-account mark (the anonymous ID of an account a parent just reset or our monthly cleanup just deleted, with nothing else) So a request already on its way can't recreate the deleted account. About a day
Practice-statistics batch codes and app-event codes (a random code for each batch of statistics and for each app-event or upgrade-screen count, linked to nothing else) So a batch or a count the App sends again after a dropped connection isn't counted twice. About a week
Network (IP) address in our cloud provider's request logs Standard security and reliability logging by Google Cloud. We don't use it to identify anyone. About 30 days
AI Coach requests and replies (not kept on our server) Our server passes them to Anthropic, the AI provider, and doesn't keep them. Anthropic may keep them briefly, only to detect abuse, and never uses them for training. Not kept on our server
Anonymous practice statistics and daily service totals Running totals per problem (like "answered 1,240 times, 61% correctly") daily totals of coach use (including which coach buttons are tapped) and of how often the upgrade screen is shown, and daily counts of app events such as "placement test finished", "AI Coach turned on", "parent report opened", "subscription started" and "opened today" (grouped only by how many days since the app was installed), to improve problems and run the service. They contain no information about any individual. Turning off anonymous practice statistics in Parental Controls also stops the app-event counts, the upgrade-screen counts and the coach-button counts. Daily totals of AI Coach questions used and their cost continue, because the daily limits and our AI billing depend on them. Kept while useful

Once a month, we delete each anonymous account that hasn't been used for about 13 months (the App hasn't connected to our server in that time), together with its records on our server: its sign-in record, its database record (AI Coach usage counts, Pro status, the last-active date and the time-zone offset) and its place in any subscription link. The deleted anonymous ID itself, with nothing else, is kept for about a day so a request already on its way can't recreate the account. The student's work isn't affected; it stays on the device. The next time the App is used, it starts a new anonymous account by itself, with nothing for the student or a parent to do, and a subscription that is still active is linked to the new account, as on a new device.

When a parent uses Reset All Student Progress & History, the anonymous account (its database record, including its copy of the time-zone offset, and its sign-in record), its usage counts and the device's earlier usage records are deleted right away, and this device is removed from the subscription link instead of waiting to expire. A few things are kept and expire on schedule: today's usage count for the device and the device's time-zone offset, both kept so a reset can't be used to get extra free questions or to start the next day's allowance early, and deleted automatically about 30 days after the device's last AI Coach request; the deleted anonymous ID itself, with nothing else, for about a day, so a request already on its way can't recreate the account; the daily report counter, which holds only a count under a one-way scrambled form of the anonymous ID and is deleted automatically after about 2 days; and diagnostics and reports, which aren't linked to any account, so we can't look them up by student.

11. Parent Rights & Deleting Data

A parent can delete all of the student's data at any time with Progress → Parent Dashboard → Parental Controls & Privacy → Reset All Student Progress & History. This erases everything on the device, deletes the anonymous account and its usage counts from our server, and removes this device from the subscription link; the few device records listed in Section 10 expire on their own. (The link itself, which then holds only the plan, Apple's transaction ID and the anonymous IDs of any other devices that use the purchase, expires about 13 months after last use. Pro access can be restored afterwards with Restore Purchases.)

If the device is offline when a parent resets, the App erases everything on the device right away and deletes the server records the next time it connects. If the App moves to a new device before then, the new device can't finish that erase and says so in Parental Controls: open the App once on the previous device while it's online, or the records are deleted on the schedule in Section 10.

Deleting the App removes the student's data from the device, but it doesn't reach our server: the anonymous account's records there are kept on the schedule in Section 10 and deleted about 13 months after the App was last used. To delete them right away, use Reset All Student Progress & History before deleting the App. iOS also keeps a few technical items in the device's secure storage after the App is deleted, such as the anonymous sign-in, an app-verification token and the key that unlocks the problem library. None holds the student's name, answers or progress.

Parents can also contact us to ask what we hold or to request deletion:

Kinetic Inspiration LLC - Student Privacy Desk
Developer & Publisher of Contest Math Pro
Email: Email the Student Privacy Desk
Support Portal: https://contestmathpro.com/support
Mail: Show mailing address
Phone: Show phone number

12. Updates to This Policy

We may update this Privacy Policy as the App changes or as privacy laws change. We'll publish changes on this page with a new effective date, and we'll ask for a parent's consent again before using a child's information in a materially different way.