Privacy Policy

Your privacy is protected by clear, platform-specific rules.

Game Caption detects text on a game screen with the device camera and OCR. Camera images, video, and audio recordings are not uploaded to our servers. This policy covers the iOS and Android apps and gamecaptionapp.com.

Effective date: August 9, 2026

Data controller

Data controller and service provider: Batuhan Kumsal

Address: Körfez Mah. 5097 Sok. 7/15, Atakum/Samsun, Türkiye

Privacy, deletion, and support: support@gamecaptionapp.com

Android 18+ age requirement

The Game Caption Android app is intended only for users aged 18 or older. The Android app records an age-eligibility confirmation and does not request a date of birth. The Android eligibility record is designed to remain valid for no more than 365 days. This Android confirmation flow does not apply to the iOS app.

Camera, OCR, and Gemini

Camera images are converted into text by OCR on the device. No photo, video stream, or audio recording is uploaded to the Game Caption backend, Gemini, DeepL, or another translation provider.

For Gemini-powered translation, only OCR-extracted text, source and target language, selected game scope, and limited prior-subtitle context needed to preserve meaning are sent to the secure Firebase backend. The translation is returned to the app and may be stored in an identity-free cache to speed up repeated text.

On iOS, a user may optionally use DeepL Quality Mode with their own API key; that key is stored in iOS Keychain and is not stored on Game Caption servers. DeepL is not included in the Android app.

Voice Translation by platform

iOS: System Voice uses the iOS speech synthesizer. The existing optional Natural Voice runs a Core ML model bundled with the app on the device; text and audio files are not sent to the backend or Google Cloud Text-to-Speech for voice generation.

Android: Only the Android system Text-to-Speech engine is used. DeepL, Studio Voice, and Natural Voice are not currently available on Android; Natural Voice is a coming-soon feature. Studio Voice is not used for Call of Duty: Modern Warfare (2019). Android does not upload text or audio recordings for voice generation.

Android account, Support ID, and security

The Android app creates an anonymous Firebase Authentication account to bind the service, preview, and purchase entitlements securely. The account receives a Support ID that helps locate a support record and is not an authentication secret by itself.

Android requests may be verified with Firebase App Check and Google Play Integrity. Irreversible hashes of protected installation/device-related identifiers may be processed to prevent abuse and to protect the one-time preview and purchase ownership.

The Android account and associated Android data can be deleted in the app. See Delete Account and Data for detailed steps. The Android deletion worker does not modify iOS or shared data collections.

Free games, preview, and paid plans

On Android, Gemini translation for Call of Duty: Modern Warfare (2019), Grand Theft Auto V, and Resident Evil 9: Requiem is available without a per-user word quota or paywall. This path has global cost, rate, concurrency, and abuse-safety controls. If a safety limit is reached, the free service may be temporarily unavailable, but the app does not replace that condition with a paywall.

When this feature is enabled on Android and the eligibility conditions are met, users may receive one 40-minute in-app preview of Professional features. When offered, it does not automatically start a subscription. Premium AI includes 20,000 Gemini words per day and Professional includes 40,000 per day. Android purchases are processed by Google Play and iOS purchases by Apple App Store; Game Caption does not see or store payment-card details.

Records processed and why

  • Anonymous user ID, Support ID, age eligibility, and account/deletion state: service delivery, security, and request management.
  • Preview time, translation activity, and daily word counters: the one-time preview and plan limits.
  • Product, a secure purchase-token hash, subscription state, and expiry: Apple App Store or Google Play entitlement verification.
  • OCR text, limited context, and translation result: requested translation and the identity-free translation cache.
  • App Check/Play Integrity results and limited security records: automation, fraud, and cost-abuse prevention.

Diagnostics, advertising, and tracking

Firebase Crashlytics is enabled only in the Android production release for crashes and limited diagnostics that do not contain personal content; it is disabled in debug/developer builds. OCR text, tokens, and raw user or device identifiers are not added to Crashlytics events.

Game Caption does not use Firebase Analytics, show ads, run advertising SDKs, or track users across apps or websites. On iOS, Apple may provide aggregated crash or performance diagnostics only according to the user's device sharing settings.

Service providers and retention

Data or providerRetention information
Android translation cacheTarget maximum of 30 days from last access; it does not contain a user identifier.
Android free-service protection recordsTarget maximum of 48 hours for the per-user rate/concurrency guard and daily cost ledger.
Android age eligibilityUp to 365 days; it may be removed earlier through account deletion.
Deletion receipt and unlinked Play RTDN recordTarget maximum of 30 days for job safety and duplicate-processing prevention.
Google Cloud LoggingStandard _Default logs are retained for 30 days; security/audit _Required logs are retained for 400 days under Google Cloud configuration.
Firebase CrashlyticsUp to 90 days under the provider's standard retention.
Google GeminiProvider storage is disabled for Android production requests; Google may retain request/response data for abuse monitoring for up to 55 days.
Cloudflare Email RoutingRouting-event analytics for up to 31 days. Email is forwarded to a private Microsoft-hosted support mailbox; the private destination address is not published.
Support messagesTarget deletion within 30 days after the request closes; minimum records may be retained longer only when required for law, security, fraud, payment, or disputes.

Firestore periods are target maximum application-retention windows. Automatic physical deletion depends on the relevant live Firestore TTL policy being enabled and applied. If TTL has not yet been verified, an expired record may remain in physical storage longer even though the app no longer treats it as valid.

Website and support email

gamecaptionapp.com is a static website. Game Caption currently adds no advertising, user analytics, marketing pixels, application cookies, or separate access-log database to the site. Cloudflare may process traffic and security metadata under its service terms.

Cloudflare Email Routing is active and verified for support@gamecaptionapp.com. Messages are forwarded to a private Microsoft-hosted support mailbox. Your email address, message, and attachments are used only to answer the request and complete necessary security or legal work.

Your choices and requests

You may request access, correction, or deletion by contacting support. For an Android account, the safest and fastest method is Settings > Privacy and Data > Delete account and Android data in the app. If the app is unavailable, follow the web deletion instructions.

Deleting an account or app data does not automatically cancel an Apple App Store or Google Play subscription; manage the subscription separately in the relevant store.