Infinite Pixel · Privacy Policy

Privacy Policy

Last updated: May 2026

Welcome to Infinite Pixel, a color-by-number pixel art game for Android. We are committed to protecting your privacy and being transparent about how we handle your information. This policy describes what data we collect, how we use it, and the choices you have.

Infinite Pixel is designed to work primarily offline for its core game functions. Coloring artwork, saving your progress, and using hints never require an internet connection. The only components that connect to the network are the optional advertising SDK (Google AdMob), the Firebase Cloud Messaging service (FCM), and the UMP consent framework — all governed by Google's privacy standards.

By using Infinite Pixel, you agree to the practices described in this policy. If you disagree, you may stop using the application at any time.

📋 Information we collect

Data generated by core game functions

  • Your coloring progress per image, stored locally as a BitSet encoded in Base64 inside SharedPreferences — no server upload
  • Total completion percentage per image, stored locally in SharedPreferences
  • Hint usage counters (Navigate and Fill hints remaining), stored locally in SharedPreferences
  • Timestamp of the last interstitial ad shown, stored locally for frequency-capping purposes
  • Artwork category data fetched from our API and cached locally on the device
  • Compressed pixel art image data fetched from our API and cached locally in SharedPreferences

Data collected by advertising (AdMob)

  • Advertising ID (Google Ad ID) for ad personalization, if consent is granted
  • Device model and Android version
  • Ad interaction data (impressions, clicks) collected by Google
  • Approximate location derived from IP address (by Google, not by us)

Data collected by Firebase Cloud Messaging (FCM)

  • FCM registration token — a unique device identifier used to send push notifications
  • Device metadata sent alongside the token: device model, OS version, app version, language, and a device_id generated locally (UUID stored in SharedPreferences)

Data we do NOT collect

  • Your name, email address, or any personal account information
  • Photos, contacts, messages, or any data unrelated to the game
  • Location data of any kind
  • Any information about other apps installed on your device
Core principle: All coloring progress, hint counters, and cached artwork are stored exclusively on your device. No gameplay data is ever transmitted to our servers or third parties.

⚙️ How we use your information

  • Display artwork categories and pixel art images fetched from our API
  • Save and restore your coloring progress reliably across sessions
  • Track hint usage (Navigate and Fill) and reload them when a rewarded ad is completed
  • Apply frequency capping to interstitial ads so they never appear more often than once every 2 minutes
  • Send optional push notifications via FCM (for new content announcements, seasonal events, etc.)
  • Display advertisements via Google AdMob to support the free version of the game
  • Determine whether to show personalized or non-personalized ads based on UMP consent
Important: Infinite Pixel does not build user profiles, does not sell your data to third parties, and does not track your gameplay behavior for purposes other than those listed above. The advertising SDK operates under Google's own privacy framework independently of the game's core functions.

🔐 App permissions

Infinite Pixel requests the following permissions on your Android device:

🌐 INTERNET
📶 ACCESS_NETWORK_STATE
🔔 POST_NOTIFICATIONS
💾 WRITE_EXTERNAL_STORAGE
📖 READ_EXTERNAL_STORAGE
📷 READ_MEDIA_IMAGES
📢 AD_ID (Advertising)

Detail of each permission

AdMob / API
INTERNET / ACCESS_NETWORK_STATE Required to load artwork data from our API, display advertisements via Google AdMob, receive push notifications via FCM, and run the UMP consent framework. The game's core coloring functions work entirely offline once artwork is cached.
FCM
POST_NOTIFICATIONS Required on Android 13+ to display push notifications sent via Firebase Cloud Messaging. You can revoke this permission at any time in Settings → Apps → Infinite Pixel → Notifications. The game works normally without this permission.
Storage
WRITE_EXTERNAL_STORAGE / READ_EXTERNAL_STORAGE / READ_MEDIA_IMAGES Used only when you choose to save or share a completed pixel art image to your device's gallery. On Android 10+, scoped storage is used — the app only accesses the files it creates. These permissions are never used to read your existing photos or files.
Ad ID
com.google.android.gms.permission.AD_ID Allows Google AdMob to access your device's Advertising ID for ad personalization — only if you grant consent via the UMP dialog. You can reset or disable this ID at any time from Settings → Google → Ads on your device.

🧩 SDKs and third-party services

Infinite Pixel integrates the following external services. Each operates under its own privacy policy. All other libraries used (OkHttp, Gson, AndroidX) process data locally and do not transmit information to external servers beyond what is described below.

Interstitial
Google AdMob – Interstitial Ads Full-screen ads shown at natural pause points: when the user navigates back from an artwork (if progress ≥ 5% and frequency cap allows), and after the confetti victory animation completes when an image is finished. Interstitials are never shown mid-coloring or during animations. A 2-minute frequency cap prevents back-to-back ads. Google Privacy Policy →
Google AdMob – Banner Ads Standard banner ads displayed at the bottom of the painting screen (PaintActivity) while the user is coloring. The banner is paused when the activity is paused and destroyed when the activity is destroyed, following AdMob's lifecycle guidelines.
Rewarded
Google AdMob – Rewarded Interstitial Ads Opt-in ads triggered exclusively when the user taps a hint button (Navigate or Fill) and has no remaining hint uses. The user always initiates this ad voluntarily. Upon completion, hint counters are reloaded and the requested action is executed. These ads are never shown automatically.
UMP
Google User Messaging Platform (UMP) Handles consent for personalized advertising in compliance with GDPR (European Economic Area) and similar regulations. A consent dialog is shown on first launch. If consent is denied, AdMob serves non-personalized ads. AdMob is initialized only after the UMP flow completes — whether consent is granted, denied, or an error occurs.
FCM
Firebase Cloud Messaging (FCM) Used to send optional push notifications (e.g. new artwork, seasonal events). The FCM token is sent to our backend server along with the device model, OS version, app version, language, and a locally generated device_id. This data is stored in our database solely to deliver notifications and is never sold or shared with advertisers. Firebase Privacy Policy →
OkHttp
OkHttp + Gson (API Client) Used to fetch artwork categories and compressed pixel art data from our backend API. All API responses are cached locally in SharedPreferences after the first successful fetch. OkHttp does not collect or transmit any data beyond the API requests made by the app.
Google Maps
Google Maps SDK (not applicable in this app) Infinite Pixel does not use location or mapping features. If this changes in a future version, this policy will be updated accordingly.

📣 Advertising

Infinite Pixel displays ads to support its continued development as a free game. We use Google AdMob with the following behavior:

Ad types and when they appear

  • Interstitial: Shown when leaving an artwork (if progress ≥ 5%) or after the victory confetti animation completes upon finishing an image. A 2-minute frequency cap ensures they are never shown back-to-back. Never interrupts an active coloring session.
  • Banner: Shown at the bottom of the painting screen while coloring. Follows the activity lifecycle (paused and resumed with the screen).
  • Rewarded Interstitial: Shown only when the user explicitly taps a hint button with no remaining hints. Always user-initiated and voluntary. Grants Navigate or Fill hint uses upon completion.

Data collected by AdMob

  • Advertising ID (if consent was granted)
  • Device model and Android OS version
  • Ad interaction events (impressions, clicks)
  • Approximate location inferred from IP address (by Google)
Opt out of personalized ads: You can disable personalized advertising at any time in Settings → Google → Ads → Opt out of Ads Personalization on your Android device. Infinite Pixel will then only serve non-personalized ads.
Consent first: AdMob is not initialized until the UMP consent flow has completed. In EEA regions, a consent dialog is presented on first launch. Outside the EEA, AdMob initializes with default settings. You can revisit your consent choice at any time.

💾 Data storage

Stored locally on your device

  • Coloring progress per image (BitSet encoded in Base64) in SharedPreferences
  • Completion percentage per image in SharedPreferences
  • Hint counters (Navigate and Fill) in SharedPreferences
  • Timestamp of the last interstitial ad shown, for frequency capping
  • Cached artwork category data and compressed pixel art image data in SharedPreferences
  • UMP consent status managed by the Google UMP SDK
  • FCM device_id (a UUID generated on first launch) in SharedPreferences

Stored on our servers

  • FCM registration token, device model, OS version, app version, and language — stored solely to deliver push notifications. No gameplay data is stored on our servers.

Stored on Google's servers

  • Ad interaction data and consent status managed by Google AdMob and UMP, subject to Google's Privacy Policy
  • FCM notification delivery data managed by Firebase, subject to Firebase's Privacy Policy
Uninstalling the app permanently removes all locally stored data — progress, hints, cached artwork, and preferences — from your device. Your saved and shared images in the gallery are not deleted and remain in your photos folder.

🛡️ Security

  • All coloring progress and game data are stored in the app's private SharedPreferences directory, inaccessible to other apps without root
  • API communication between the app and our backend uses HTTPS
  • AdMob and UMP connections use HTTPS with certificate pinning enforced by the Google Mobile Ads SDK
  • FCM token transmission to our backend uses HTTPS
  • Completed artwork images are saved to your gallery using Android's MediaStore API on Android 10+ — no broad storage permission is required
  • The app does not execute, modify, or transmit the content of any file on your device beyond its own cached data

👶 Children

Infinite Pixel is a relaxing coloring game suitable for all ages, but it is not specifically directed at children under the age of 13. We do not knowingly collect personal information from children. The game does not require account creation or any personal data to play.

The advertising content served by AdMob is subject to Google's family policies. If you are a parent or guardian and have concerns about your child's use of the app, please review this policy and contact us using the details in the Contact section below.

⚖️ Your rights

Because Infinite Pixel stores almost all data locally on your device, most control actions can be performed directly without contacting us:

  • Delete coloring progress: Clear the app's data in Settings → Apps → Infinite Pixel → Storage → Clear Data
  • Revoke notification permission: Go to Settings → Apps → Infinite Pixel → Notifications and disable them
  • Revoke storage permission: Go to Settings → Apps → Infinite Pixel → Permissions
  • Opt out of personalized ads: Disable the Advertising ID in Settings → Google → Ads
  • Withdraw ad consent (EEA users): Contact us to reset your UMP consent status, or reinstall the app to trigger the consent dialog again
  • Request deletion of FCM data: Contact us at the address below and we will remove your FCM token from our notification database within 30 business days
  • Delete all app data: Uninstall Infinite Pixel — all locally stored data is removed automatically

If you have a request that cannot be fulfilled on-device, contact us at the address below and we will respond within 30 business days.

🔄 Changes to this policy

We may update this policy periodically to reflect changes in the game's features or applicable regulations. Any changes will be published on this page with an updated revision date. For significant changes that affect your rights, we will update the policy version shown in the app's store listing.

Continued use of Infinite Pixel after any modification constitutes your acceptance of the updated policy.

We recommend reviewing this policy occasionally to stay informed about how we handle your information.

✉️ Contact

If you have questions, concerns, or requests related to this privacy policy or the handling of your data, you can reach us at:

Email:
team@letrasyacordesweb.com

Developer:
Infinite Pixel / LH Systems

Application:
Infinite Pixel – Color by Number

We are committed to responding to your request within 30 business days.