Privacy Policy

What AI Chess Coach 3D knows about you

App
AI Chess Coach 3D
io.github.ber4444.chess
Platform
Android, via Google Play
iOS, via TestFlight beta
Developer
Gabor Berenyi
Source code
github.com/ber4444/compose-multiplatform-chess
Contact
Open an issue
Effective · last updated
19 October 2026

The short version

AI Chess Coach 3D is free. It has no purchases, no accounts, no sign-in, no advertising, and we have added 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:

  1. The two cloud AI features — Opening Explainer and Position Chat. These send the chess position you are looking at and, for chat, the question you type.
  2. Google ML Kit diagnostics, on Android only. When you use Rules Q&A on Android, Google's on-device AI library reports diagnostics about its own operation to Google. Your question and the answer are not part of it.

Everything else — the chess engine, the 3D board, the move coach, the game summary, and the answering itself in rules Q&A — runs 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

Information stored on your device

The app saves the following locally, in the platform's own app storage — SharedPreferences on Android, UserDefaults on iOS:

  • The game in progress, so you can resume after closing the app.
  • Your game history — finished games as PGN, including result, move count, and date, capped at the 200 most recent games.
  • Your settings — preferred side, engine difficulty, 3D board on or off, AI coach on or off.

This data is never sent to us. It is removed when you delete the app, or on Android when you clear the app's data in Settings; on iOS, Offload App keeps it, and only deleting the app removes it. If device backup is turned on — Android's backup to your Google account, or iCloud or computer backup on iPhone — this data is included in your own backup, which Google or Apple store under your account; we have no access to it. 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

Cloud AI features

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.

What this means in practice

  • These requests carry chess data and your typed question only. The app does not attach a user ID, account data, device identifier, advertising ID, or location to them.
  • Your IP address reaches our server as an unavoidable part of any internet request. We use it only for short-term rate limiting — held in memory for a rolling 60-second window, never written to a database, never used to build a profile.
  • The service has no database: the chess opening reference corpus the answers are drawn from is built into the server itself. No user request is stored. Server logs record errors for reliability purposes; they are not used to profile users and are retained only briefly.

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.

Third-party language model

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.

03

On-device AI

The Move Coach, Game Summary, and Rules Q&A features run entirely on your device.

The Move Coach does not use an AI model on either platform: its text is computed deterministically from the chess engine's own analysis of your game.

  • On Android, Game Summary is computed the same deterministic way. Rules Q&A uses Google's ML Kit library to run Gemini Nano, Google's on-device model, through Android's AICore service on devices that support it. Your question and the answer are processed on the device and are not sent anywhere. Where the model is unavailable, Rules Q&A answers directly from its bundled rulebook. Two things do involve Google:
    • Each time Rules Q&A runs, ML Kit checks whether the model is available — and, where it is, generates the answer — and reports diagnostics about those calls to Google, as described below.
    • On a supported device that does not have the model yet, a Rules Q&A question can prompt Android's AICore service to download Gemini Nano from Google. That download is made by Android itself, under Google's terms.
  • On iOS, Game Summary and Rules Q&A use Apple's on-device foundation model, part of Apple Intelligence, where your iPhone supports it and Apple Intelligence is turned on (iOS 26 or later). The app uses only the model that runs on your device — not Apple's Private Cloud Compute — so these requests do not leave your iPhone. Where Apple Intelligence is unavailable, Game Summary is not offered and Rules Q&A answers directly from its bundled rulebook.

Google ML Kit diagnostics (Android only)

ML Kit is a Google library built into the Android app, and Google collects the following from it for its own diagnostics and usage analytics of ML Kit, as Google describes in its ML Kit data disclosure:

  • Device information — manufacturer, model, OS version and build, and available ML hardware accelerators — and the app's package name and version.
  • Performance metrics such as latency, the API configuration, the size of inputs and outputs (not their content), the feature version, event types such as initialization, model download and inference, and error codes.
  • The configured languages.
  • Identifiers: per-installation identifiers that Google says are not meant to uniquely identify a user or device, and — as Google describes its GenAI features — user, device or other identifiers.

This goes directly from the library to Google over HTTPS; we never receive it. Google states that it does not transfer this data to third parties. It is governed by Google's privacy policy. In this app, ML Kit runs only when you use Rules Q&A on Android, so not using Rules Q&A means none of this is sent. The iOS app does not include ML Kit.

The app downloads no AI model of its own. Apart from the ML Kit diagnostics above, none of these on-device features sends anything anywhere.

Nothing about your games is uploaded for these features, and they work with no network connection.

04

Every connection the app can make

DestinationWhenWhat it sees
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
Google ML Kit (Android only) You use Rules Q&A The diagnostics and identifiers listed in section 03; not your question or the answer
Android's AICore service (Google), Android only A Rules Q&A question on a supported device that lacks the model A model download made by Android itself, under Google's terms

The app never shows a permission prompt. On Android it declares only permissions that Android grants automatically at install: internet access, viewing network connections, vibration (declared by the 3D board library), and access to Android's own on-device AI service; on iOS it declares none. It does not ask for contacts, location, camera, microphone, photos, or storage access on either platform, and it has no access to them. Apart from the two Android-only rows, the connections above are the same on Android and iOS.

05

Beta testing on iOS (TestFlight)

The iOS app is currently distributed as a beta through Apple's TestFlight. Apple runs TestFlight under its own terms and privacy policy, and may make some information about your use of the beta available to us in App Store Connect:

  • Feedback and screenshots you choose to send from TestFlight, with any comments you add.
  • Crash reports, if your device allows sharing crash data with app developers.
  • Basic usage information such as installs, sessions and the build and device model in use.
  • If we invited you by email, that email address and the name you were invited under. If you joined through a public link, Apple does not give us your name or email.

We use this only to find and fix problems in the beta. It is not combined with anything else, and the app itself sends nothing beyond what this policy describes. To stop, remove the beta in the TestFlight app; data Apple holds is governed by Apple's policy.

06

Children

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 we receive no identifying information at all, there is nothing for us to delete on request.

07

Your rights

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:

  • To delete everything the app stores about you, delete the app, or on Android clear its data. This removes your games, history, and settings permanently — we hold no copy.
  • For TestFlight feedback and crash data, contact Apple, or ask us to delete what reached App Store Connect.
  • For ML Kit diagnostics (Android), contact Google, which holds them; we never receive them.
  • For anything else, open an issue and we will respond within the period your local law requires. The issue tracker is public — please do not post personal details in it.

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

Retention

DataKept for
Games, history, settingsUntil you delete them or uninstall the app — stored only on your device
ML Kit diagnostics (Android)Held by Google under its own policies; never received by us
TestFlight feedback, crash reports and usage dataHeld by Apple in App Store Connect under Apple's own retention rules
Cloud AI requestsNot stored. Processed in memory to produce the answer, then discarded
Abuse-detection logs at GoogleA limited period set by Google, for enforcing its usage policy and legal disclosure only — see section 02
Rate-limiting IP countersA rolling 60-second window, in memory only
Server error logsA short operational period, then rotated out

09

Security

Traffic to our AI service and to the Gemini API, and ML Kit's diagnostics to Google, use 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

Changes to this policy

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

Contact

Questions about this policy or about your data: open an issue on GitHub. The tracker is public, so please do not include personal details.