Privacy Policy

This Privacy Policy describes how ilsudoku.it (“we”, “the Service”) collects, uses, and protects information when you visit our website. We are committed to protecting your privacy and complying with the General Data Protection Regulation (GDPR) and applicable EU privacy laws.

Data Controller

The data controller for this website is the operator of ilsudoku.it. For any privacy request you can write to the address published in the Contact section of the About page.

To object to processing or to withdraw consent you do not need to write to us: you can do it directly from the Cookie settings link in the footer of every page on the site (see “Your Rights” below).

The Two Tiers of Processing

This site processes data in three distinct groups, on different legal bases. The distinction matters, so we state it explicitly.

1. Anonymous, cookie-free usage analytics — legitimate interest, Art. 6(1)(f) GDPR. PostHog, with memory-only storage and your IP address masked on events. It sets no cookies, creates no persistent identifier and needs no consent from you — but it is refusable: rejecting the “analytics” category in Cookie settings stops it.

2. Session recording — consent, Art. 6(1)(a) GDPR. Anonymous recording of your session is off until you explicitly accept it. You can withdraw consent at any time and recording stops. No recording or analytics data is ever stored on your device — the only thing written there is the record of your own choice (see the Cookie Policy).

3. Crash reporting and aggregate visit counts — legitimate interest, Art. 6(1)(f) GDPR. Two things the Cookie settings do not govern, for different reasons.

Sentry tells us when the site breaks. It serves a different purpose from the analytics above — keeping the service working and secure, rather than understanding how you play — and it observes that our code failed, not what you did. It stores nothing whatsoever on your device.

Fathom Analytics produces aggregate visit counts. It sets no cookies, keeps no identifier of any kind, and cannot distinguish one visitor from another or follow anyone between visits or across sites. There is no per-visitor state for a cookie setting to switch off — the only thing it produces is a number of visits and a count per event name.

You can still object to either; see “Your Rights” below.

Why legitimate interest for the analytics

The GDPR requires us to balance our interest against your rights. Our interest is understanding which parts of the site work and which do not (how many puzzles are completed, where people get stuck) — without which we could not maintain and improve a free service. The processing is anonymous, uses no cookies and no persistent identifiers, cannot build a profile or recognise you across visits, is not shared with advertisers and feeds no advertising of any kind. The impact on your privacy is therefore minimal, while you retain the right to object at any moment with a single click. On that basis we consider that our interest does not unduly override your rights.

Why crash reporting is treated separately

Crash reporting sits on the same legal basis but on a different footing, so we set it out plainly rather than folding it into the analytics toggle.

What it does: when the site throws an error, it sends us the error message, a stack trace and a build identifier. It does not record page views, clicks, navigation or anything else about how you use the site. It sends no referring page, no browser identification, no history of your actions and no IP address, and it writes nothing at all to your device.

Why we keep it running: we cannot fix a fault we cannot see, and a crash affects the person experiencing it most of all. Keeping a free service working and secure is a recognised legitimate interest, and the volume of this processing is governed by how often our code fails rather than by how much you browse. We therefore consider it a compelling ground under Art. 21(1) and do not stop it when someone declines analytics — declining analytics is an objection to being measured, which is a different thing from being told our software crashed.

You can still object to it specifically: write to the address in the Contact section of the About page and we will consider the objection on its merits.

Data We Collect

Data stored on your device (not collected by us)

Game progress, preferences (theme, language, input mode, layout) and daily-puzzle state are stored in your browser’s localStorage. This data never leaves your device and is not accessible to us.

Anonymous usage analytics

We collect anonymous usage data through PostHog, configured so that it sets no cookies and keeps no persistent identifier. This includes:

  • Page views and navigation paths
  • Game interactions (starting a game, completing a puzzle, using hints, using the solver, generating printable PDFs)
  • Device type, browser and screen size (no fingerprinting)

All analytics data is anonymous. We do not collect your name, email address or any personally identifiable information. Query strings and parameters in page addresses are stripped before sending: in particular, the personal message contained in a gift sudoku link is never transmitted.

About your IP address, precisely. We apply the $ip: 0.0.0.0 property to analytics events, so your IP address is not recorded alongside the data. The masking happens at the event level and not through our proxy: the proxy forwards the caller’s IP address in the X-Forwarded-For header. In addition, every visitor’s browser makes one configuration request to our analytics proxy when the site opens — including visitors who reject and visitors who have not yet chosen. That request sets no cookie and stores nothing, but — unlike our events — it is not masked: PostHog receives the real IP address for that single request.

Session recording (only with your consent)

If you accept the “analytics” category in Cookie settings, we anonymously record about half of visits (not half of users: the selection is re-rolled on every page load, because we keep no identifier).

  • What is recorded: clicks, pointer movement, scrolling and navigation within the game.
  • What is not recorded: all text fields are masked, so we never see what you type.
  • The gift sudoku pages are never recorded, in any circumstance and regardless of consent. The personal message is contained in the page address, which a recording would include — so those pages are excluded upfront.
  • How to withdraw: open Cookie settings from the footer and reject the “analytics” category. Recording stops immediately.

Recordings are processed and stored by PostHog in the European Union.

Error reporting

We use Sentry to be told when the site crashes or stops working. What is sent: the error message, the stack trace, the browser-provided error metadata, and a build release identifier.

What is not sent: the referring page (Referer), the browser type (User-Agent), a trail of your actions, or any personal data. We do not send or store your IP address. We should be precise, as with PostHog: Sentry’s service is contacted directly by your browser and not through our proxy, so at the connection layer it necessarily observes the source IP address — which we do not request, do not receive and do not store. Data is processed in Sentry’s European region.

Data we do NOT collect

  • No personal information (name, email, phone number)
  • No user accounts or passwords
  • No payment information
  • No location data beyond country level (derived from anonymous analytics)

Third-Party Services

  • PostHog (analytics and session recording) — data is processed in the EU region. PostHog Privacy Policy.
  • Fathom Analytics (aggregate counts) — a cookie-free analytics service with no persistent identifiers. It records overall counts of page views and events, with nothing traceable back to you. Fathom Privacy Policy.
  • Sentry (error monitoring) — European region. Sentry Privacy Policy.
  • Cloudflare (hosting and CDN) — provides website hosting, content delivery and standard security protections (DDoS mitigation). Cloudflare Privacy Policy.

International Data Transfers

Analytics data and session recordings are processed by PostHog in the European Union (EU region). Error reports are processed by Sentry in its European region. Website hosting and delivery are provided by Cloudflare, which may process requests at edge locations worldwide but does not store personal data on our behalf. We do not intentionally transfer personal data outside the EU/EEA.

Data Retention

  • localStorage data — persists on your device until you clear your browser data.
  • Analytics and session recordings — retained by PostHog according to the standard retention policy of the plan in use.
  • Error reports — retained by Sentry according to the standard retention policy of the plan in use.

Your Rights Under the GDPR

  • Object to processing (Art. 21) — for processing based on legitimate interest you have the right to object at any time.
    • Usage analytics and session recording (PostHog): open Cookie settings from the footer and reject the “analytics” category. Both stop immediately. No other step is needed and there is no need to contact us.
    • Crash reporting (Sentry) and aggregate counts (Fathom): write to the address in the Contact section of the About page. Neither is stopped by the analytics toggle, for the reasons set out above. We will consider any objection on its merits.
  • Withdraw consent — the same control, Cookie settings in the footer, withdraws consent for session recording. Withdrawal is immediate and leaves no analytics data to erase, since none is stored on your device; only the record of your choice remains, so that the choice keeps being honoured.
  • Erasure — you can delete all local data by clearing site data in your browser. Analytics data is anonymous and cannot be linked back to you, so it is not technically possible to locate and delete it on request.
  • Lodge a complaint — you may lodge a complaint with the competent data protection authority in your country. In Italy this is the Garante per la protezione dei dati personali.

Changes to This Policy

This Privacy Policy may be updated from time to time. Changes will be published on this page. We recommend reviewing this page periodically.