Cheat Code Coaching
Privacy Policy
Effective September 12, 2026 · Updated November 9, 2026
Cheat Code Coaching is a tool for youth sports coaches, parents, and league organizations. This policy explains what information the app collects, why, and what you can do about it. It applies to the Cheat Code Coaching website, the Coaches Portal, the Parent Portal, and the iOS app.
Who the app is for
Accounts are for adults: coaches, parents and guardians, and league administrators. We do not knowingly create accounts for anyone under 13. Information about children (a player's name, grade or age group, date of birth, photo, and development notes) is entered by the child's coach or parent, or by the organization running the program, including from the organization's own records. It is visible only to that team's coaches, the child's linked parents or guardians, and the organization's administrators and the staff running that program.
What we collect
- Account details. Your name, email address, and phone number, used to sign you in and to show your name to your team. Sign-in is handled by Clerk, our authentication provider.
- Team information. Team and organization names, logos, colors, schedules, plays, practice plans, and rosters. Rosters can include a player's name, grade or age group, photo, and parent contact details, entered by the coach.
- Player development. Progress notes, ratings, priorities, and game reports written by a coach about a player, shared only with that player's parents.
- Messages and photos. Team chat, topics, direct messages between a parent and coach, reactions, and any photos shared in chat. Photos are stored with Cloudflare Images.
- Notification tokens. If you turn on notifications, a device token (for the iOS app) or a browser push subscription, used only to deliver the notifications you have chosen.
- Calendar subscriptions. If you subscribe to a team calendar, a private key tied to your account so your calendar app can fetch the schedule.
- Facility bookings and payments. When an organization runs its facilities in the app: the bookings, lessons, camp and class registrations you make, the participants you add (a name, and a shirt size if the camp asks for one), the waiver you sign (the name you type, the time, your network address and the exact text you agreed to), and payment records. Card details are entered on Stripe's own page and stored by Stripe, never by us.
- Player profiles. When an organization runs camps, classes or registration in the app, it keeps one profile for each child so the same child isn't entered twice across programs. A profile holds the child's name, date of birth if you give it, and the parents or guardians linked to it. A profile can start from a booking you make, a team roster, or a list the organization imports from its own records. When a club's program asks for them, a profile can also hold the child's graduation year, school, clothing sizes, which hand they bat and throw with, and positions. Separately from the waiver, you choose yes or no to an ID photo taken at check-in for the tryout sheet and the roster. Medical details (allergies, conditions, medications) and an emergency contact are kept only if a parent or guardian adds them. A parent or guardian can also name pickup contacts: a name, a phone number and who they are. A pickup contact has no account and sees nothing.
- Registration. When you register a child for a club's tryout, team, season, camp or class: the program and the session you pick, your answers to the club's own questions, whether the child is a returning player, the waiver you sign for each child (the name you type, the time, your network address and the exact text you agreed to), and payment records. If you start a registration and don't finish it, we note how far you got so the club can see where sign-ups stall, and the club's reminders come from that note: an email, and a notification if you use the app, at most three times; they stop as soon as you finish.
- Tryouts. When a club grades a tryout in the app: the tryout number your child is given at check-in, the ID photo taken at check-in if you said yes to it, and the scores, measurements (a sprint time, a throwing speed) and short notes the club's evaluators enter. Each score records which evaluator gave it and when.
- Team offers. When a club picks its teams in the app: the offer to your child (the team, its coach, the deadline, and the price the club set), when it was sent, whether and when the offer link was first opened, whether it was accepted or declined and by which parent or guardian, the reminders sent, and whether the club has marked a deposit as received. The link in the offer email holds a random key; we store only a scrambled form of it, never the key itself. Accepting adds your child to the team's roster, with the name on your account, so the coach knows who you are.
- Coach-saved evaluations. A team's head coach can save a copy of a player's development chart under a label (for example, pre-season or mid-season), to compare later in the season. A coach may start a player's chart from that player's tryout scores; nothing from a tryout is put on a chart until the coach saves it.
- Staff records. If you work for an organization as staff or a trainer: your profile, hours and shifts, lessons and earnings, and documents the organization uploads for you, such as tax forms. Tax forms can be opened only by you and that organization's administrators.
- Business email. If an organization forwards its email to the inbox address the app gives it, messages sent to that address are stored so the organization's staff can read them in the app. Replies are written in the organization's own email program, not sent through us.
- Technical logs. Standard server logs (IP address, browser or device type, request times) kept by our hosting provider, Cloudflare, for security and troubleshooting. When the app opens signed out or offline, it also records a short sign-in diagnostic (what happened, the app version and device type, and a scrambled form of your network address, never the address itself), kept for 30 days so we can fix unexpected sign-outs.
- Saved copy on your device. So the app opens without a signal, it keeps a copy of what you last viewed on your own phone or browser. It belongs to the account that saved it, is never shown to anyone else who signs in on that device, and is removed when you sign out, except practice plan changes and tryout scores that haven't reached our servers yet, which stay so they aren't lost and are only ever offered back to the same account. Tryout photos are never saved on the device.
How we use it
To run the app: showing the right team to the right people, delivering chat and notifications, keeping schedules in sync, and letting coaches share progress with parents. We do not sell personal information, we do not show ads, and we do not use your information for advertising.
Who can see what
- Coaches on a team see that team's roster, parents, chat, plays, and player development.
- A parent sees their own child's information, the team chat, the schedule, and their private messages with the coach. A parent cannot see another child's development record.
- Organization administrators can see the teams, coaches, and parent directory across their organization.
- For facilities, the organization's administrators and front-desk staff see the bookings, customers and payments for their own facilities; a trainer sees their own lessons and the people booked with them.
- For registration, an organization sees only what you register with it, and one organization never sees another's records. Inside the club, administrators see the whole registration, payments included; front-desk staff see who is registered for each session, the registering parent's contact details and the answers to the club's questions, but no amounts; staff running a session see that session's list. When another parent or guardian has already registered your child for a program, you see that the child is registered and nothing else.
- Medical details are shared with the club only if you tick the box to share them, and you can change them or stop sharing at any time. Once shared, allergies and the emergency contact are shown to the club's administrators, to the staff at check-in and running the session, and to the coaches of the team your child joins; conditions and medications only to administrators and the head coach. Every time someone opens a child's medical details, we record who and when. Pickup contacts are shown to the club's staff who release players at the end of a session.
- Tryout scores are seen by the club's administrators and its lead evaluators. An evaluator sees players by number, photo and age group, and sees names only once the club shows them; unless the club allows it, each evaluator sees only their own scores until the tryout closes. Parents see tryout scores only if the club chooses to publish them. The tryout photo is shown only to the club's administrators, its check-in desk and that tryout's evaluators.
- Team selection is seen by the club's administrators: the players being placed, their tryout results, and the offers by team. If the club lets its coaches suggest players, a head coach sees the same for their own team only. If an offer has not been opened, the club's administrators see the parents' phone numbers so someone can call. Once your child joins a team, the head coach sees the ID photo if you said yes to it.
- An offer link shows that one child's offer (their first name and last initial, the team, the coach, the season, the deadline and the price) to whoever has the link, so please don't forward it. Accepting or declining needs you to sign in, and only the child's parent or guardian can do either. When an offer is accepted, the accepting parent and any other parent the club has confirmed are linked to the team; another parent or guardian on the child's profile is shown to the coach by name only, and the coach can invite them.
- A coach-saved evaluation is seen by the team's coaches and by the player's linked parents, who see the same chart read-only.
- A parent can invite another parent or guardian to their child's profile. We store the email address or phone number the invite goes to; the link works once and expires after 14 days. When a guardian is added or removed, the other guardians get an email about it, and we keep a record of who made each change.
- A shared practice plan link shows only that plan, read-only, to whoever has the link.
Service providers
We use Cloudflare (hosting, database, and image storage), Clerk (sign-in), Resend (the email we send you, such as invitations and replies to a report), Apple's push notification service (notifications on iOS), Stripe (payments an organization takes for its facilities, camps and registrations, processed on that organization's own Stripe account), and Zoho (some of the email our team sends personally). Each processes data only to provide its service to us, under terms that protect it at least as well as this policy does. We do not use third-party analytics or advertising, and we never sell data.
How long we keep it
Your account and profile stay until you delete them. Team content (rosters, chat, practice plans, player development notes) stays with the team for the season it belongs to; when a season is archived it becomes read-only, and a coach or organization can remove it at any time. Photos shared in chat are kept with the chat. Reports of an issue or of a message are kept while we act on them. Facility records (bookings, waivers, payments) stay with the organization while it uses the app, because it needs them for its own accounts and liability records. Player profiles stay with the organization while it uses the app, for the same reason, and so do registration records (registrations, answers to the club's questions, waivers and payments). Medical details and an emergency contact stay on a child's profile until a parent or guardian removes them or the organization deletes the profile. Tryout photos are deleted a set number of days after the tryout closes (30 unless the club chooses otherwise), and at once if you withdraw the ID photo consent. Tryout scores, measurements and notes are deleted after a child has had no activity with the club for a set number of years (3 unless the club chooses otherwise), and are kept while the child is on one of the club's current teams. Team offers stay with the club's registration records while it uses the app, and are deleted with the team they were for. Coach-saved evaluations stay with the team, like the rest of its player development. When an organization closes its account, its registration and payment records are deleted with it, so it should export them first; Stripe keeps its own record of every charge. Tax forms an organization uploads stay until it removes them, and no longer than seven years. Messages in an organization's business inbox stay until the organization deletes them or leaves the app. Backups roll off within 30 days. If you want something removed sooner, email us and we will do it.
Notifications
Notifications are optional. You can turn categories on or off from the account menu in the app, and turn them off entirely in your phone's settings. Coaches choose which team events notify parents. Urgent announcements from a coach or league are always delivered.
Deleting your account
You can delete your account at any time from the account menu (Delete my account). This removes your profile links to every team, your notification tokens and preferences, your calendar keys, and your sign-in account. Team content entered by a coach, such as a roster or a practice plan, belongs to the team and stays with it until the coach or organization removes it. If you need something removed from a team's records, contact the coach or email us and we will help.
Community guidelines
Team chat and direct messages are for adults coordinating a youth team. Abusive, harassing, or objectionable content is not allowed. Every message has a Report option, and any person can be blocked from your account menu. Coaches are notified of reports immediately and can remove messages. Repeat offenders lose access. The full Terms & Community Guidelines apply to every account.
Security
All traffic is encrypted with HTTPS. Access to team data is checked on every request against your role on that team. Photos and files are stored with providers that encrypt data at rest.
Changes
If this policy changes in a way that matters, we will update the date above and note it in the app.
Contact
Questions or requests: admin@cheatcodecoaching.app