How we handle your data
Nothing dramatic, just where things actually live, and how they're kept safe. You don't need to understand a word of it to use the app, it's all handled for you. It's written down here in case anyone at your club ever asks.
| Where the app runs | Google Cloud, hosted in the EU (Belgium). |
| Where your data's stored | Your club's own dedicated PostgreSQL database, hosted in the UK (London). |
| One club, one database | Clubs aren't kept apart by a setting or a filter that could be got wrong, each club is given its own separate database when it signs up. There is no shared table with every club's data sitting in it. |
| In transit | Always encrypted over HTTPS, and your sign-in is refused outright over an unencrypted connection. |
| At rest | Encrypted on disk by our hosting providers, and your backups are encrypted by us as well, before they ever leave. |
| Passwords | Captain logins run through a managed authentication service. Passwords are only ever stored salted and hashed with scrypt, never as plain text, not even for us to see. |
| Staying signed in | Your session is cryptographically signed, so it can't be edited to impersonate somebody else, and it's kept out of reach of scripts running in the browser. |
| Removing someone | Access is re-checked on every single request, so deactivating a captain takes effect immediately, not whenever their session happens to run out. |
| Guessing at passwords | Repeated failed logins from the same place are throttled automatically. |
| The links you share | Availability and team plan links carry a random token far too long to guess, and you can replace them whenever you like, which retires the old ones instantly. |
| Keys & credentials | Held in Google Secret Manager and used only on the server. Nothing sensitive is ever sent to the browser. |
| System monitoring | The app is monitored around the clock, if something goes wrong, we know before you do. |
| Rolling backups | Your club's database is backed up daily, encrypted with GPG AES-256 before it goes anywhere, stored in the EU and kept for 60 days. The storage provider holds nothing but the encrypted file, it cannot read what's in it. |
| If there was a data breach | We'd notify the Information Commissioner's Office within 72 hours where the law requires it, and tell affected people directly where the risk to them is high. |
| Deleting your data | Ask and it's genuinely deleted, not just hidden from view. Past league results are anonymised rather than removed, so the league table stays correct for everyone else. |
For what's collected, why, and your rights over it, see the Privacy Policy. Any other questions, email [email protected].