Skip to main content

For district technology and administration

Technology, Privacy and Safety

This page describes how Fantasy Government works, what it collects, what it does not collect, and which services it relies on. It is written for district technology and administrative review.

Fantasy Government LLC, Waukesha, Wisconsin. Last reviewed September 2026.

1. The short version

  • Students never create accounts. There is no student login of any kind.
  • No student name, email, or identifier exists anywhere in the system.
  • The classroom page sets no cookies and stores nothing on the device.
  • We never sell data and we run no advertising.
  • There is no data agreement to negotiate and nothing for a district to sign.

This is architecture, not policy. It is not a promise about how student data is handled. It is the absence of anywhere to put student data.

2. How a classroom works

  1. A teacher creates an account and sets up a class league.
  2. Fantasy Government generates an eight character class code for that league.
  3. Students open fantasygovernment.com/c/ followed by the code.
  4. They see a read only scoreboard. No sign in, no name, no email, no device registration.

The classroom view is public by design. Anyone holding a valid code can see that league's scoreboard, and it contains no personal information about anyone, so there is nothing to expose. An unknown or expired code shows an empty state rather than revealing whether the code exists.

A teacher can retire a code and issue a new one at any point in the semester, which is the only access control this view needs, because the code is the whole of it.

3. What we collect, and what we never collect

From students

Nothing. There is no student record, no student identifier, and no field anywhere in the database that describes a student. A student never types their name, never signs in, and is never asked for anything.

From a teacher

An email address, a display name, the name and street address of the school, and a timestamped record that the Terms of Service were accepted, including the version.

A teacher is never asked for a home address. The school address is collected for one reason, to seat that school's own Representative and two Senators on the Class Team, so the league starts with the members of Congress who actually represent that building. The school name and address are checked against the National Center for Education Statistics public and private school directories. A signup is never blocked by that check; it records whether the school matched, did not match, or whether the directory could not be reached.

Members of the public who use Fantasy Government outside a classroom do provide a home address, because the product matches them to their own congressional district. Those are adults signing up for themselves, and no student ever touches that path.

What we never do

  • We do not sell, rent, or trade personal information to anyone, for any purpose.
  • We show no advertising, and we never will on anything a student can see.
  • We build no advertising or behavioral profile of any student.
  • We do not use student information to target anything, because we have none.

4. Retention and deletion

There is no student data to retain, delete, or return, which removes the question that normally takes the longest in a district review.

Teacher and account holder data is kept while the account is open. A teacher can delete their own account at any time, and can email us to request deletion instead. Deletion requests are completed within thirty days, and we will confirm in writing when it is done.

Class codes carry an expiry date and can be revoked by the teacher at any time. A revoked code stops working immediately, and the link stops resolving for anyone holding it.

5. Third party services

Every outside service the platform uses, and whether a student device ever contacts it. The right hand column is the one that matters for a classroom, and every entry in it can be confirmed in your own browser's network tab.

ServiceRoleContacted from a classroom page
SupabaseDatabase and account sign in. Passwords are handled by Supabase Auth and never stored by us.No
VercelHosting, and standard web server request logsYes, it serves the page
UpstashRate limiting counters and background job statusNo
StripeSubscription billingNo
ResendEmail to account holdersNo
SentryError monitoringNo, switched off in code on these URLs
PostHogProduct analyticsNo, switched off in code on these URLs
LocationIQAddress autocomplete, on signup forms onlyNo
Google FontsTypeface delivery, Plus Jakarta SansYes

Why two of them are switched off

Sentry and PostHog are how we find bugs and understand how the product is used everywhere else on the site, and turning them off on classroom URLs does cost us something. We made that trade on purpose. The alternative is a student's browser opening a connection to two analytics companies, and no amount of diagnostic convenience is worth that.

It is a smaller loss than it sounds. Errors on classroom pages are still recorded in our server logs, so a broken classroom view is still visible to us and still gets fixed. What we give up is client side telemetry, which is precisely the part that would involve the student's device. If a classroom page misbehaves, a teacher telling us is faster than a crash report anyway.

Billing

Precisely rather than reassuringly: the Fall 2026 teacher pilot is free, and Teacher Mode is a paid product at general release. A teacher may therefore eventually have a billing relationship, handled by Stripe, as any subscription would be. What does not change is that billing belongs to the adult who holds the account. No payment path exists on the classroom view and a student is never asked for anything.

6. What you can check independently

Some of what this page claims you can check from outside. Some of it you cannot, and for those you are taking our word. Here is which is which.

ClaimHow you know
The classroom page sets no cookies and stores nothing on the deviceYou can confirm this in a browser
No analytics or error monitoring loads on a classroom pageYou can confirm this in a browser
The only third party contacted from a classroom page is Google FontsYou can confirm this in a browser
A classroom page never asks anyone to sign in or identify themselvesYou can confirm this in a browser
There is no student table or student identifier in the databaseOur word. Ask and we will walk you through how it is built.
The classroom page performs no database writesOur word, though a page with nothing to type into is consistent with it
What each service above receivesOur word, plus each vendor's own published documentation

How to check it, in about two minutes

Open a classroom link on a device that has not visited the rest of the site, then open your browser's developer tools.

  • Application, then Cookies and Local Storage. Both are empty.
  • Network. The only host besides ours is Google Fonts.
  • Console. No analytics library is present.

The four verifiable claims are the four that actually protect a student. If you find something that does not match what you see, tell us and we will correct it the same day.

7. How it is built

ApplicationSvelteKit and TypeScript, rendered on the server
HostingVercel, serverless functions, United States regions
DatabasePostgreSQL, hosted by Supabase in AWS US East
TransportHTTPS only, no mixed content
AuthenticationSupabase Auth. We do not implement our own password handling.
Class code spaceEight characters from a 31 character alphabet, roughly 853 billion combinations
Client requirementsA modern browser. No extension, no plugin, no install, no download.

The code alphabet excludes I, L, O, zero and one so a code can be read aloud without being mistyped. The size of the space matters for a different reason: a code cannot be found by guessing.

Scoring is deterministic. Every point traces to a stored event carrying a link to the public record it came from, so a disputed score is checked against the source rather than argued about.

8. Security, accessibility and AI

Security

  • All traffic is served over HTTPS.
  • Authentication runs through Supabase Auth. We never see or store a password.
  • Sign in, signup and password reset endpoints are rate limited.
  • Administrative pages require both a session and an administrator flag on the account.
  • Team names are filtered for profanity before they can be saved.

If something goes wrong

In the event of a security incident affecting account information, we notify affected account holders directly and promptly, describe what happened in plain language, and say what we are doing about it. Since no student information exists in the system, no student can be affected by a breach of it.

Accessibility

We build to the Web Content Accessibility Guidelines 2.1 at level AA as a target. The product has not yet been through a formal third party accessibility audit, and we would rather tell you that than imply a certification we do not hold. If your district requires a VPAT or has specific accessibility requirements, contact us and we will work through them with you.

Artificial intelligence

No student work and no student data is processed by any artificial intelligence system, because no student data exists. Scoring is deterministic arithmetic over the public congressional record, not a model, and no automated system makes decisions about students.

9. Where the data comes from, and how non-partisan is enforced

Every score traces to the public congressional record. Votes, bills, cosponsorships and committee assignments come from the Congress.gov API, Senate.gov roll call records, and GovInfo.gov. Campaign finance figures, where used, come from the Federal Election Commission. All of it is public record, and every scoring event links back to its source so a student can go read the original.

Points are earned for legislative activity and nothing else. A vote cast, a bill introduced, a bill cosponsored, committee work, work in the district. There are no points for party, for ideology, for what a member believes, or for which way a vote went.

Because scoring rewards activity rather than position, a competitive roster crosses both parties and both chambers as a matter of arithmetic. A student trying to win has to pay attention to members of Congress they may disagree with, which is most of the educational point.

10. Network requirements and contact

Classroom use requires only www.fantasygovernment.com and, for the typeface, fonts.googleapis.com and fonts.gstatic.com. There is nothing to install, no browser extension, no plugin, and no file to download. It runs in any modern browser, including a managed Chromebook.

If your filter blocks this site

The domain is new to filter databases and several classify it by default or from a stale rating rather than by its content. As of September 2026 we have requested classification as an education resource from Cisco Talos, Palo Alto Networks, Fortinet, Symantec, Trellix and Cloudflare. Those reviews take days to weeks.

If your district uses Lightspeed, Securly or GoGuardian, those vendors accept category changes only from the district that licenses them, so allowing the two domains above in your filter console is the fastest path and does not depend on us.

For the reviewer deciding: despite the name, this is not a gambling or wagering product. There is no betting, no real money play, no prizes, and no purchase of any kind available to a student. Points are scored from published congressional activity. The classroom route collects nothing and creates no accounts.

The binding documents are the Privacy Policy and the Terms of Service. This page describes how the product works; those two govern.

Fantasy Government LLC, Waukesha, Wisconsin.
Shawn, founder. shawn@fantasygovernment.com
If a district needs something this page does not answer, ask. You will get a direct answer from the person who wrote the code.