Privacy

Privacy

KJ's Games is a small browser games site by Kurtis Justin. You can browse and play without creating an account.

Overview

KJ's Games is a lightweight browser games site. Games run in your browser. KJ's Counter records a limited set of page, navigation and gameplay events so the site owner can understand which pages and games are used.

What the site does not currently use

KJ's Games does not currently provide user accounts, process payments, show adverts, host comments, send newsletters, run leaderboards, or provide cloud saves.

Browser-based gameplay

Games run in your browser. Playable game code is loaded only after you press Play, so game pages can be viewed before the game itself is requested. Playing does not currently require an account.

Local browser storage

Stillwater Array automatically saves your station progress in this browser using local storage when it is available. The save stays on this device and browser; there are no accounts or cloud saves. Staging uses its own hostname, so its saves are separate from the main site.

Other current games hold progress and settings in page memory. Counter creates no cookies or browser storage and does not read saved game state or browser storage. Game saves are never included in analytics events.

Older browser data may remain until you clear it through your browser settings. Clearing site data can also remove any previously saved settings or game data.

Analytics

KJ's Counter is the site's only analytics integration. It runs without the former analytics banner or stored choice; Google Tag Manager and Google Analytics are no longer loaded by the site.

Counter receives fixed page names and sections, and fixed source, destination and area labels for selected navigation links. It does not receive full page or link URLs, query strings, fragments, titles, link text or referrers.

When a link takes you between KJ's Games and kurtisjustin.co.uk, Counter can count that arrival using a fixed site label in the link. The label is removed from the address bar after the page loads. Only the site label is recorded; no referring page, full URL or other query value is sent. This uses no analytics cookies, browser storage or visitor identifiers, and does not link your activity across the sites.

Supported gameplay events count starts, restarts, completions, actual hints and applied undo operations. Properties include the game name, supported mode and difficulty, a broad win/loss result, and available numeric duration, moves and hints used.

Counter also records a two-letter country code from Cloudflare's trusted request metadata, or Unknown when it is unavailable. This describes the country associated with an event, not a person's identity or precise location. IP addresses are not stored in Counter analytics, and older events are not assigned countries retrospectively.

Counter does not use visitor IDs, sessions, fingerprints or stored identifiers, and it does not connect events to a person or count unique visitors.

Raw Counter events become eligible for aggregation and deletion after 30 days. A daily scheduled compaction job turns eligible events into daily statistics and removes raw data only after it is safely processed. Failures or backlogs can delay deletion; backups and exports require separate retention management. Daily aggregate statistics may be retained longer.

What is not intentionally sent

The site does not send names, email addresses, usernames, account IDs, IP addresses, user-agent strings, precise location, hidden answers, raw game state, seeds, puzzle IDs, error messages or stack traces as Counter event data.

Hosting logs

The hosting and network providers may process technical information needed to serve pages, files and requests. This is separate from the limited event properties stored by Counter.

Cloudflare may also set the __cf_bm hosting-security cookie for bot detection. It expires after 30 minutes of continuous inactivity, according to Cloudflare. Counter does not read or collect it.

Third-party services

The public site uses hosting services to deliver pages and static files. Counter processes its limited event data using a Cloudflare Worker, DigitalOcean Functions and Turso.

The contact form also uses Cloudflare Turnstile for spam protection and Resend for email delivery. These services process contact submissions separately from Counter statistics.

Your choices

There is no analytics consent banner in this version. Counter does not read the former saved analytics choice. You can clear older cookies and local site data through your browser settings; doing so may also remove saved settings or game data.

Contact messages

When you choose to send the contact form, your name, email address, optional subject and message are sent to a separate DigitalOcean Function. Resend delivers the message to [email protected], and your email is used as the reply address.

Cloudflare Turnstile loads only after you interact with the form. It processes technical information for a security check; the short-lived token is verified by the contact Function. The Function does not add your IP address, page URL, referrer or browser user-agent to the verification request or email, and does not log message contents.

Contact details and messages are not Counter analytics data. They are not sent to Counter or included in its raw-event retention and aggregation. Contact messages remain in the receiving mailbox and delivery provider under their own retention arrangements, and are used to respond to your enquiry.

Please avoid sending passwords, payment details or other sensitive information. You may also email [email protected] with questions about privacy or your message.

Future changes

This page may be updated if features such as accounts, cloud saves, payments, newsletters, leaderboards, adverts, or broader analytics are added later.

Last updated

9 October 2026.