Privacy policy
Privacy policy
Last updated 2026-08-14
Hungarian Cultural Exam Trainer is operated by TLM Software Design, Inc., a Michigan corporation with offices at 27280 Haggerty Road, Ste C-6, Farmington Hills, MI 48331, USA ("we", "us", "our"). This policy describes what the app collects, why, where it goes, and the choices you have.
Summary
- All learning content and the question bank are bundled with the app and work fully offline. We don't run a server that your studying or exam-taking touches.
- Your exam history, accuracy stats, opened subtopics, and settings live only on your device and are lost on uninstall.
- No account, no sign-in, no profile lookup. We never see your name, your answers, or your exam history.
- The only network traffic the app generates is to Google AdMob (free-tier ads), RevenueCat (purchase verification for the one-time Premium unlock), and Google Firebase (crash reports and basic install/lifecycle analytics).
- On iOS the app does not request App Tracking Transparency and does not read the IDFA. Ad personalization is otherwise governed by Google AdMob, applicable regional consent (GDPR / CCPA), and your device-level ad settings.
What the app stores on your device
The following values are written to platform key-value storage
(SharedPreferences on Android,
UserDefaults on iOS). None of it is
transmitted to our servers, the ad network, or any third party.
- Exam attempt history — a per-question record (topic, mode, correct/incorrect) used to compute your home-screen readiness percentage and per-topic accuracy. No question or answer text is stored here — only which questions you attempted and whether you got them right.
- Opened subtopics — which subtopics you've read, used to drive the Study Plan's done / in-progress / not-started status.
- Interface language, content-translation preference, and theme mode — your chosen UI language (English, Spanish, French, Russian, Chinese, Arabic, or Turkish), whether you have Hungarian content translated, and light/dark/system theme.
- Daily exam-attempt counter — a date-keyed count used to enforce the free tier's 5-exams-per-day limit. This is a local counter with no server-side backup, so it resets if you reinstall the app or clear its data — a trade-off we've accepted for simplicity over abuse-resistance.
- Daily reminder preference — whether the optional "take an exam today" notification is enabled (on by default; toggle it off any time in Settings).
- Premium entitlement flag — a cached boolean (set by RevenueCat on successful purchase/restore) so the app can skip ad requests and the daily limit without a network round-trip on every launch. RevenueCat is the authoritative source; this cache is advisory only.
There is no account, no cloud sync, no backup target. Wiping the data is one app-uninstall away.
Network behavior
Reading study content and taking exams is fully offline — the topics, subtopics, and question bank are bundled with the app at install time. Only three external services receive traffic:
- Google AdMob — when the app needs to fetch an ad creative (a banner, an occasional interstitial, and an opt-in rewarded video), free-tier only.
- RevenueCat — when you initiate or restore the Premium purchase.
- Google Firebase — Crashlytics uploads on crash, Analytics on app-launch and lifecycle events.
If the device is offline, studying and exam-taking work normally. The banner slot remains reserved but blank, interstitials and the purchase flow retry once connectivity returns, and crash reports queue locally and upload on the next connectivity window.
Daily study reminder (notifications)
The app can show a local "take an exam today" notification, entirely generated and
scheduled on your device — no push notification server is involved, and no data
about you is sent anywhere to make this work. On Android 13+ this requires the
POST_NOTIFICATIONS runtime permission,
which the app requests only if you leave the Settings › "Daily reminder" toggle
on (enabled by default). You can turn it off, or deny/revoke the OS permission, at any
time without affecting any other feature.
Android permissions
The app's own manifest requests:
android.permission.INTERNET— required for the ad network, purchase verification, and crash/analytics reporting.android.permission.POST_NOTIFICATIONS— the optional daily study reminder described above (Android 13+).-
com.google.android.gms.permission.AD_ID— declared by the bundled Google Mobile Ads SDK (not by the app's own manifest); it lets the ad network use the resettable advertising ID for ad delivery and fraud prevention.
No camera, microphone, location, contacts, storage, calendar, or biometric permissions are requested.
Ad network — Google AdMob
The free tier of Hungarian Cultural Exam Trainer is ad-supported. Google AdMob serves a banner ad and an occasional interstitial ad on the Learning topic list and Exam result screens. It also offers an opt-in rewarded video ad on the daily exam-limit screen — watching one to completion grants 5 extra practice exam attempts for that day. Ads are hidden entirely once you purchase Premium.
On iOS the app does not request App Tracking Transparency and does not read the IDFA, so iOS ads are served without that identifier. The app does not set ad-personalization flags itself — whether ads are personalized is governed by your Google AdMob settings, applicable regional consent (GDPR / CCPA), and your device-level ad preferences. AdMob's data practices are governed by Google's privacy policy at policies.google.com/privacy and the AdMob & AdSense privacy and terms page at policies.google.com/technologies/partner-sites.
In-app purchase — RevenueCat
The Premium non-consumable purchase (removes the daily exam limit and all ads, permanently) is managed by RevenueCat. When you initiate or restore a purchase, RevenueCat receives an anonymous, app-generated user ID and the store receipt to verify the entitlement. Payment itself is handled entirely by Apple App Store or Google Play — we and RevenueCat never see your payment method or financial details.
Crash reporting and analytics — Google Firebase
Firebase Crashlytics captures stack traces, device model, OS version, app version, and a Firebase installation ID when the app crashes. Firebase Analytics records a small set of install and lifecycle events (for example, an exam being started or completed, a topic opened, a language or theme changed), on both iOS and Android. Neither service receives question or answer text, your exam score details, or your saved study content.
Firebase data is governed by Google's privacy policy. Default retention is up to 14 months for Analytics; Crashlytics reports can be purged on demand from the Firebase console.
Children
Hungarian Cultural Exam Trainer is intended for a general audience aged 13 and up (16 in the EU/UK) — it is a study aid for an adult residence-permit exam. It is not listed as a children's app and is not directed at children, and we do not knowingly collect personal data from children. If you believe a child has interacted with the app and we have collected anything we shouldn't have, contact privacy@swtlm.com and we will delete it.
Your rights and choices
Because we hold no account data or personally identifiable information on our servers, most data-subject rights — access, portability, deletion — are satisfied by uninstalling the app, which removes all on-device storage. Ad-personalization preferences can be managed through your device's settings (Settings › Privacy › Ads on Android; iOS Tracking is never requested). For AdMob or Firebase data held by Google, see Google's privacy controls.
To exercise any rights or raise a privacy concern, email privacy@swtlm.com and we will respond within 30 days.
This website
These pages (apps.swtlm.com/hungarian-exam-trainer)
are static and hosted on AWS S3 + CloudFront. The site
uses Google Analytics to count visits — pages viewed, session count, referral source.
Analytics cookies (_ga,
_ga_*) are set only after you accept via the
cookie banner; decline and no analytics script loads and no cookie is set. You can withdraw
consent at any time by clearing this site's local storage in your browser. AWS also records
standard CDN access logs (IP address, timestamp, requested URL) under their default logging
policy, never joined to any in-app identifier.
apps.swtlm.com is one website: this page and every app page on it share a single analytics
property and a single consent choice, so accepting or declining once applies everywhere on
the domain. That is the analytics only. This privacy policy covers Hungarian Cultural Exam
Trainer and its pages, and nothing else — every other app on apps.swtlm.com has its own
policy, because every app handles different data.
Service providers
- Google AdMob — free-tier in-app advertising (banner + interstitial).
- RevenueCat — Premium in-app purchase management and entitlement verification.
- Google Firebase — Crashlytics + Analytics.
- Amazon Web Services (S3 + CloudFront) — hosts this marketing page; receives standard CDN access logs that are not joined to any in-app identifier.
Content sourcing
Learning content is original writing based on facts published in the official, publicly available Hungarian Cultural Knowledge Exam study aid — not a verbatim reproduction. This app is an independent study aid; it is not affiliated with, endorsed by, or sponsored by the Hungarian government or any state institution, and it does not provide legal or immigration advice.
Changes to this policy
We will post material changes here and update the "Last updated" date above.
Contact
Privacy questions: privacy@swtlm.com. General support: info@swtlm.com.
TLM Software Design, Inc.27280 Haggerty Road, Ste C-6
Farmington Hills, MI 48331
USA