Legal information

Privacy policy

This policy describes data processing when you use the Chess Planet website and iOS and Android apps. The data involved depends on your platform, app version and the features you use. It also covers play without a linked sign-in account.

Updated: 7 October 2026

1. Controller and contact

The controller of personal data for Chess Planet is Yellow Bench s.r.o., company ID 07601662, registered office at Václavské náměstí 819/43, Nové Město, 110 00 Prague 1, Czech Republic.

Send privacy and personal-data requests to filip.decastelo@yellowbench.cz. For gameplay and purchase support, contact yellowbenchprague@gmail.com. Do not include passwords, sign-in tokens or full payment-card details in your messages.

2. Account and gameplay data

Using the service can create an anonymous Firebase account with a unique identifier. Solo play and two players on one device do not require external sign-in. On the current website and in app versions that support this requirement, online matchmaking, private online games and resuming an online match require sign-in and a nickname you explicitly choose and confirm. An anonymous account does not mean that the service processes no identifiers or gameplay data.

  • Account: user identifier, account and sign-in status, chosen nickname and its confirmation status, owned skins and worlds, and selected equipment. If you link an available Google or Apple account, the sign-in service also processes the provider identifier and information you allow it to provide, such as your name and email.
  • Gameplay: mode, variant and clock settings, game and player identifiers, private join code, assigned sides, moves, positions, clocks, connection state, results, rating and history. Online features need this information to find an opponent, synchronize play and verify results.
  • Public and shared information: your opponent receives information needed for the shared game. Other players may see your chosen nickname, rating and gameplay statistics in matches, history and leaderboards. Provider names and generated guest names are not automatically adopted as a nickname. Internal identifiers are still processed to synchronize and secure games. Do not put information you want to keep private in your nickname.
  • Safety and support: player blocks, reports, related game identifiers and reasons, the record of an account-deletion request, and messages you send us.

Reward progress and offers in the game interface

We use server history of completed online games to unlock rewards. For a one-time Graveyard offer after at least 15 minutes in the game interface, we periodically verify elapsed time while the tab is visible. Linked to your account, we store accumulated time, the last verification time, a hash of a technical session identifier, reward progress and grants, and whether the offer was shown, dismissed or used. Reloading or navigating between pages is not a new visit or a completed game. Hidden-tab time and long gaps between checks do not count. Our backend uses these records for rewards and the offer; this adds no new analytics or screen recording. The offer requires a verified shop price and is not shown during a game.

In the mobile app, we may offer Graveyard at a discounted price after your third opening. A new opening counts only after at least 30 minutes since the same game account’s latest activity in the mobile app. For this purpose, the app sends a technical session identifier and an opening, foreground activity or background signal. We store a hash of that identifier, server timestamps and progress, presentation, dismissal and use state with the account. A short return or a retried request does not add a visit. These records are separate from optional analytics and are not disabled by its toggle; they do not record your screen. The offer is not shown during a game. Before purchase, we store its authorization and verify that the App Store or Google Play transaction belongs to the game account. Offer data is part of the profile and is removed on successful account deletion; separate purchase and deletion-request records follow the retention rules below. The web offer after 15 minutes remains separate.

Where Facebook sign-in is available, Meta authenticates your account and Firebase processes the provider identifier, basic profile and email address if you allow it and Meta supplies it.

3. Devices, connections and notifications

When you connect, our systems and providers process technical information such as your IP address, request times, platform, language, app version, operating system and device type, errors and operational logs. This supports service delivery, security and troubleshooting. We do not request precise GPS location; analytics services can infer an approximate country, region or city from the IP address.

The native apps use Firebase Installations and Firebase Cloud Messaging, and on iOS also Apple Push Notification service. They process installation identifiers and delivery tokens. Our backend records the installation ID, platform, language and whether notifications are enabled. Turn notifications may include the game identifier.

Disabling notifications in system settings stops their display, but does not by itself delete the installation identifier or device registration. Registration can happen even when notifications are not allowed. You can request data deletion as described below.

4. Optional interface analytics and interaction maps

Optional Google Analytics 4 measurement on the website is off until you allow it. The Google measurement script loads only after consent. We measure viewed screens, selected game settings, an intention to launch a game or open the store, and technical loading progress. Referrals from certain AI search services are classified only by service name, without sending the full referring address.

Supported native app versions provide a separate interface-analytics setting in account settings. This covers screens, launch intent, and bounded outcomes for sign-in, store loading, purchase verification, purchase restoration and leaderboard loading. It is off by default; the control may be unavailable in an app version where this measurement is not activated.

Interaction maps require an additional opt-in. They count use of named controls, such as Start or Buy, by screen, product and device orientation. They do not record screen video, form snapshots or touch coordinates. This layer does not use session recording.

New interface events contain random event and journey identifiers, event order, platform, screen and layout version. The in-memory journey identifier changes after 30 minutes of inactivity. We do not add names, emails, account or game IDs, private codes, payment proofs or form text to these custom events. The web measurement code does not send URL query parameters or fragments. Google SDKs nevertheless use their own browser or app-instance identifiers and technical information, so these data are not guaranteed to be anonymous.

Change your website choice using the analytics-preferences control. In the native app, use the relevant switches in account settings. Turning this layer off stops new events and clears its current journey identifier. Events rejected before consent are not kept for later transmission. Withdrawing consent does not itself erase data already sent; contact us to request deletion.

5. Existing Unity game measurement and diagnostics

The interface-analytics switch does not disable existing Unity game analytics or SDK-wide Firebase collection in the native app. These operate separately. The Unity game uses Firebase Analytics for gameplay events such as starts, moves and endings, game settings, and loading or memory information. The SDK may also record automatic app-open and session events.

Google Analytics for Firebase uses an app-instance identifier and technical information. On Android it can use the advertising identifier when available under system settings. On iOS it uses identifiers available to the SDK, such as the vendor identifier; availability of the advertising ID also depends on system permissions. Your phone's advertising-ID setting is not a general analytics off-switch.

Android also uses Firebase Crashlytics for crash and diagnostic reports: stack traces, application state, device properties, an installation identifier and supplementary technical logs about launch and the Unity connection. The new interface-analytics choice does not disable this collection. Contact our privacy address for questions or deletion requests about these data.

6. Purchases and restoring content

When a purchase is available on your platform and you choose to make it, native payments are processed by the App Store or Google Play; available web purchases use Stripe Checkout. Availability and price appear in the relevant store. This policy does not mean every payment method is currently enabled.

To verify and deliver content, the backend processes the product, payment provider, transaction identifier or purchase token or signed proof, link to the game account, verification outcome, ownership, and restore, refund or revocation status. For web purchases, Stripe also receives a reference to the game account and creates customer and payment records. You enter payment details with the payment provider; the Chess Planet app and backend do not store a complete card number or card security code.

The stores and Stripe may keep their own payment, contact and legally required financial records under their policies. Deleting your game account does not itself refund a payment or delete your Apple, Google or Stripe account.

7. Purposes and legal bases

  • Providing the service and performing the contract: accounts, game synchronization, matchmaking, selected equipment, ratings, history, requested notifications, and purchase verification or restoration. A feature may not work without the information it needs.
  • Legal obligations: records required for accounting, handling a claim, or another statutory obligation where applicable to us.
  • Legitimate interests: protecting accounts and the service, investigating abuse, operational security and defending legal claims. You may object to this processing.
  • Consent: the optional interface analytics and separate interaction maps described above. Consent is voluntary and can be withdrawn. This consent does not cover the separate existing Unity measurement described in section 5.

System notification permission and analytics consent are different choices. You do not need to enable the new interaction maps to access the game generally.

8. Providers and international processing

  • Website delivery: Cloudflare delivers the playchessplanet.com website and game files; older hosted website addresses use VEDOS. Delivery services process technical request data such as IP address, requested address and browser information to serve and protect the website.
  • Google Firebase and Google Cloud: authentication, database and backend, installation data and notifications, Firebase Analytics / Google Analytics 4, and Crashlytics on Android. Analytics events may be exported daily to our BigQuery analytics storage in the EU region to evaluate usage and errors. Choosing EU for this export does not mean all Google services process data exclusively in the EU.
  • Apple and Google: chosen sign-in, native platform services and app-store payments. Stripe: available web payments and verification.
  • Other players: necessary shared-game information and information published in leaderboards. Authorized people handle support and service administration; we may also disclose information when required by law.
  • Meta Platforms: optional Facebook sign-in. Meta processes authentication requests and technical connection data under its privacy policy.

Google Analytics is configured to contribute aggregated and de-identified data to modeling and benchmarking across websites and apps. Google technical support may access analytics data to resolve issues. Recommendations based on administration and usage information about our Analytics account are also enabled. See Google Analytics data-sharing settings for details.

Providers also operate outside the European Economic Area. Their contractual roles and transfer arrangements depend on the service. Google and Stripe publish information about contractual safeguards and international processing in their policies; contact us for details about processing for Chess Planet.

Further information: Firebase privacy, Google's policy, Apple's policy and Stripe's policy and Cloudflare's policy.

9. Storage and retention

We store the sign-in session, game preferences, any local saved game, and analytics choices on your device. The website uses local storage and, after you enable Google Analytics, analytics cookies to distinguish browsers and visits. Clearing browser data can remove preferences and access to an unlinked anonymous account, but does not itself delete the server account. Linking a guest account preserves its identity. Explicitly switching to a different existing account does not automatically merge progress or purchases. Supported iOS versions preserve the previous local session separately in the device Keychain for recovery; contact support if you need help with that session.

  • Accounts and gameplay profiles remain stored to provide the service and restore progress until account deletion. Operational game records may be cleaned up according to game state; ratings and history have separate records.
  • Payments and deletion: verification and financial records, the payment-provider customer link, and the record of your deletion request are not automatically removed with the gameplay profile. They may be needed to complete a transaction, prevent repeated claims, process refunds, defend legal claims and meet applicable legal obligations.
  • Analytics, operational logs and backups have separate life cycles in the respective services. Withdrawal stops new custom events, not automatically earlier Google Analytics records or their BigQuery export. They do not share a guaranteed deletion period with the gameplay profile.

There is no single stated retention period for all these categories. When you request deletion or access, we will identify the relevant records and explain any specific reason for keeping them.

Operational and security records are assessed against the need to resolve an error or incident and establish correct service operation. Purchase-record criteria include an unsettled transaction, claims or refunds, prevention of duplicate grants and the specific legal obligation. Analytics records support evaluation of usage and reliability; exported copies have their own retention settings.

The current Google Analytics 4 settings retain event data for 2 months and user data for 14 months; the user-identifier period resets with new activity. These limits do not apply to standard aggregate reports or automatically to BigQuery exports. See Google Analytics retention documentation.

Reward progress, accumulated qualifying time and offer status are part of your game profile. They stay with the account to preserve progress and prevent the offer repeating on reload, and are removed when account deletion completes successfully. Payment records from any purchase through the offer follow the separate rules in sections 6 and 9.

10. Account and data deletion

Open account / settings in the app and select account deletion. If you no longer have the app or cannot access the account, use the account-deletion page or email our deletion contact. You can submit a request by email without reinstalling. We may need to verify that the account belongs to you before acting.

Successful in-app deletion removes the profile and equipment, ratings, related games and history, reports and blocks, notification registrations in our backend and the Firebase Authentication account. A record of the request and its status remains. Financial records and independent-provider data are covered in sections 6 and 9. Normal account deletion does not itself initiate deletion of all Firebase installation or analytics records or BigQuery exports.

If you also want to address these data, include that in your request. Do not send sign-in tokens, passwords or a complete payment proof. Uninstalling or signing out is not deletion of the server account.

11. Your rights

Subject to applicable law, you can request access, correction, erasure, restriction or portability and object to processing based on legitimate interests. Withdrawing consent does not affect the lawfulness of earlier processing.

Write to filip.decastelo@yellowbench.cz. Under the GDPR, information about action on a request is generally due within one month; a complex request may qualify for an extension with an explanation under the applicable rules. You may contact the Czech Office for Personal Data Protection or the appropriate supervisory authority where you live.

12. Children, security and changes

The mode labelled Kids is automatic AI-versus-AI play. It is not a parental-control feature, age verification or an analytics-free mode. A parent or guardian can contact us about a child's data, access or deletion. Avoid putting a child's unnecessary personal information in a public name or messages.

The service uses secure connections and authentication for account access. Permissions restrict access to sensitive server records; no system can guarantee absolute security. We update this policy when the service or processing changes; the current version date appears above. The Czech and English versions of this page describe the same practices.