Guess the Reading
RoomsDailyWordsPricing
RoomsDailyWordsPricing

Privacy Policy

Last updated: October 23, 2026

Guess the Reading (“we”, “us”) is operated at guessthereading.app. This policy explains what data we collect, why we collect it, and what we do with it. We have tried to write it in plain English — no legal jargon padding.

Questions or requests? Email us at support@guessthereading.app.

What we collect and why

When you create an account, we store:

  • Email address — to identify your account, send transactional emails (welcome message, password reset, email change confirmation), and as the login credential.
  • Username — the name other players see in game rooms, on the leaderboard, and in chat. It is visible to all players in any room you join.
  • Avatar image (optional) — if you upload one, it is shown next to your username to other players in rooms you join and on the room browser. We crop it, shrink it to 256×256 pixels, and re-save it without any of the original file's metadata, so details such as where a photo was taken are never stored. Anyone with its web address can view it.
  • Password — stored as a bcrypt hash. We never store or have access to your plain-text password.
  • Display preferences — your choice of romaji or hiragana for answer display, and your kanji font. Stored so they persist across sessions.
  • Decks and bookmarks — the decks you create (name, description, visibility, and word list) and the public decks you bookmark. Decks you make public are visible to other users.
  • Account creation date — for internal housekeeping.
  • Billing status — whether you have an active paid subscription and its current period. We do not store card numbers, bank details, or any raw payment instrument data — all of that is held exclusively by Stripe (see Third-party processors below).

We also store short-lived verification tokens when you request a password reset or email change. For an email change, the token also holds the new address until you confirm it. Tokens stop working once used or once they expire (password reset: 1 hour; email change: 24 hours), but they are currently kept in our database until your account is deleted.

When you play, we store a record of each round: the room title and code, the host's username, the round settings, and when it started and ended; each player's username, score, and rank; and, for every word, whether you answered correctly, the answer you submitted, the points you earned, and how long you took. This is what powers your history and stats pages. Chat messages are not stored — they exist only in server memory while the room is open.

Our servers may process your IP address to enforce rate limits on login and registration — this is a standard security measure to prevent abuse. IP addresses are not stored in our database.

Cookies

We set exactly one cookie: a session cookie named token. It holds a signed JWT that keeps you logged in for up to 7 days. The cookie is httpOnly, which means it cannot be read by JavaScript — it exists solely to authenticate your requests to our server.

When you access a payment or billing page, Stripe's JavaScript library (Stripe.js) is loaded from Stripe's servers. Stripe may set its own cookies for fraud prevention and payment security purposes — these are functional, not advertising, cookies and are governed by Stripe's Privacy Policy.

We do not use advertising cookies or any advertising or social-media trackers. There is no Google Analytics, Meta Pixel, or anything similar on this site. Our product analytics (below) sets no cookie either.

For reliability, we use a third-party error-monitoring service (Sentry) that receives a diagnostic report when the application encounters a fault — see Third-party processors below. It is used solely to detect and fix problems, never for analytics, advertising, or tracking.

Product analytics

We use PostHog, a product-analytics service, hosted in the European Union (Frankfurt), to understand how the site is used: for example, how many visitors go on to create an account, whether new players finish their first round, and which pages lead to an upgrade. It tells us what to fix and what to build next.

What it receives:

  • The pages you visit and how you arrived: the referring site and campaign tags such as utm_source. Any other part of a web address is removed before it is sent, so password-reset and email-confirmation links never reach PostHog.
  • Your device type, browser, operating system, and screen size.
  • Your approximate country. PostHog works this out from your IP address, and is configured not to store the address itself.
  • A fixed list of actions: signing up, creating or joining a room, sharing an invite, starting, finishing, or leaving a round (with your rank, score, and accuracy for that round), starting, finishing, or sharing a daily challenge (with its level and how many words you got right), viewing an upgrade page, starting checkout, changes to your subscription, and which kind of email we sent you (never its content).
  • Once you sign in: your account's internal ID, your plan (free or Pro), and your reading display preference.

It never receives your email address, username, password, the answers you give, your chat messages, or anything you type into a field. Click tracking is off, and we do not record sessions or screens (no session replay).

PostHog runs in memory only. It sets no cookie and stores nothing in your browser, so a visitor who hasn't signed in is recognised only within a single browser tab. The one exception: if you opt out, that choice is saved in your browser's local storage so that it sticks.

We rely on our legitimate interest in understanding and improving the service (GDPR Art. 6(1)(f); LGPD Art. 7, IX). This data is used only for that purpose, never for advertising, and is not sold or shared with anyone else.

You can turn it off at any time. If you have an account, use Settings → Privacy. That also stops the events our server records for your account. If your browser sends a Global Privacy Control or Do Not Track signal, analytics is off automatically.

How we use your data

  • Authenticating you when you log in.
  • Displaying your username to other players in rooms you join.
  • Showing your game history and statistics.
  • Sending transactional emails: welcome message on sign-up, password reset links, and notifications when your email address changes.
  • Enforcing rate limits to protect the service from abuse.
  • Understanding how the site is used so we can improve it, through product analytics (see above).

We do not use your data for advertising, and we do not use it to make decisions about you. Nothing is used for any purpose beyond running and improving the service.

Third-party processors

We share data with the following processors only to the extent necessary to operate the service:

  • Supabase — hosts our PostgreSQL database. Your account data lives on Supabase infrastructure.
  • Resend — delivers transactional emails. Your email address is passed to Resend only when an email needs to be sent.
  • Render — hosts our backend API server. All requests pass through Render infrastructure.
  • Vercel — hosts the frontend application. Page requests are served from Vercel's edge network.
  • Cloudflare — stores and serves avatar images (Cloudflare R2). Viewing an avatar loads it from Cloudflare's network.
  • Stripe — processes payments and manages subscription billing. When you subscribe or update your payment method, your payment details are entered directly into Stripe's secure forms and stored on Stripe's infrastructure. We receive only a non-sensitive customer ID and subscription status. Stripe is PCI-DSS Level 1 certified.
  • Sentry (operated by Functional Software, Inc.) — error monitoring and performance diagnostics. When the application encounters a fault, a diagnostic report is sent to Sentry containing the error message and stack trace, basic technical context (browser, operating system, and the page or API route involved), and your account's internal user identifier. This helps us detect and fix problems. Your IP address may be processed in transit; we do not record session replays. Governed by Sentry's Privacy Policy.
  • PostHog (operated by PostHog, Inc.) — product analytics, hosted in the EU (Frankfurt). Receives the data described in Product analytics above, under a data processing agreement. Governed by PostHog's Privacy Policy.

We do not sell your data to any third party — ever.

Data retention

Your account data is kept for as long as your account exists. If you delete your account, we permanently remove your account, preferences, decks, bookmarks, subscription record, and verification tokens from our database, and your avatar image from storage.

When you replace or remove your avatar, or delete your account, the old image is deleted from storage immediately. Cached copies on Cloudflare's network expire within a day. Other players' browsers may keep a copy they already loaded, which we cannot reach.

Records of rounds you played are kept, because they are also part of the other players' history. When you delete your account, those records are unlinked from it, but your username as it was at the time remains in them, and your answers remain without any link to an account.

Analytics events are kept for up to 12 months, then deleted automatically. When you delete your account, we also ask PostHog to delete your analytics data. PostHog processes deletions in a weekly batch, so this completes within about a week.

Stripe retains billing records (invoices, payment history) independently for their own legal and compliance obligations. Deleting your Guess the Reading account cancels any active subscription but does not erase Stripe's records of past transactions.

Your privacy rights

Depending on where you are located, you may have rights under applicable data protection laws, including the Lei Geral de Proteção de Dados (LGPD) in Brazil and the General Data Protection Regulation (GDPR) in the European Union. These rights typically include:

  • Access — request a copy of the personal data we hold about you.
  • Correction — update your email address, username, or other account details via the Settings page.
  • Deletion — delete your account entirely from the Settings page. This removes your account data from our database immediately; see Data retention for what happens to records of rounds you played.
  • Objection — turn off product analytics at any time (see Product analytics above).

To exercise any of these rights or to ask questions about how your data is handled, contact us at support@guessthereading.app.

Children

This service is not intended for children under 13. If you are under 13, please do not create an account. If we become aware that we have collected data from a child under 13, we will delete it promptly.

Changes to this policy

If we make material changes, we will update the “Last updated” date at the top of this page. Continued use of the service after a change constitutes acceptance of the updated policy.

Guess the Reading
RoomsDailyWordsPrivacyTermsContact
© 2026 Guess the Reading