Maze67 2.5D Privacy Policy

Effective date: September 29, 2026

This policy covers Maze67 2.5D for Android, published by Gravestory Labs, package com.gravestory.maze25d. It describes the release with an on-device age check, Google Play Billing, optional online rankings, and advertising from Unity Ads between mazes.

Gameplay and information stored on your device

The mazes and game assets are bundled with the app. Local gameplay does not require an online profile. Device-local times are not automatically uploaded. Online ranking is a separate, optional feature for players aged 13 or older.

The app stores preferences, earned maze access, completion records, local times, your age group, your ad choices, and local advertising-timing state on your device. Tilt controls use your device's gravity sensor or accelerometer to steer the marble. Motion readings are processed locally; the app does not transmit a motion history. Touch controls remain available.

Age check

Maze67 2.5D is for players age 13 and older. Before play, the app asks for your birth date. The date is checked on this device and immediately discarded. The app keeps only the derived age group (13 to 17, or 18 and over) and the time of the check, in Android Keystore-backed encrypted storage. A teen check is repeated after one year. A birth date showing an age under 13 blocks play and stores nothing. The birth date, exact age and age group are never sent to Gravestory Labs, the leaderboard service or advertising providers. The age group only selects which advertising settings apply, as described below. Online rankings keep their own separate 13+ agreement.

Optional public profile and ranked scores

If you join online rankings, the app sends your chosen public name, generated profile and transaction identifiers, accepted terms version, and authentication or recovery credentials over HTTPS to the Gravestory Labs leaderboard service hosted by Cloudflare. No email address, password, real name, or social account is required. Choose a nickname without private information. The server stores hashes of authentication and recovery secrets rather than their raw values. The app protects its native profile record with Android Keystore-backed authenticated encryption.

Your public name, profile identifier, maze, control category, accepted completion time, and completion date may appear in the app and on maze67.com. New runs can be ranked only after you enable online ranking and start a fresh eligible run. Ranking requests include the canonical maze identifier, control category, app and rules versions, attempt identifiers, timing, and security evidence needed to check the result. They do not include your movement path or sensor readings. The app keeps a bounded queue of authorized completed runs when a connection or verification is pending. Rejected or expired submissions remain local.

You can turn ranking off, continue to play locally, show a private recovery code, recover a profile, report an inappropriate public name, or block a player. Blocking hides that player's public name and scores on this device; the block list remains device-local. Reports send the reporting profile, reported profile, and selected reason to the moderation service. Moderation records and actions support abuse handling and appeals, not advertising.

Disclosed review demo access

The private review code opens all mazes without a purchase and, after explicit terms consent, signs into a disposable demo profile. Review demo uses the same online account controls and security checks with separate encrypted device storage and a separate Gravestory Labs service and database. Its profiles, reports, and scores do not enter the public competitive rankings on maze67.com. Other authorized demo users can see demo names and accepted demo times. Use generated or fictional test names and do not enter private information.

The review code is sent only over HTTPS to the fixed review service to authorize access. The app holds it in memory during review access, clears it on exit or process shutdown, and does not expose it in the game page's ranking status. The service compares its digest and does not persist the raw code. Demo profile authentication, recovery, gameplay records, Google checks, and retention follow the corresponding rules described in this policy, within the separate demo database.

Delete a demo profile in the app or on the review demo deletion page, using the review access code and that demo profile's recovery code. Reset demo profile deletes an accessible current demo profile before creating a fresh one. If the service has already rejected the stored credentials, explicit reset can create a fresh demo profile without confirming deletion of the unavailable profile; use its valid recovery code on the demo deletion page if needed. Failed or pending deletion is not described as complete. The reusable review access code remains usable. Exiting review access restores normal local progress and the normal online profile; demo operations do not alter normal purchase ownership or public accounts.

Ranked-play security and service providers

Ranked submissions use Google Play Integrity to check the app, its Google Play license, and device integrity. Google processes request digests, app identity and signing information, license status, and device attestation information for these security checks. Requests are encrypted. Google's Play Integrity data safety information describes its processing and retention. These checks are associated with optional ranked play; they are not used for advertising or cross-app tracking by Gravestory Labs.

The leaderboard service checks Google's response and records the security decision and provider timestamp with the ranked attempt. It does not persist the raw Integrity token or full Google response. Cloudflare processes network requests to operate the service. The app's rate-limit database uses rotating keyed hashes derived from network address prefixes, not raw IP addresses, to reduce abuse. Cloudflare may process access and security information under its own service policies.

Optional purchase and Google Play

Google Play processes the optional one-time Premium purchase. Premium removes ads and makes all 67 mazes immediately available; it does not mark them complete. Every maze can also be reached through free progression.

The native app queries Google Play for the product's localized price and purchase ownership, checks signed purchase records, and acknowledges completed purchases. Pending payments do not grant Premium. The app keeps a protected, device-local ownership record for offline use. Restore purchases checks ownership through the Google Play account on your device. A confirmed refund or revocation can remove paid access while preserving earned progress and records.

Purchase records and tokens are handled by the native billing integration and Google Play. They are not exposed to the game page or sent to a Gravestory Labs server. The app does not receive payment-card details or your Google account password.

Google Play Billing and its Google service components process purchase and transaction information and technical information needed to operate, diagnose, and secure billing. The Billing library includes Google's diagnostic reporting to Google. These services may use network connections independently of the offline game. Google's processing is governed by the Google Privacy Policy and applicable Google Play terms. Gravestory Labs does not use billing diagnostics for advertising or gameplay analytics.

The Billing library sends Google billing operation results, response codes, diagnostic messages, timing information, app and library versions, and technical device and network information such as Android version, device model and build, total device memory, network type, language, time zone, and mobile carrier code. It also generates a random identifier for each billing-client session to associate related billing events. This is not an advertising identifier. These reports support billing diagnostics and reliability. Billing initializes when the app opens and checks ownership when it resumes; there is no separate in-app opt-out for this diagnostic reporting.

Ads and personalization

Free play shows one full-screen ad from Unity Ads after every five minutes of active play. An ad appears only when you leave a finished maze, never during a maze, the victory tune or a menu, and at most once every two minutes. Finishing maze 67 (Colossus) never shows an ad. Premium removes ads. Unity Ads is the only advertising provider; the app contains no other advertising network or mediation service.

Basic ads are not personalized. Unity can process device and app information, diagnostics, IP address and IP-derived approximate location, and your interactions with ads to deliver advertising, measure performance, support ad features and prevent fraud. If you are 18 or older and choose Personalized ads, Unity may also use advertising and other identifiers, purchase history and interests to personalize ads. If Unity enables purchase measurement for this game, its software may also read Google Play purchase records made in this app (such as the Premium purchase) and send them to Unity to measure advertising; Gravestory Labs does not receive those reports. Teen ads (ages 13 to 17) always use restrictive, non-personalized settings. Before the advertising service starts, and again whenever a choice changes, the app sends Unity only these privacy signals: whether personalization is allowed, and whether the player is under the age limit. The app does not grant Unity access to Android's interest-based Topics API.

Basic ads do not require agreement to personalization, and adult personalization is optional. In the European Economic Area, the United Kingdom and Switzerland, Maze67 2.5D also requires an adult's explicit permission before the advertising service may run, including for basic ads. You can decline that permission and keep playing for free. Teens in those regions see no ads. Advertising is not available for China or for locations that cannot be determined. No advertising operation runs while the age group, regional rule, Premium ownership or your choice is unknown, or after you decline permission.

To choose the regional rule, the app asks the Maze67 service for the applicable policy without sending age, identity, purchase data or advertising identifiers. Cloudflare derives the request country from network metadata; the service returns only the policy and a timestamp, does not store the country, and marks the reply non-cacheable. The app keeps it in memory for up to 15 minutes, checks again every 10 minutes while playing, and asks again when you return to the app after it has expired. If it cannot be checked, ads stay off. Ads are not linked to online ranking profiles, and Gravestory Labs does not receive or store advertising identifiers.

Open Settings → Ads → Ad privacy to change your choice. Choosing Basic ads turns personalization off and resends restrictive privacy signals before new ads load. Where permission is required, you can withdraw it there. Withdrawal is saved on this device first; if the advertising service has already started, the app then closes to stop it, because it cannot be switched off while running. Your progress and times stay saved, but a maze in progress ends. The block remains after restarting until you allow ads again. These choices do not delete data Unity has already collected. Use Unity advertising privacy and Unity privacy and data controls for provider choices and deletion requests. You can also reset the Android advertising ID or opt out of ads personalization in your device settings.

Gravestory Labs lists its authorized advertising seller in an app-ads.txt file on its developer website, which advertising buyers use to check that ads are sold by an authorized seller. It contains no player data.

Retention, security, and deletion

Local game records remain on the device until you clear the app's storage or uninstall it. Purchase ownership is protected using an Android Keystore-backed authenticated encrypted record. Clearing local storage does not cancel or refund a Google Play purchase; ownership may be restored from Google Play. Google controls retention and deletion of information it processes under its own policies.

The age group, ad choices and advertising block stay on the device until you clear the app's storage or uninstall it; clearing them brings back the age check; where advertising permission is required, ads stay off until you allow them again. Unity controls the retention and deletion of information it processes for advertising, under the Unity policies linked above.

Billing diagnostic reports use encrypted HTTPS connections and may be queued in a local database before delivery. Clearing app storage removes locally queued reports, but does not delete reports already sent to Google. Gravestory Labs does not control Google's diagnostic retention or provide an in-app mechanism for deleting Google's records.

Online profiles and accepted scores remain until the profile is deleted or moderation removes them. Unfinished ranked authorizations expire after 48 hours. Daily maintenance clears expired rate-limit records and removes terminal authorization receipts older than 30 days. Recovery transaction receipts older than 30 days are cleared when recovery requests are processed. Moderation audit records and limited account-deletion records have no fixed automatic expiration; they are retained for abuse prevention, security, dispute handling, and legal requirements.

Delete your online profile from Settings → Online rankings → Delete online profile, or use the online account deletion page with your recovery code. A recovered profile may be shared with Maze67; deleting it removes that profile's public scores across both games. Once the server processes deletion, it removes the public name, authentication and recovery secrets, accepted scores, and associated player reports, and revokes active ranked authorizations. Limited records such as profile and transaction identifiers, a keyed name fingerprint, dates, and moderation audits remain for the purposes above. A deletion requested while offline needs a connection to finish.

Deleting an online profile does not clear device-local game progress or cancel a Google Play purchase. Use Android's app storage controls to remove local game and encrypted profile records, and Google's account and Play controls for information held by Google. Clearing the app or uninstalling without first deleting the online profile does not delete its public server records; retain the private recovery code if you may need to recover or delete it later.

Contact and policy changes

For privacy questions, contact Gravestory Labs at j3k420@gmail.com. If you email support, the email address and information you choose to include are used to respond to your request. Contact the same address about deleting support correspondence.

Material changes to the app's data practices will be reflected in this policy with an updated effective date before the related behavior is released.