Privacy Policy
Last updated: 29 October 2026
This policy covers the mobile app Taiwan Driving Test & Guide and the website taiwandrivingtest.com.
The short version
There is no account, no sign-up and no login, and we never ask for your name or phone number. An email address is optional only when you send a problem report and want a reply. Your studying stays on your own device. A few optional services do reach the outside world, and each has its own section below. Advertising, because the free version is paid for by ads. Purchases, if you choose to remove those ads. Notifications, but only if you switch them on yourself. A problem report, on the days you decide to send one. On the website, the guide assistant sends the question you choose to ask to Anthropic so it can answer from this site's published guides. We do not store those questions or answers.
What the app stores on your device
To let you pick up where you left off, the app saves the following in your device's local storage. It never leaves your phone, and it is not readable by us or anyone else:
- Which questions you have answered and whether you got them right
- Questions you have bookmarked
- Your mock-exam results history
- Your settings, meaning vehicle type, language, theme, text size and exam date
- Which steps of the guide you have ticked off
Deleting the app removes all of it. You can also clear your exam history from inside the app at any time.
Videos and audio lessons
The audio lessons, and from version 1.0.10 the hazard-perception clips, are not inside the app download, to keep it small. The first time you open a hazard question, the clip is fetched from audio.taiwandrivingtest.com, which is our own storage on Cloudflare R2, and the rest of that vehicle's clips are saved on your phone so they play without a connection afterwards. An audio lesson is fetched from the same place when you press play. Those requests carry nothing about you beyond what any download carries (your IP address, which Cloudflare needs to send the file back), no account is involved, and we cannot tell one person from another. Deleting the app deletes the saved clips.
Advertising
The free version shows a banner while you practise, and a full-screen ad when you open a study topic, start a mock exam or leave the result of one. Never before you have seen your score, and never on the review, wrong-answer or bookmark sections. Those ads come from Google AdMob or from Unity (through its LevelPlay service, which can pass the request on to the ad networks it works with, currently Unity Ads and Liftoff Monetize, formerly Vungle), and some of them are video. To serve them, and to count them and prevent fraud, the network receives technical data from your device such as your IP address, your device model and operating system, your approximate location derived from that IP address, diagnostic data about how the ad loaded, and advertising identifiers. On Android, Unity Ads also checks which app stores are installed on the device (for example Google Play, Samsung Galaxy Store or Huawei AppGallery) and sends that short list with the ad request. It does not look at any of your other apps. What each one does with it is governed by its own policy, Google's and Unity's and Liftoff's.
By default the app asks Google for non-personalised ads, which are chosen from the app's own context rather than from a profile of you. If you are in the European Economic Area or the United Kingdom, a Google consent form appears the first time the app loads an ad, and your answer decides whether ads may be personalised, whichever network serves them. You can change or withdraw that answer at any time from Settings, under "Ad privacy settings".
On iPhone and iPad, the system also asks once whether the app may use the advertising identifier to track you. If you say no, ads are served without it. You can change that answer later in the iOS Settings app, under Privacy & Security, Tracking.
Ads never appear over your exam results, and never in front of the review, wrong-answer or bookmark sections. The one-time purchase below removes them entirely.
Purchases
Removing the ads is a one-time in-app purchase. The payment itself is handled by Apple or by Google, never by us, and we never see your card. To remember that you paid, and to make Restore work on a second device or after a reinstall, purchases are managed through RevenueCat, which stores an anonymous identifier for your installation together with the store receipt, your country, and the app language and vehicle track you have selected. While the app shows ads it also tells RevenueCat when the offer to remove them appears, and what each ad shown earned, so we can see in one place whether the offer is seen at all and how the app pays for itself. It is not tied to your name, and we cannot use it to identify you. Their policy is at revenuecat.com/privacy.
Notifications
Notifications are off until you turn them on with the switch in Settings, which is the only place the app ever asks. They exist because a licence takes months and the deadlines (the learner permit, the medical certificate, the exam date you set) are easy to miss.
There are two kinds, and they work differently. The exam reminders are scheduled by your own phone from the exam date you typed in, so nothing about that date is sent anywhere, they work with no internet connection, and they arrive even if you have not opened the app in weeks. Clearing the date, or turning the switch off, deletes them from the phone.
The other kind is a push, used only for something your phone cannot work out on its own, such as the government changing a rule of the exam. That one needs a service. That service is OneSignal. Every copy of the app registers with it when it opens, with an identifier for the device and a few labels describing where you are in the process, so that a message about booking does not reach someone who has already booked, and so that tips shown inside the app match your stage. Those labels are your language, your vehicle track, the exam date you entered, whether you have passed a mock exam, whether you have removed the ads, a one-word stage such as studying or exam soon, and how far through the guide you are. They contain nothing you have written and no way to reach you outside the app. A push only ever reaches your phone if you switch notifications on, and switching them off stops it. To have your record there deleted, write to the address at the foot of this page. Their policy is at onesignal.com/privacy_policy.
Reporting a problem
The app has a "report a problem" form, in Settings and next to every question. It is the way a wrong answer or a bad translation gets fixed, so it matters that it is easy to use, and it is the only moment the app sends us something you wrote.
When you send one, we receive your message, the language and vehicle track you are studying in, the app version and the kind of phone you are on, and, if the report came from a question, that question's number and the text of it as you were reading it. If you fill in the optional email field, we receive that too, and only so that we can reply. Nothing else about you or your studying is attached, and the form is never sent by itself, only when you press send.
The report is stored by us on Cloudflare and a copy is emailed to us through Acumbamail, our email provider. Your internet address is not stored, only an unreadable fingerprint of it that lets us stop the same sender flooding the form. If your phone has no connection when you press send, the report waits on your device and leaves the next time you open the app, and it is discarded if it has not managed to send within two weeks.
So that you can see what became of a report, your phone keeps a copy of what you sent, on the device only, under "My reports" in Settings. When you open the app it asks us for the status of those reports, sending only their reference numbers, and gets back the status and any reply written for you. Nothing else is sent with that request, and if you have never sent a report it never happens.
Reports are kept while the problem they describe is still worth acting on, and no longer than two years. If you sent one and want it deleted, write to hello@celiarozalenm.com from the address you used and it will be removed.
The questions everyone gets wrong
The app can show a list of the questions other learners miss most often. To build it, the first time you answer each question the app sends us two things, which question it was and whether your answer was right. Nothing else goes with them: no name, no account, no device or advertising identifier, no language and no score, so what we hold is a running count per question and nothing that can be traced back to you or to your phone.
The answers are sent in small batches, stored by us on Cloudflare, and kept only as those totals. As with problem reports, your internet address is not stored, only an unreadable fingerprint of it, used for one hour to stop a single sender flooding the counts.
What the app does not do
- No account, and no name or phone number is ever requested (an email is optional, only inside a problem report, and only for a reply)
- No analytics product watching how you use the app
- No selling of data; service providers receive only the data described on this page
- No location, contacts, photos, microphone or camera access
- Your bookmarks, scores and exam history are never uploaded, and of your answers only the anonymous right-or-wrong count described above leaves the phone
Links to other websites
Two features open your device's browser on a site we do not control: the hazard-perception questions link to the official videos published by the Directorate General of Highways (MOTC), and the guide can open Google Maps to help you find a test centre. Once you leave the app, the privacy policy of that site applies instead of this one.
Read-aloud
The read-aloud button uses the text-to-speech engine built into your phone. Depending on your device and its settings, that engine may be provided by Apple or Google and may process the spoken text under their own privacy policies. The app itself sends nothing.
Your choices
- Turn notifications off in Settings, and no push reaches your phone
- Write to us to have your OneSignal record deleted
- Change or withdraw your ad consent in Settings, under "Ad privacy settings"
- Buy the ad removal, and no ad request leaves the app at all
- Reset the advertising identifier from your phone's own privacy settings
- Never send a problem report, and nothing you write ever leaves the phone
- Delete the app, and everything stored on the device goes with it
To ask what is held about your installation, or to have it deleted, write to hello@celiarozalenm.com. Since there is no account, please say which device and roughly when you installed the app, so the right anonymous record can be found.
Children
The app is a study aid for a driving licence, an exam you must be 18 to sit, so it is not directed at children. Ads are requested with a general audience content rating, and the app does not knowingly collect anything from a child under 13. If you believe a child has used it, write to us and the associated data will be deleted.
Website
Most of the website is made of static pages. It shows you no advertising. It stores a single item in your browser's local storage, which remembers the language you were reading in so the homepage can send you back to it next time.
Guide assistant
Pages in the eight guide languages include an optional question box. When you submit a question, it and up to the last ten turns of that conversation are sent through our Cloudflare service to Anthropic's Claude API. Claude receives the published guide text for the language of the page and is instructed to answer only from that text. A second Claude request checks the proposed answer against the pages it cites. Anthropic processes this material to provide the answer under its privacy policy.
We do not save the question, the answer or the conversation. The conversation remains only in the open browser tab and disappears when the page is reloaded. Before a question is sent, Cloudflare Turnstile checks that the request comes from a person rather than automated software. Cloudflare receives the technical browser and network signals needed to perform that check under its privacy policy; we receive only whether the check passed. To prevent further abuse, our Cloudflare database keeps only a one-way, salted fingerprint made from the visitor's IP address. It changes every day and is used to count requests, currently no more than fifty per hour and two hundred per day. We also keep monthly totals of API tokens and estimated cost, with no question text attached. The fingerprint and counters do not let us read what you asked.
Office finder and map
The office finder works entirely in your browser. An address you paste is read on the page to pick out the city and district, and is never sent anywhere. If you tap "use my location", your browser asks for permission first, and the position it returns is only compared with the office coordinates already on the page; it is not sent to us or to anyone else. We count that the finder was used, with the vehicle and the city or county chosen, never the district or the address.
The map further down that page is drawn from OpenFreeMap, a free map service built on OpenStreetMap data. It loads only when you scroll to the map or tap to show it, and from then on your browser requests map tiles from OpenFreeMap's servers, which see your IP address and the area of the map you are looking at, as any web server would. OpenFreeMap sets no cookies.
There is one exception to "no third parties" and we would rather spell it out than leave it in the page source for you to find. Every page loads a script from Google AdSense. It is there so that Google can confirm we own this domain, which is a step we have to complete for the advertising inside the app to work at all. Automatic ads are switched off, so the script displays nothing and no ad slot exists on any page here. It is still Google's code running in your browser, though, and unlike the analytics above it is not cookieless, so Google may set or read a cookie of its own and will see the address of the page you are on. If we ever turn real ads on, this page changes first and says so plainly.
Visits are counted with Umami, an analytics tool we run on our own server (analytics.celiarozalenm.com). It uses no cookies and builds no profile of you. Each visit is recorded as the page viewed, the site that linked you here, and the country, browser, device type and operating system your browser reports, none of which identifies you personally. Your IP address is used only to work out the country and is not stored. On the licence checker, the country you look up is also counted, so we know which nationalities the tool is serving.
While the app is waiting to be published, some pages carry a form that asks for your email address so that we can tell you when it is out. It is optional and separate from the guide assistant. If you leave your address we store it, along with the language you were reading the site in and the country your visit came from, on Cloudflare, and we use it once, to send you a single message on the day the app is released. That message goes out through Acumbamail, our email provider, and carries a one-click unsubscribe link. Your address is never sold, never shared, and never added to any other list, there is no newsletter to be put on, and writing to hello@celiarozalenm.com at any moment has it deleted. The form itself disappears from the site the day the app goes live.
The podcast page carries a player for each episode. Nothing is downloaded until you press play, and when you do, the audio is requested from audio.taiwandrivingtest.com, which is our own storage on Cloudflare R2. No third party is involved, no account is needed, and there is no way for us to tell one listener from another. Subscribing through a podcast app instead means that app fetches the same files, and what it reports back is between you and them.
Some answer pages carry the government's own demonstration videos, and the car and motorcycle guides carry our own walk-through of the practical test, all of them published on YouTube. They are not embedded on arrival. What the page loads is a button, and the YouTube player is only created if you press it, so simply reading the page sends nothing to Google. If you do press play, the video is requested from youtube-nocookie.com and from that moment YouTube receives your IP address and can set storage in your browser, under Google's privacy policy. Not pressing play keeps the page free of any third-party request.
Question content
The questions come from the public examination banks published by the Directorate General of Highways, Ministry of Transportation and Communications (公路局, 交通部). This app is not affiliated with, endorsed by, or operated by any government body.
Changes
If this policy changes, the new version will be published on this page with an updated date above. Any change that affects what data the app handles will also be described in the app's release notes.
Contact
Questions about this policy: hello@celiarozalenm.com
The same address is where the about page invites corrections to the guide. If you write in, your message and your address are used to reply to you and to fix the guide, nothing else. They are not added to any mailing list and they are not shared.