Privacy — how your information is handled
This describes the app as it's actually built, not a generic template.
What's collected
- Your name and email — used to identify you within your leagues and to send you the emails described below.
- A PIN — used to log in. Your actual PIN is never stored. Only a one-way cryptographic hash of it (bcrypt) is kept, which can't be reversed back into the original PIN even by us.
- League and game data — the leagues you're in, your picks, results, and survival status. League members can see each other's picks and results — that's how the game works, not something that can be turned off for one player.
- Payment details, only if a league admin chooses to add them (e.g. bank details or a payment link for collecting entry fees). This is optional and set entirely at the admin's discretion.
How it's protected
- Real authentication. Logging in verifies your PIN against its hash on the server and issues a genuine, cryptographically verified session (via Firebase Authentication). Every action that touches your data or anyone else's is checked against that verified session — not just trusted because a request claims to be you.
- Locked-down data access. The database itself denies read or write access to anyone without a valid session, and most actions are restricted further still: creating or joining a league, and every admin action, are only possible through server-side code that checks who's actually allowed to do what.
- Encrypted payment details. If a league admin adds payment details, they're encrypted (AES-256) before they're ever stored, and only decrypted for genuine members of that specific league. Even someone with direct access to the underlying database would see unreadable ciphertext, not bank details.
Who can see what
- Other members of a league you're in can see your name, your picks, and your results — this is inherent to a shared competition.
- Payment details (if added) are visible only to members of that specific league, not to anyone else using the app.
- The league admin can see who's paid, who's in the league, and can manage players within leagues they run.
Who else handles this data
A small number of service providers process data on our behalf, strictly to run the app:
- Firebase (Google) — hosts the database and handles authentication.
- Vercel — hosts the app itself and its server-side code.
- Resend — sends transactional emails (PIN resets, gameweek results, season updates). No marketing email is sent.
- football-data.org — supplies public fixture and results data. No personal information is ever sent to them.
None of these providers are permitted to use your data for their own purposes — they process it only to provide the service to us.
What isn't collected
No advertising trackers, no analytics beyond what's needed to run the app, no selling or sharing of data with third parties for marketing. Payment details, if provided, are for sharing bank/payment information between league members — no actual payment processing happens inside the app.
Removing your data
If you'd like your account or data removed, contact the person running your league, or reach out directly using the details below.
A note on this notice
This describes, plainly and accurately, how this specific app currently works — it isn't a substitute for formal legal advice, particularly if this grows beyond a small private group or starts handling real money at any scale.
← Back to Last Man Standing