Mineral Line

Privacy policy

Updated 29 September 2026

Mineral Line works without an account. There are no ads and no tracking, and we don’t sell or share your personal information. The app sends anonymous usage data and crash reports, which you can turn off. This policy explains what the app keeps on your device, what it sends and why.

The short version

Who we are

Mineral Line is published by Dakotah Cote (“we”, “us”), who is responsible for the personal information described here. Contact: privacy@mineralline.app.

On your device

The app saves these on your device:

Your device’s own backups (iCloud Backup, Android backup) can include these files. You can delete lists and games one at a time, or everything in Settings → Backup & sync → Erase all data on this device.

iCloud and Google Drive sync

If sync is on, your lists, game history and settings are copied to a hidden app folder in your iCloud account (iPhone and iPad) or your Google Drive (Android), so they reach your other devices. Apple or Google keeps that copy under their terms, and we can’t access it.

On Android, connecting Google Drive shows your Google account’s email address in Settings. It stays on your device.

You can turn sync off, disconnect, or delete the cloud copy in Settings → Backup & sync.

Linked games, table displays and watching

When you start or join a linked game, the app sends our server your player name, faction, the army list you chose (its name, units and cards) and each change to the game. A table display you add can have a name too.

Anyone with the game code or the watch link can follow the game in the app or a web browser: both players’ names, lists, score and game log. Share codes with the people you want to watch, and use a name you’re happy for them to see.

Store nights you share

If you run a store night and choose to share it, the app sends our server the event: its name, the players’ names and factions, the pairings, results and the army list names entered with them. Anyone with the event code or link can see it in a web browser, and the page asks search engines not to list it. Enter players by a name they’re happy to have shown.

A shared event is deleted from the server 3 days after its last change, or straight away when you stop sharing it.

Recap links

A recap link carries a finished game’s summary in the link itself: both players’ names and factions, list names, units, the score round by round, and the mission. We don’t store recaps, so we can’t delete one: anyone with the link can open it, and apps that preview links may keep a copy. Recap and watch pages ask search engines not to list them.

Rules questions (Ask)

When you ask a question, the app sends our server the question, the rules version, whether you’re on iOS or Android, and the app’s random ID. The server finds the relevant rules and sends them with your question to an AI model that writes the answer: Cloudflare Workers AI, or Groq when Workers AI can’t answer. They don’t receive the ID or your IP address from us.

Answers are saved so that the same question is answered faster next time, and a saved answer can repeat what the question said. Please don’t put personal information in questions.

To keep the service fair, the server counts questions per app ID and per IP address. Per-minute counts are held briefly by Cloudflare; daily counts are stored as hashed values and deleted after 2 days.

On iPhones and iPads with Apple Intelligence, the app can also answer on the device, and then nothing is sent to us. Voice questions use Apple’s speech recognition, which works on the device when it can and otherwise sends the audio to Apple under Apple’s privacy policy.

Feedback and bug reports

When you send feedback from Settings → Feedback & bugs, the app sends our server your message, whether it’s a bug, a feature request or feedback, the email address if you give one, whether you’re on iOS or Android, and the app’s random ID.

If “Include device info” is on (it is unless you turn it off), the app also sends the app’s version and build number, its update channel and update ID, your device’s operating system and version, its model, and whether it’s a phone or a tablet. The screen shows exactly what will be sent.

Our server files the message, the email address and the device info as an issue in our private project on GitHub (GitHub, Inc., in the United States), where only we can see it. It doesn’t send GitHub the random ID or your IP address. We keep a report while we need it to fix the problem or answer you; write to us to have one deleted. Please don’t put other personal information in it.

To keep the service fair, the server counts reports per app ID and per IP address, the same way as rules questions.

If you choose to send it by email instead, your mail app sends it, and we get your email address with it.

Events near you

Your ZIP or postcode is matched to an area using tables built into the app, so it isn’t sent to us or anyone else. To tell apart codes that exist in two countries, the app reads your device’s region setting, not its location. The app never uses location services.

News, images and links

The app downloads lists of news, events and videos from our web host, and shows pictures hosted by others, such as the official StarCraft: Tabletop Miniatures Game site, Google’s Firebase Storage and YouTube. Like any web request, these reveal your IP address to the host. Event pages, videos and maps open in other services under their own policies.

Our website

Our website and the watch, recap and policy pages set no cookies and use no analytics, and everything on them is served by us. The landing page stores one note in your browser for the length of your visit (“intro-seen”), so its intro plays only once.

Usage data and crash reports

Unless you turn it off in Settings → Usage data, the app sends usage data and crash reports to PostHog, the service we use to count and read them, so we can see how the app is used and fix what breaks.

What’s sent:

What isn’t: your name or your opponents’ names, list and event names, anything you type (including rules questions, feedback and your postcode), your location, or your contacts. PostHog is set not to store IP addresses or look up where you are.

PostHog processes the data for us in the United States and keeps it for up to a year. Turning the switch off stops it straight away; to have past data deleted, write to us.

Server logs

Our server runs on Cloudflare. Cloudflare keeps short-lived request logs (such as the IP address, time and address requested) for security and troubleshooting, for up to 7 days.

Camera, photos and microphone

What we don’t do

Legal bases (EU and UK)

We use personal information to provide the features you ask for (a contract with you), and to keep the service secure and fair (our legitimate interests). Usage data and crash reports rely on our legitimate interest in improving the app; you can object at any time by turning them off.

Where data is processed

Our server, its AI providers, GitHub and PostHog can process data outside your country, including in the United States. Where the law requires it, these transfers rely on safeguards such as the EU Standard Contractual Clauses.

Your rights

Depending on where you live, including the EU, the UK, Canada and several US states, you can ask to access, correct, delete or get a copy of your personal information, object to or restrict how it’s used, and complain to your data protection authority.

Most of your information is only on your device, where you control it. For a game on our server, write to us with the game code; games are deleted automatically within 7 days in any case. For a feedback report, tell us roughly when you sent it and what it was about. We answer within 30 days and won’t treat you differently for asking.

Children

Mineral Line isn’t directed at children under 13, or under 16 in the EU and UK, and we don’t knowingly collect their personal information. If you think a child has put their real name into a linked game, contact us and we’ll delete it.

Changes

If this policy changes, we’ll update the date above, and for significant changes we’ll say so in the app before they apply.