Privacy Policy
io.github.ber4444.chessAI Chess Coach 3D has no accounts, no sign-in, no advertising, and no analytics or crash-reporting SDKs. Your games, settings, and history are stored on your device and are never uploaded.
Two things leave your device, and only in the situations described below:
Everything else — the chess engine, the 3D board, the move coach, the game summary, and rules Q&A — runs entirely offline on your device.
The app is open source. If you would rather read the code than take our word for any of this, it is all on GitHub.
01
The app saves the following locally, in Android's own SharedPreferences storage:
This data is not transmitted to us or to anyone else. It is removed when you uninstall the app or clear the app's data from Android Settings. If you use Share PGN, the game text is handed to the app you pick — mail, messaging, a file — and that destination's own privacy terms then apply.
02
Pro is sold through Google Play, with RevenueCat managing entitlements and receipt validation.
We use this data only to decide whether Pro is unlocked, and to see anonymous, aggregate revenue figures. We do not use it for advertising and we do not sell it.
RevenueCat handles this data on our behalf — as our processor, under its data processing agreement, and only for the purposes above. Google Play is the seller of record for the transaction and an independent controller of the payment details it takes from you directly, which never pass through us. Their policies: Google, RevenueCat.
03
Two features send data to our AI service, which runs on Fly.io.
Opening Explainer — after a game ends, sends the board position (FEN), the first 20 moves in standard notation, the opening's ECO code, and your language preference.
Position Chat — sends the same position data, your recent messages in that conversation (bounded to the last several turns), and the message you type, which is limited to 500 characters.
Please do not type personal information into the chat box. It is a free-text field, so anything you write there is sent to our service and on to the model provider named below. Keep it to chess.
To compose the wording of an answer, our service forwards the position and your question to Google's Gemini API, which generates the response text. We use the API's paid tier, through a Cloud project with active billing. Under the Gemini API terms for paid services, Google does not use prompts or responses to improve or train its models, and processes them as a data processor under its Data Processing Addendum. The human review Google applies to its free tier does not apply to paid requests, and we do not use the free tier.
Google does, however, log prompts and responses for a limited period — solely to detect and prevent abuse of its usage policy, and for any legally required disclosure. That logging happens on Google's systems; it is not visible to us and we never receive it. Google states this data may be stored or cached in any country where it maintains facilities. See also Google's privacy policy.
If the model is unavailable or its answer fails our validation, the app falls back to text composed from our own reference corpus, and nothing further is sent.
These features are optional: they only run when you open the Chat screen or ask for an opening explanation.
04
The Move Coach, Game Summary, and Rules Q&A features run entirely on your device.
Rules Q&A uses Android's built-in on-device AI, where your device supports it, to phrase its answer. The Move Coach and Game Summary do not use an AI model at all: their text is computed deterministically from the chess engine's own analysis of your game. No model is downloaded for any of these features, and none of them sends anything anywhere.
Nothing about your games is uploaded for these features, and they work with no network connection.
05
| Destination | When | What it sees |
|---|---|---|
| Google Play, RevenueCat | Purchase, restore, or entitlement check | Purchase data as described in section 02 |
| Our AI service on Fly.io | You use Opening Explainer or Position Chat | Position and your typed message; IP address |
| Google Gemini API, via our service | The same request, to compose the answer | Position and your typed message; not your IP |
The app requests only the INTERNET permission. It does not ask for contacts, location, camera, microphone, photos, or storage permissions, and it has no access to them.
06
AI Chess Coach 3D is not directed at children under 13, or the equivalent minimum age in your country, and we do not knowingly collect personal information from children. Since the app collects no identifying information at all, there is nothing for us to delete on request; purchases made by a minor should be raised with Google Play.
07
Depending on where you live — for example under the GDPR in the EU and UK, or the CCPA/CPRA in California — you may have rights to access, correct, delete, or port your personal data, and to object to its processing. We do not hold data that identifies you, so in most cases:
We do not sell or share your personal information as those terms are defined under California law, and we do not engage in targeted advertising.
Our AI service is hosted in the region configured on Fly.io, and Google may process model requests outside your country — its terms allow prompts and responses to be stored or cached in any country where Google maintains facilities. Where data leaves the EEA or the UK, transfers rely on the standard contractual clauses those providers maintain.
08
| Data | Kept for |
|---|---|
| Games, history, settings | Until you delete them or uninstall the app — stored only on your device |
| Purchase and entitlement records | As long as RevenueCat and Google Play retain them under their own policies |
| Cloud AI requests | Not stored. Processed in memory to produce the answer, then discarded |
| Abuse-detection logs at Google | A limited period set by Google, for enforcing its usage policy and legal disclosure only — see section 03 |
| Rate-limiting IP counters | A rolling 60-second window, in memory only |
| Server error logs | A short operational period, then rotated out |
09
Traffic to our AI service, to Google Play, and to the Gemini API uses HTTPS. Requests to the AI service are size-limited and rate-limited. Because the app stores no credentials and holds no account, there is no login to compromise. No system is perfectly secure, but the amount of data at risk here is deliberately kept near zero.
10
If we change how the app handles data, we will update this page and the "last updated" date above. Material changes will be noted in the app's release notes. Continuing to use the app after a change means you accept the revised policy.
11
Questions about this policy or about your data: open an issue on GitHub. The tracker is public, so please do not include personal details.