How we look after your information
In force from 19 October 2026.
Prepared by Duothink Ltd following the ICO’s guidance (the UK data protection regulator) and Ofcom’s online safety guidance — not written by a solicitor. Last reviewed 19 October 2026. Questions: hugh.mackenzie247@gmail.com.
The short version
- No accounts. No emails, no passwords, no ages. You type a room code and a name, that’s it.
- Cameras start off. A player has to tap to turn theirs on, and can switch to a cartoon at any time.
- We never record anything. No video, no voice, no photos are ever stored by us, and we use no recording feature at the company that relays the video.
- Filters are drawn on the player’s own phone before the video leaves it. Our game server never sees a face.
- An adult lets every player in.
- Rooms disappear five minutes after everyone leaves, and after four hours at most. Everything about the players in them goes too.
- We count totals, not people — like “words found this week”. Nothing in them can identify anyone.
- No adverts, no tracking cookies, no analytics companies. We don’t sell or share anyone’s information.
1. Who we are
Grid Gang is made by Duothink Ltd, a company registered in Scotland, company number SC886148, registered office Cullyblean Steading, Tullynessle, Alford, Aberdeenshire, AB33 8QR. We are registered with the Information Commissioner’s Office (ICO) as a data controller, registration number ZC148263 (see the ICO register).
For family games we are the controller of the information described here. For classroom games, see Schools.
Contact: hugh.mackenzie247@gmail.com. We aim to reply within a week, and always within one month.
2. What we process, and for how long
A Grid Gang game happens in a room — a short-lived space on our game server with a 4-letter code. A room holds only what the game needs while it is being played, and is deleted five minutes after everyone has left, or four hours after it was made, whichever comes first.
| What | Where it goes | How long |
|---|---|---|
| Room code and the room’s settings (the hidden phrase, timer, word levels, a teacher’s class list or word list) | Our game server, inside that room. | Until the room closes. |
| Chosen display name (12 characters at most) | Our game server, inside that room. Checked by a name filter, then let in, renamed or refused by the host before anyone else sees it. | Until the room closes. |
| Game data — score, coins, words found, word level, chosen cartoon character, and “who wears what” (the silly filters on each player) | Our game server, inside that room. | Until the room closes. |
| Live video — only if the player taps to turn their camera on | The player’s phone draws the filters first, then sends a small picture live through Cloudflare Realtime to the TV and to players in other houses. It never passes through our game server. | Never recorded or stored. It exists only while it travels. |
| Live voice — only if a microphone is tapped on | Sent live through Cloudflare Realtime. In the room, only one microphone is used — the “room mic”, normally the host’s phone — so when the host turns it on it carries the voices of everyone in the room to players in other houses. Voice is off by default in classrooms; the host can mute everyone. | Never recorded or stored. |
| Face swap (family games only, both players must agree) | Today a face swap shows a label on the TV for 60 seconds (“Tilly and Dad swapped faces!”); no picture is exchanged. If we make it swap real pictures, the picture will go phone-to-phone through Cloudflare’s relay — not through our game server — and we’ll update this policy before that happens. | The label goes after 60 seconds. Nothing is saved. |
| Teacher’s end-of-session summary (words each pupil found) | Shown only on the teacher’s screen; the teacher can save it. | We don’t keep it. A copy the teacher saves is the school’s. |
| Your device’s internet (IP) address | Any website needs it to reply to you. Our server uses it for a few minutes to stop anyone guessing room codes or making rooms by the thousand. Cloudflare also sees it (see section 5). | Our guessing counters: memory only, gone within minutes. Cloudflare’s technical logs: deleted automatically after 7 days at most (see section 5). |
| Anonymous totals — e.g. rooms made, players joined, rounds played, words found, filters given, minutes of video | Our server. They feed a weekly email to us and a daily automated check that the game is healthy. | Kept as running totals (all time, by week and by month) to run and pay for the service. They hold no names, room codes, IP addresses or faces. |
| Error reports — when a page crashes, the page’s name and the error message | Our server, after removing anything that looks like a code, a name or a web address. Add ?diag=0 to the address to switch it off. |
The last 50 only; older ones drop off. |
| “Report a wrong meaning” — the word only | Our server, as one anonymous line (“meaning-report | BAT”), so we can fix the meaning. | A count per word, and the line itself among the last 300 lines of our test results list. |
| “Report a problem” (host only) — the kind of problem and an optional short note (200 characters at most) | Our server. No room code, no names, nothing about who sent it; the note is cleaned of codes, names and links. | The last 50 notes only; each new note pushes the oldest out. A count per kind of problem. |
| Camera test reports (temporary, while we test cameras before launch) — phone model and system version, frame rate, upload speed, connection state, error messages | Our server — only from our own test phones (opened with ?diag=1 in the address) that turned a
camera on. An ordinary player’s phone sends none. No names, room codes, pictures or IP addresses. |
The last 300 lines only. This stops before launch. |
We never ask for or collect: real names (unless a teacher puts first names on a class list), email addresses, ages or dates of birth, locations, contacts, photos or payment details.
How video connections are set up. To start video or voice, the browser asks our server
(/api/rtc) to pass a connection request to Cloudflare, so our Cloudflare key never has to be in the
web page. That request holds technical connection details only (network addresses and the video formats the
device can use) — never video or sound. We don’t log these requests.
3. Face tracking is not face recognition
To put a moustache in the right place, the player’s own phone works out where their eyes, nose and mouth are in each video frame, using Google’s free MediaPipe software running inside the browser on the phone. We serve that software from our own website, so using it sends nothing to Google, and we block its built-in usage reporting. The phone may also spot a rude hand sign and swap that player to their cartoon for a few seconds.
The measurements are used for that frame and thrown away. They are never used to work out who someone is, never compared with anyone else’s face, and never sent to us or anyone else — only the finished, filtered picture leaves the phone. We do not process biometric data. In UK law, biometric data is information about a person’s body that is processed to identify them, or confirm who they are. Our code only finds where a face is, on the player’s own phone, to draw a filter; it never works out whose face it is, and the measurements never reach us.
The cartoon that copies your expressions works the same way: the phone reads smiles and open mouths, and only the cartoon is sent.
4. Why we’re allowed to use this information (lawful basis)
UK data protection law says we need a reason (a “lawful basis”) for using personal information. For everything in section 2 we rely on legitimate interests: running the game people have chosen to join, and keeping it safe. That covers the names, scores and filters held in a room; the live video and voice players choose to turn on; the name filter, the room-code guessing protection and the host’s let-in and remove controls; and the anonymous totals and problem reports that tell us whether the game is working.
Using legitimate interests means we must weigh our interests against yours — and, because children play, the ICO says children’s interests need extra protection. We wrote that balancing test down (a “Legitimate Interests Assessment”). In short: we only use what the game needs, keep it no longer than the room lasts, record nothing, start cameras and microphones off, and an adult lets every player in. We decided these protections make the use fair for children and adults alike. You can ask us for a copy.
We don’t rely on consent, so nobody — child or adult — is asked to tick a box or “agree” to anything, and the special rule about getting a parent’s consent for children under 13 (which applies only when a service relies on consent) does not apply. You can still object at any time (section 10); in practice the easiest way is to play as a cartoon, or to leave the room, which deletes everything about you in it.
The anonymous totals (for example “words found this week”) are counted without any name, code or address, so they cannot identify anyone once counted.
5. Who helps us: Cloudflare
We use one company to run Grid Gang: Cloudflare, Inc. (USA, with UK and EU offices). Cloudflare is our processor: it acts only on our instructions, under its Data Processing Addendum (version 6.4, April 2026), which is part of Cloudflare’s Self-Serve Subscription Agreement that our account is held under.
| Cloudflare service | What it does for us | Where |
|---|---|---|
| Workers | Serves these web pages and runs the game server. | Cloudflare’s worldwide network — the data centre nearest each player (for UK players, normally in the UK). |
| Durable Objects | Holds each room while it is open (a working copy so a sleeping room can wake up, wiped when the room closes), plus the anonymous totals. | One data centre, chosen by Cloudflare near where the room was first made (for UK players, normally in the UK or Western Europe). We don’t currently pin rooms to a region. |
| Realtime (video relay) | Relays live video and voice between players as they happen. We don’t use any Cloudflare feature that records or stores them. | Each device connects to its nearest Cloudflare location. |
| Workers Logs | Technical logs that help us find faults. Cloudflare automatically logs each request to our server: the time, the web address asked for (which can include a room code) and technical details Cloudflare adds. Our own code logs nothing about players. | Cloudflare-hosted. Deleted automatically after 7 days at most. |
| Sends us (Duothink) a weekly email of the anonymous totals. | Contains no personal information. |
Transfers abroad. Cloudflare is a US company and its network is worldwide, so information may pass through other countries on its way, and Cloudflare’s Data Processing Addendum says it may process data outside the UK and EU. Where information leaves the UK, it is protected by the safeguards in that addendum: the EU Standard Contractual Clauses with the UK’s International Data Transfer Addendum, and, for the USA, Cloudflare’s certification under the UK Extension to the EU–US Data Privacy Framework. Cloudflare lists its own sub-processors at cloudflare.com/gdpr/subprocessors.
We don’t use Google Analytics, Facebook, Snap or any advertising company, and we don’t sell, rent or share anyone’s information.
6. Cookies and browser storage
Grid Gang sets no cookies and uses nothing for tracking or advertising. It does save a few small notes in your own browser (“local storage”) so the game works the way you’d expect — for example, so a phone that goes to sleep gets its seat back. They stay on your device; you can delete them at any time by clearing this website’s data in your browser’s settings. Each one is needed for something you asked the game to do — keep your seat, remember your settings — so, under the UK’s cookie rules (PECR) as the ICO explains them, no consent banner is needed. None is used for tracking, advertising or analytics.
| Name in your browser | What it remembers | How long |
|---|---|---|
gridlock.lastJoin |
The name and cartoon you last played with, so you don’t have to make them again. | Until you clear it. |
gridlock.join.…, gridlock.seat.… |
Your seat in a room (a random token), so a phone that sleeps or reloads rejoins with its coins. | The seat works for 10 minutes after you were last connected. |
gridlock.hostCode.…, gridlock.hostCodeShown.… |
The host’s one-time code, so the host can take back control after a reload. | Until you clear it. Useless once the room has closed. |
gridlock.classList |
A teacher’s class list (first names), kept in the teacher’s own browser for next lesson. | Until the teacher clears it. |
gridlock.wordList |
A teacher’s or parent’s word list (this week’s spellings), kept in that browser for next time. | Until they clear it. |
gridlock.journeys, gridlock.journey.… |
Maze journey progress (numbers only, no names), so the host can carry on next time. | The last 5 journeys. |
gridlock.prefs, gridlock.sound |
Your settings: big tiles, easy-read font, read-aloud, volume, music on/off. | Until you clear it. |
gridlock.tips.…, gridlock.rotate.… |
Which game tips you’ve already seen, and which way up you turned the grid. | Until you clear it. |
gridlock.tv.code, gridlock.tv.started, gridlock.tvRoute |
On the TV screen and “Show on TV”: the last code typed, and how this device is showing the game. (Session storage.) | Until the browser tab is closed. |
7. Children
Grid Gang is made to be played by children with an adult running the game. We don’t ask anyone’s age; instead we treat every player as if they might be a child. We follow the ICO’s Children’s Code (the Age Appropriate Design Code):
- High privacy by default — cameras off, microphones off, and in classrooms voice off and face swap off.
- No profiling, no location, no adverts, nothing designed to keep children playing longer.
- Share prompts appear only on the host’s (the adult’s) screen. We never nudge children to post.
- A child can switch to a cartoon at any time, without saying why.
Because we don’t check ages, we give everyone — adults included — the protections the Children’s Code asks for children. Our plain-words explanation for parents is the safety page.
8. Players in another house
A player who isn’t in the room (for example a grandparent) joins with the room code or a link, waits in the same waiting room, and is let in by the host. Their screen shows the players’ faces or cartoons, like the TV does, and they can talk to the room once they tap their microphone on. Their video and voice are handled exactly like everyone else’s: relayed live, never recorded. If the host removes them, their name and score are deleted from the room straight away.
9. Schools
In classroom games the school decides to use Grid Gang with its pupils and runs the game through its teacher. The school is the controller of its pupils’ information in the game (the class list it enters and any summary it saves), and we act as the school’s processor for classroom rooms, using that information only to run the game. We stay the controller of the anonymous totals and our own safety protections. We will sign a data processing agreement on request, and help with your data protection impact assessment (DPIA).
Classroom defaults: pupils are cartoons, not cameras (the teacher can allow cameras, and each pupil still chooses); voice off; face swap off and can’t be switched on; pupils tap their name from the teacher’s class list, which is kept in the teacher’s browser and held by us only while the room is open; the end-of-session summary is shown only to the teacher and never kept by us. More: Grid Gang in the classroom.
10. Your rights
Under UK data protection law you (or your parent or carer) can ask to see the information we hold about you, have it corrected or deleted, restrict or object to how we use it, and get a copy. In practice we hold almost nothing: once a room closes everything about its players is gone, and we can’t look up a past player because we never knew who they were. During a game, the host can remove you, which deletes your name and score from the room at once. Children can ask for themselves, and we’ll explain things in a way they understand.
If you’re unhappy with how we’ve handled your information, please tell us first. You can also complain to the Information Commissioner’s Office (ICO): ico.org.uk/make-a-complaint, 0303 123 1113.
11. Reporting a problem
The host can use Report a problem in the game, or email us at hugh.mackenzie247@gmail.com. We aim to reply to every email within 7 days. A report never contains video, pictures or voice — we don’t have any. If something suggests a child may be at risk we’ll point you to the police or CEOP; because we keep no recordings we usually can’t provide evidence ourselves. More on the safety page.
12. Security
Everything travels encrypted: the web pages and game connection over HTTPS, and live video and voice with the encryption built into every browser’s video calls. Our Cloudflare key stays on our server, never in the web page. Room codes can’t be found by trying them in order. And because we keep no video, and no names or scores after a room closes, there is very little that could ever leak.
13. Changes and contact
If we change this policy we’ll update the date at the top, and for anything important we’ll put a notice on the home page. Questions: hugh.mackenzie247@gmail.com.