TheoryGo

Privacy Policy

This Privacy Policy explains how TheoryGo (“the App”, “we”, “us”, or “our”) handles information about you when you use the App. TheoryGo is a mobile application that helps you study the Dutch traffic rules and take practice (“mock”) theory exams, and it offers an optional paid subscription that unlocks the full feature set.

The App is published by Igor Lobanov, an independent developer, acting as the data controller for the limited personal data described below. The App is offered to users in the Netherlands and the wider EU/EEA. We apply the EU General Data Protection Regulation (GDPR) to the processing of personal data of users in the EU/EEA, and we honour the rights described in Your Rights for those users.

Information We Collect

Information you provide to us

None. The App has no user accounts and does not ask you to provide personal information such as your name, email address, or payment-card details.

Information collected automatically

When you use the App, the following information may be collected automatically by us or by our third-party providers:

  • A device identifieron iOS the “Identifier for Vendor” (IDFV) and on Android the Android ID. This is used to recognise your device across app launches for analytics, crash reporting, and to restore your subscription.
  • Usage and interaction dataanonymous, event-based analytics about how the App is used (for example: starting or completing a lesson or exam, exam score and pass/fail result, opening the subscription screen, changing the language or theme). These events do not contain your name or contact details.
  • Crash and diagnostic dataif the App crashes or encounters an error, we receive crash logs, stack traces, and contextual diagnostic information to help us fix problems.
  • Technical and device informationsuch as device model, operating system and version, app version, language/region settings, and similar technical data collected by our providers.
  • Advertising identifier and ad datato show ads to non-subscribers, Google AdMob may use your device's mobile advertising identifier (Apple's IDFA on iOS, Google Advertising ID on Android), your IP address, and information about your ad interactions. You can reset or limit this in your device settings (see “Advertising”).
  • Approximate location (coarse)our analytics and advertising providers may infer an approximate region (e.g. country) from your IP address. The App does not use GPS or collect precise location.
  • Subscription statuswhether you have an active subscription, and the associated purchase/transaction information used to manage and restore it.

Information stored only on your device

The following data is stored locally on your device (using on-device storage) and is not transmitted to us:

  • Onboarding completion status;
  • Language and theme preferences;
  • Sound and vibration settings;
  • Favorite questions and bookmarks;
  • Questions answered incorrectly and their spaced-repetition review schedule;
  • Mastered questions;
  • Exam history (scores, dates, durations, and pass/fail results);
  • Your subscription/“premium” status flag and daily free-exam counter.

You can clear this on-device data at any time by using the reset option inside the App's settings, or by uninstalling the App.

How We Use Your Information

We use the information described above to:

  • Provide, operate, and maintain the App and its core study and exam features;
  • Provide, verify, and restore your paid subscription;
  • Display advertising to users who do not have an active subscription;
  • Understand how the App is used so we can improve it and fix problems;
  • Detect, prevent, and address technical issues, fraud, and abuse;
  • Comply with our legal obligations.

Legal bases (for EU/EEA users under the GDPR). We rely on:

  • Performance of a contractto provide and restore your subscription;
  • Our legitimate intereststo operate and improve the App, perform crash diagnostics, and ensure security and prevent abuse;
  • Consentwhere consent is required by law, including for personalized (interest-based) advertising and the use of advertising identifiers (and, on iOS, your App Tracking Transparency choice). You may withdraw consent at any time (see “Advertising” and “Your Rights”).

Third-Party Services and Data Sharing

We do not sell your personal data. We share limited data with the following service providers, who process it on our behalf or as independent controllers for the purposes described:

Google Firebase

Analytics, Crashlytics, Remote Config

Provided by Google. We use Firebase Analytics to understand anonymous app usage, Firebase Crashlytics to receive crash and error reports, and Firebase Remote Config to adjust certain in-app settings remotely. Data shared may include your device identifier, usage events, crash logs, and technical/device information.

Google AdMob

Advertising

Provided by Google. We use AdMob to display ads to users who do not have an active subscription. These ads may be personalized (interest-based). To do this, Google may use your device's mobile advertising identifier (IDFA/Advertising ID), IP address, and information about your device and ad interactions to select and measure ads, cap ad frequency, and prevent fraud and abuse. On iOS, personalized advertising depends on your App Tracking Transparency choice; if you do not allow tracking, you will be shown non-personalized ads. You can opt out of ad personalization or reset your advertising identifier in your device settings (see “Advertising”).

RevenueCat

Subscription Management

Provided by RevenueCat, Inc. We use RevenueCat to manage and restore in-app subscriptions. RevenueCat receives your device identifier and purchase/subscription information. The actual payment is processed by the App Store (Apple) or Google Play (Google); we never receive or store your payment-card details.

Apple & Google

App Stores / Payments

Your purchase of a subscription is processed by Apple (App Store) or Google (Google Play) under their own terms and privacy policies.

Advertising

The free version of the App shows ads provided by Google AdMob. By default, these ads may be personalized (interest-based) — selected using information such as your mobile advertising identifier and your ad interactions.

When ads first appear, we ask for your consent through a consent form (provided by Google's User Messaging Platform), and on iOS through the App Tracking Transparency prompt. Your choice determines whether you see personalized or non-personalized ads, and you can change it at any time:

  • On iOSApple requires your permission (App Tracking Transparency) before an app can access the advertising identifier (IDFA) for tracking. If you do not grant permission, you will be shown non-personalized ads. You can change your choice at any time in Settings → Privacy & Security → Tracking.
  • On Androidyou can opt out of ad personalization and reset or delete your Advertising ID in Settings → Google → Ads (or Settings → Privacy → Ads).

You can remove all ads entirely by purchasing a subscription.

Subscriptions and Payments

The App offers an optional paid subscription that unlocks the full feature set and removes ads. Subscriptions are sold and billed through the App Store (Apple) or Google Play (Google), and managed through RevenueCat. We do not collect or store your payment-card information. Billing, renewals, and cancellations are handled by Apple or Google according to their terms.

Data Retention

Data stored locally on your device is kept until you reset it within the App or uninstall the App. Data held by our third-party providers (Firebase, AdMob, RevenueCat) is retained according to their respective retention policies. We keep analytics and crash data only for as long as necessary for the purposes described in this policy.

Data Security

We rely on reputable providers (Google, RevenueCat, Apple) whose services transmit data over encrypted connections. On-device data is stored using the operating system's app storage. Because the App has no first-party servers, we do not maintain a central database of your personal data. No method of transmission or storage is completely secure, and we cannot guarantee absolute security.

International Data Transfers

Our service providers (including Google and RevenueCat) may process data on servers located outside your country, including in the United States. Where data of EU/EEA users is transferred internationally, these providers rely on appropriate safeguards (such as the European Commission's Standard Contractual Clauses).

Your Rights

If you are located in the EU/EEA, you have the following rights under the GDPR:

  • Accessto request a copy of the personal data we hold about you;
  • Rectificationto have inaccurate data corrected;
  • Erasureto have your personal data deleted (“right to be forgotten”);
  • Restrictionto restrict our processing of your data;
  • Portabilityto receive your data in a portable format;
  • Objectionto object to processing based on legitimate interests;
  • Withdraw consentwhere processing is based on consent, at any time;
  • Complaintto lodge a complaint with a supervisory authority. In the Netherlands this is the Dutch Data Protection Authority (Autoriteit Persoonsgegevens, autoriteitpersoonsgegevens.nl).

Because the App does not collect your name or contact details, we may have only a device identifier and no way to link it to you personally; in some cases this may limit our ability to identify your data, but we will make reasonable efforts to honour valid requests.

To exercise any of these rights, contact us at support@theorygo.app. You can also limit data collection by adjusting your device's privacy and advertising settings, or by uninstalling the App.

Children's Privacy

The App is intended for users who are preparing for the Dutch driving theory exam and is not directed to children under the age of 16. We do not knowingly collect personal data from children. If you believe a child has provided data to us, please contact us at support@theorygo.app and we will take appropriate steps.

Changes to This Privacy Policy

We may update this Privacy Policy from time to time. When we do, we will revise the “Last updated” date above and, where appropriate, provide notice within the App or on the App's store listing. Your continued use of the App after an update means you accept the revised policy.

Contact Us

If you have any questions or requests regarding this Privacy Policy or your data, we'd like to hear from you.

Igor Lobanov

Developer & data controller, TheoryGo

support@theorygo.app