Cookie Policy

Last updated: 4 October 2026

This policy explains what Quizzja stores on your device, why, and how you control it. It covers cookies and the equivalent browser technologies — localStorage, IndexedDB, and the service worker cache — because the law treats them the same way: with narrow exceptions, nothing may be stored on or read from your device without your consent.

1. The Short Version

  • What we store falls into four groups: what the game needs to work, what is optional for your convenience, measurement, and advertising.
  • Measurement uses Google Analytics 4 only after a separate opt-in. Until then, the tag is not fetched and no measurement request reaches Google.
  • Advertising helps fund the free game on supported apps. Web advertising uses Google AdSense only after its own opt-in and Google's consent controls permit a request. Ads are requested as contextual/non-personalized; this does not mean they are free of cookies or personal-data processing. A Global Privacy Control signal keeps Web advertising off.
  • If you say no, or never answer, no optional storage, measurement, or Web advertising is enabled. Withdrawing stops the relevant service immediately and removes the first-party cookies under our control.
  • You can change your mind at any time under You → Privacy and data → Cookie settings.

2. Strictly Necessary — No Consent Required

These are exempt from the consent requirement because without them the service you asked for does not work.

Cookie

  • quizzja_refresh — keeps you signed in. It is HttpOnly, Secure and SameSite=Strict, it is sent only to the single sign-in refresh endpoint, and it expires with your session. It is a first-party cookie and is never used to profile you or to follow you to other sites. This is the only HTTP cookie Quizzja sets.

Stored in your browser (localStorage)

  • quizzja.consent.v1 — your separate optional-storage, measurement, and advertising answers, the notice version, and when you answered. This exists so we do not ask you again, and so we can show that you were asked.
  • quizzja.session.* — which account this browser is signed in as, and whether you signed out on purpose.
  • quizzja.uiLocale, quizzja.contentLang, quizzja.highContrast, quizzja.textScale — the interface language, crossword language, high-contrast setting, and text size you chose yourself.
  • quizzja.fills.*, quizzja.elapsed.*, quizzja.pendingFills.*, quizzja.progressInitialized.*, quizzja.progressCursor.* — the crossword you are solving right now: the letters you have typed, your timer, and the edits still waiting to reach the server. This is what lets you close the tab mid-puzzle and come back to it.
  • quizzja.device — a random identifier for this installation, sent with progress updates so the server can order edits made on your different devices. It is not linked to advertising, is never shared, and is not used to recognise you anywhere else.

Service worker cache

  • quizzja-shell-*, quizzja-assets-* — a bounded copy of the app's own code, icons and fonts, so it starts when you are offline. It holds no account data and no puzzle content. Safe public catalog/archive GETs may be retained briefly by the browser's private HTTP cache, but game, account and mutation requests are never stored in the service-worker cache.

3. Optional — Only With Your Consent

  • Play history on this device (quizzja.history.v1, quizzja.solvedDays.v1, quizzja.dailyIds.v1) — which puzzles you have opened and solved, how long you took, and which days you completed. This is what draws the solved marks, the week strip and your streak when you are playing as a guest.
  • Offline puzzle cache (IndexedDB database quizzja-player) — puzzle data kept on the device so a crossword you have opened before still opens without a connection, and so it loads faster.
  • Advertising frequency (quizzja.ads.frequency.<account>) — a counter for Web completion ads: distinct completed-puzzle identifiers and the count since the last such ad. The Web player has no completion ads in this release, so it does not store or read anything under this name, and it keeps no such counter in memory. If you decline optional storage or withdraw that consent, anything stored under this name is removed.

If you decline, the game works normally: you can still play, solve, sign in and sync — this device simply will not remember what it has played, and puzzles will not be available offline.

4. Measurement — Only With Your Consent

If measurement is configured and you accept it, we load Google Analytics 4 from Google and it can set the cookies below on this site. Until then no Analytics tag, measurement request, or cookieless measurement signal is sent. Advertising and sign-in have their own controls; declining measurement does not disable a Google service you separately choose to use.

  • _ga — a randomly generated number identifying this browser to Google Analytics, so a repeat visit is counted as one person rather than two. It expires 2 years after your last visit.
  • _ga_<property-id> — the state of your current visit: when it began and the events it has covered. It expires 2 years after your last visit.
  • _gid, _gat — a short-lived visit identifier and a rate limiter used by older versions of the tag. They expire after 24 hours and 1 minute respectively.

We configure the property so that Enhanced Measurement, Google Signals, advertising features and ad personalisation are switched off, and Google Analytics 4 does not log or store IP addresses. We send normalized screen names and a fixed list of actions such as puzzle opens, starts and completions, successful hint use and sharing, completed sign-in/sign-up, and store, checkout and purchase milestones. Their properties are categorical: platform/app version, interface/puzzle language, difficulty, grid-size range, entry point, and broad solve-time and hint-count ranges. We do not send puzzle or account identifiers, email, search text, titles, answers, clues, purchase identifiers, prices, errors or other free-form content. Switching measurement off stops the tag on the spot and deletes the cookies above.

5. Advertising — Only With Your Consent

If you accept Web advertising and a verified account check confirms that you do not have a current Premium, Remove Ads, or Lifetime Pro entitlement, Quizzja may load Google's Privacy & messaging consent service. It may ask you for additional choices about advertising purposes and vendors. The AdSense publisher tag is loaded only when both your Quizzja advertising choice and Google's consent controls permit it. Accepting play history or measurement alone never permits advertising.

When an advertising format is available, Quizzja requests contextual/non-personalized ads. A Web release explicitly enabled for advertising may show labelled in-feed cards on Today and in the crossword archive or catalogue, only alongside loaded puzzle content in supported advertising languages. The Web player has no rewarded-hint offer or completion ads in this release. Google may set or read advertising cookies after an ad request, impression, click, or related call to its servers. Non-personalized ads can still use storage and process personal data for delivery, frequency control, reporting, and fraud prevention.

Google's consent service may store your purpose and vendor choices in cookies or equivalent consent storage. These are managed by Google's consent service; names and lifetimes depend on its configuration. They record privacy choices and message state separately from Quizzja's consent record.

Google controls the exact set and duration of its advertising cookies, which can vary with browser, region, consent, and provider configuration. The first-party names the Web client recognizes and removes on withdrawal are:

  • __gads, __gpi, __eoi — identifiers and state used for ad delivery, frequency control, fraud prevention, and reporting.
  • _gcl_au — advertising conversion and campaign-performance state.

Google may also use third-party cookies associated with domains such as `doubleclick.net` or country-specific Google domains. Third-party vendors, including Google, use advertising cookies to serve ads; where publisher and user settings permit personalized advertising, those cookies may support ads based on earlier visits to this or other sites. Browser controls and Google's My Ad Center let you opt out of personalized Google advertising. Quizzja requests contextual/non-personalized ads, does not send Quizzja account or puzzle data in the ad request, and does not combine Google Analytics events with advertising.

6. How Long It Is Kept

The refresh cookie expires with the session it belongs to. Browser storage stays until you clear it, until you withdraw consent, or until you use Erase what this device remembers in the app. Erasing removes optional and measurement storage under our control, including the Web advertising-frequency counter, along with the saved crossword progress in section 2. Withdrawing advertising consent removes the recognized first-party advertising cookies from this origin and pauses requests; cookies on Google's domains remain under Google's and the browser's controls. The erase action deliberately leaves three things alone: you stay signed in, your consent answer stays recorded so you are not asked it again, and the settings you chose — interface language, crossword language, high contrast, text size — stay as you set them.

7. Changing or Withdrawing Consent

Open You → Privacy and data → Cookie settings in the Web app. Choose Essentials only to withdraw all optional choices, or change individual categories and select Save. Withdrawal takes effect when you confirm it: optional storage is deleted, measurement is disabled, and future advertising requests are paused according to the category you switch off. Requests already sent cannot be recalled, and an ad already handed to Google's presentation service may finish. Withdrawing does not affect processing that lawfully occurred before withdrawal.

When Google's consent service is available, Advertising privacy choices in Cookie settings reopens its purpose and vendor controls. The Quizzja advertising switch can always stop future ad requests even if Google's controls cannot load. A Global Privacy Control signal also keeps Web advertising off. Google-domain cookies and provider consent storage remain subject to Google's controls and your browser's site-data settings; Quizzja cannot erase cookies on another origin.

If we add a new optional purpose, we will ask again rather than assume your earlier answer covers it.

8. Our Apps

The Quizzja apps for Android, Windows, iOS and macOS are not web pages and set no browser cookies. They store the equivalent data — your session, your settings and your progress — in the operating system's app storage. Android also stores a device-specific Usage measurement answer, notice version and decision time. Firebase Analytics remains uninitialized until an explicit opt-in, then creates an app-instance identifier; switching measurement off stops collection and resets its local state.

The iOS, Google Play Android, and separately configured Samsung Android apps use Google Mobile Ads and UMP. Those SDKs may use app-private storage, device/network identifiers, IP-derived approximate location, and ad interaction or diagnostic data when Google's consent state allows an ad request. iOS and supported Android builds may show native sponsored cards, completion interstitials, and optional rewarded hints. Measurement consent remains independent from mobile advertising choices. These apps expose Google's Ad privacy choices entry point whenever UMP requires it. A current Premium or Lifetime Pro entitlement prevents all ad requests; Remove Ads prevents in-feed and interstitial requests while leaving an optional rewarded-hint choice available at zero verified hints. Native macOS, Windows, Linux, and Huawei Android do not display ads in this release.

9. Contact

Questions about this policy, or about anything on this page? Contact HELUSSIVE EOOD (UIC 202657819) at privacy@quizzja.com. See also our Privacy Policy, which explains what we do with personal data on our servers, and the rights you have over it.