Security and your data
Last updated 6 September 2026
This page says, in plain words, where the information a club puts into Matchups is kept, how it is protected, who else touches it, and exactly what the AI features do and do not see. It is written for a club secretary, a school, and a parent whose child is on a team list. The privacy policy is the formal version; this is the one to read first.
Where it lives
- The database is in Sydney, Australia, on Supabase (Amazon Web Services, Sydney region). That is where every player, session, reply, note and trial application is stored. It does not move.
- The app runs in Sydney too, on Vercel, so the code that reads and writes the database runs in the same country.
- Backups are taken every night and kept for thirty days with a second provider (Vercel’s file storage), so a failure at one provider cannot take the club’s data with it.
How it is protected
- Encrypted at rest and in transit. The database is encrypted on disk (AES-256), and every connection to it and to the app is encrypted (TLS). Nothing is ever sent or stored in the clear.
- Locked down at the table. Row-level security is switched on for every table, so the database refuses any query that does not come from the app’s own connection; even the database provider’s public data interface returns nothing.
- Passwords are never stored. A coach’s password is kept only as a one-way hash; we cannot read it and neither can anyone who reads the database. Changing a password signs out every other device.
- Each club sees only its club. Every record carries the club it belongs to, and every screen and action checks it. A coach from one club cannot reach another club’s players even by guessing a link.
- Players never need an account. A player’s link carries a private, random code instead of a login; it shows that player’s own training only. Anyone who has the link can reply for that player, which is why players are told not to forward it.
- Coaches are named, not shared. Every coach has their own login and role. In Australia the app records each coach’s Working With Children Check number, state and expiry, and shows the club administrator who has a valid one.
- We keep what we need and no more. Trial headshots are deleted thirty days after the last trial day. A club that leaves has its data deleted ninety days later, backups included in the following backup cycle.
Who else touches it
Matchups does not sell or share personal information. A handful of providers touch data to do one job each. The list, with where each one is and what it holds:
| Provider | Job | Where | What it holds |
|---|---|---|---|
| Supabase | The database | Sydney, Australia | Everything the club enters, encrypted at rest. SOC 2 Type 2 and ISO 27001 certified. |
| Vercel | Runs the app; holds the nightly backups | Sydney (the app); United States company | Data passes through as pages are served; backups are kept for thirty days. |
| Twilio | Sends the texts | United States company, Australian numbers | A mobile number and the message, for as long as it takes to deliver and log it. |
| Resend | Sends the emails | United States company | An email address and the message. |
| Open-Meteo | Weather and place search | Europe | A venue’s coordinates or a place name a coach typed. Never a person’s details. |
| Anthropic | The AI features, when a club has them on | United States | Coded cricket text only (below). Not used to train models; deleted within thirty days. |
| Stripe | Card payments for coaching bookings, when a coach takes cards | United States company, Australian entity for Australian coaches | The card details, entered on Stripe’s own page; they never touch Matchups. Stripe also sees the payer’s email, the amount and what the session was. The coach’s identity and bank details for payouts go to Stripe, not to us. |
What the AI sees, and what it never sees
The AI features read a coach’s typed sentence, answer a coach’s question about the club’s data, and summarise what selectors and coaches have written. The plan builder itself is not AI: it is a fixed set of cricket rules that run on our own servers, and it works the same with the AI switched off.
- Never sent: names, dates of birth, exact ages, mobile numbers, email addresses, home suburbs, injury notes, photos, passwords, trial application answers.
- Sent as codes: every player, coach and selector becomes “P7” or “C2” for the call, and a trialist is their trialist number. The app puts the names back into the answer before a coach reads it.
- Sent as cricket: teams, roles, ratings, an age band such as “junior, 13 to 14”, scores out of 5, attendance and bowling counts, venue and session names, the words a coach typed into the box, and the comments coaches and selectors wrote, which the app asks them to keep to cricket.
- Off means off. A club administrator can turn the AI features off in Settings; every feature then falls back to the app’s own built-in reading and nothing about the club leaves our systems.
For schools and parents
A player’s details go into Matchups because their club entered them to run training. The club is the one you talk to about them: a coach can show you the record, correct it, or remove the player. A junior’s date of birth is used for one thing, the bowling limits for their age, and a junior is only ever contacted through the same training text every player receives, to the number the club holds for them (a parent’s number, for most juniors). Coaching notes are seen by the club’s coaches only. Nothing about a player is ever public, and nothing is ever sent to a player from an AI: every text is written by the app’s own templates and pressed by a person.
If something goes wrong
If a security problem ever affected personal information, we would tell the clubs concerned promptly and the regulator as the law requires, and say what happened and what we did. Security questions, or a request for a data processing agreement, go to hello@matchups.training.