The short version: Fakeout doesn't run ads or analytics, and doesn't set tracking cookies. You can play as a guest with nothing leaving your device. An account is optional, and when you make one we store only what it takes to make the account, your progress, ranked play and your match history work. Nothing here is legal boilerplate copied from another site; it describes what the code actually does today.
On your device: guest play and everything local
Playing Fakeout doesn't require an account. Your XP and level, unlocked cosmetics, key bindings and interface settings, local match history, drill times and any replays you save live in your browser's local storage on your own device, not on a server we run. If you sign in to an account, your progress is also copied to it (see below) so it follows you; the rest of that list stays on the device either way. The flip side is that, without an account, clearing your site data, or opening the game in a different browser or on another device, means that data doesn't come with you, and we can't restore it, because we never had a copy.
Accounts: what we store on a server
Creating an account is optional and never gates casual play. If you create one, sign-up and sign-in run through Supabase Auth, which stores your email address and a hashed password; we never see or store your password in plain text. We also keep a profile: your handle, colour, flair, title, and your ranked rating (with the badge, placement count and any ranked-queue lockout that go with it). We keep your progress so it follows you between devices: your XP and level, the achievements and medals you've earned, and the ball theme, effects, title and flair you have equipped. Only you can read it, and it's copied back to whichever device you sign in on. Matches you finish online while signed in are recorded against your profile, one row per match with the mode, whether you won, and your stats from it, and that server-side match history is what ranked ratings are built from. If you rate a map (like, it's okay, dislike), we store that one answer per map against your profile, with whether it followed an online or a bot match, so you can change it and so we can decide which maps stay in the online rotation; only you and the person who runs the game can see it. None of this is sold or shared, and none of it is used for advertising.
Who processes your data
Supabase is our database and sign-in provider, and acts as the processor for everything in the section above and for contact messages and shared replays below. The site itself (fakeout.gg) is hosted on Vercel, and the live game server (game.fakeout.gg) runs on Railway. Those hosts, like any host, handle the connections that reach them, and may keep ordinary operational request logs under their own policies. We don't send any of them anything beyond what this page describes, and we don't use any of it to track you.
The game server sees your connection
When you play online, your browser opens a WebSocket connection to the game server. It counts how many connections are open from each IP address, purely in memory and purely to stop one client from opening far more sockets than a real player needs; the count is discarded when the connection closes. The server also writes operational and error records (a failed match report, say) to its log so we can keep the game running; those aren't used to profile anyone.
Chat
In an online match you can use team chat and all-chat, plus quickchat macros. Messages are passed to the other people in that match through the game server and aren't saved to a database. Free text goes through an automatic content filter, on your device and again on the server, and a blocked message is dropped, not stored. Violations build up strikes that mute your free text (macros keep working). If you're signed in, your strikes and mute expiry are stored against your account so a mute follows you between matches; the text itself never is. A guest's strikes last as long as the match room does. If another player reports you, we store the report: both handles at the time, the reason, and which match. A person reads those. Nobody but the players in your match reads your chat.
Friends
If you add friends, we store the friendship (both account ids, when it was asked and when it was answered) and anyone you block (your id and theirs). Friends can see whether you are online and roughly where you are playing: in a casual match, in a private room, or in ranked. Nobody else can, and you can appear offline to everyone from your settings. Blocking is private: the player you block is told nothing. Party and room invites pass through the game server and are not stored. Deleting your account removes all of it.
Shared replays
If you choose to share a replay, we store that recording on our database (Supabase) and give you a link. Anyone with the link can open and watch it, and a replay includes the names shown in that match. Only share a replay if you're comfortable with that. If you want a shared link removed, email us the link.
Ranked play
Ranked is live and needs an account. Ratings are worked out by the game server when a match ends and written to your profile; the server also enforces leaver penalties, so leaving a ranked match for good can lock you out of the ranked queue for a while, and that lockout is stored on your profile.
The contact form
If you write to us through the contact page, we receive what you type: the category you picked, your message, the page you were on when you sent it, and your email address if you chose to give one. Signed in or not, it isn't attached to your account. We use it only to read your message and, if you left an email, reply to you.
No ads, no analytics, no tracking cookies
Fakeout doesn't run any advertising network, analytics script, or tracking pixel, and it doesn't set tracking cookies. There's nothing following you around the site or reporting your visit anywhere. (Signing in does keep a session in your browser, which is what keeps you signed in, and nothing more.)
Age
Fakeout isn't directed at children under 13. Accounts require you to be at least 13, or the age of digital consent where you live if that's higher. We don't knowingly collect personal information from anyone under 13, and if we learn that we have, we'll delete it. If you think a child has made an account, tell us and we'll remove it.
Deleting your account and data
You can delete your account yourself with Delete account on your profile page: it deletes your sign-in, profile, rating, progress and any replays you shared while signed in, and clears the copy of that progress in the browser you delete from. It keeps your match results only as anonymous rows with nothing linking them to you. One exception, so that deleting and re-registering can't be used as a reset: if a mute, a ranked lockout or a suspension is still in force when you delete, we keep a one-way hash of your email address with that penalty (and nothing else) until it would have run out, and a new account on the same address inherits it. If you can't sign in, or want anything you've sent us deleted too, email hello@fakeout.gg from the address on the account, and we'll handle it within 30 days. The same goes for a copy of your data or a correction to it. Data in your own browser is yours to clear at any time.
Changes
If we change what a server-side profile stores or how it's used, we'll update this page to describe it plainly rather than quietly editing the fine print, and the date above will move.
Questions
Reach us at hello@fakeout.gg, or see the contact page.