Last updated: 26 October 2026
| 繁體中文 | 简体中文 |
This page applies to the iOS version. The Android version has a separate policy because it has no iCloud backup.
ThaiJam does not sell your data. The only ads are rewarded ads you choose to watch, served by Google AdMob (see “Ads: watching an ad for cans”); we don’t give advertisers your account or learning data. Most data starts on your device. Depending on the features you choose, the app may connect to ThaiJam’s servers, your private iCloud database, lyric and music services, or the third-party AI providers that process content for AI and speech features, as described below. The one connection that does not wait for you to do anything is the launch-time fetch of the social invitation card’s content (item 4 under outbound network connections) — that request carries no account, no device identifier and no study data.
On first launch, ThaiJam asks you to choose between starting to learn straight away and linking an Apple or Google account. If you choose to start straight away, ThaiJam creates a random anonymous ThaiJam account identifier and session — this lets server-backed features work without asking for your name or email. If you choose to sign in, no anonymous account is created. Most on-device features do not require Apple or Google sign-in. You must link Apple or Google before buying AI Credits or using the same ThaiJam account reliably on another device. Spotify uses its own authorization page.
ThaiJam includes Google AdMob only for rewarded ads (see “Ads: watching an ad for cans”) and has no third-party analytics package. It does not record which screens you open or how long you spend on them. AI service usage records are described under “AI usage records.”
| Data | Where it is stored | Purpose |
|---|---|---|
| Study results, review schedule, streak activity, and which learning-map lessons you finished with their quiz scores | On-device database; ThaiJam servers if cross-device sync is enabled | Schedule reviews and continue on another device |
| Pronunciation score and assessment time, excluding the recording | On-device database; ThaiJam servers if cross-device sync is enabled | Practice history and sync |
| Cards, decks, hidden state and deck membership you create or import | On-device database; ThaiJam servers if cross-device sync is enabled | Your study content and sync |
| Song details and lyrics you add | On-device database; ThaiJam servers if cross-device sync is enabled | Song study and sync |
| AI word notes and purchased song-analysis results | On-device database; ThaiJam servers if cross-device sync is enabled | Preserve results you spent credits on |
| Renames and colors applied to official decks | On-device database; ThaiJam servers if cross-device sync is enabled | Preserve your customizations |
| Study Coin balance and ledger | ThaiJam servers | Prevent duplicate grants and keep the balance consistent |
| Owned themes, icons and content packs; remaining hint tickets and streak shields | ThaiJam servers | Preserve ownership and prevent duplicate rewards |
| Imported audio and artwork | App documents folder; your private CloudKit database if iCloud audio backup is enabled | Singing practice and media restoration |
| Spotify authorization token | Device Keychain | Search Spotify and control playback; it is not uploaded or synced |
| Spotify Client ID | Device preferences; iCloud KVS if iCloud audio backup is enabled | Connect the Spotify developer app selected by you; no Client Secret is stored |
| Daily review limit and card color setting | Device preferences; ThaiJam servers if cross-device sync is enabled | Keep reward-affecting and purchased settings consistent |
| Other display preferences | Device preferences only | Keep device-specific choices, such as text size, local |
| Random content-installation identifier | Device preferences; sent only to the content service when used | Downloads and error handling |
Imported audio and artwork are never uploaded to ThaiJam’s servers. If you enable iCloud audio backup, they are stored as media assets in your own private CloudKit database. Song title, artist, lyrics and translation may sync because they are editable study data; the media files do not.
If you turn off cross-device sync, later changes remain only on the device. Removing the app removes local data. Data already stored on ThaiJam’s servers can be exported or deleted from Account settings.
The anonymous identifier is created only when you choose to start without signing in. It contains no name, email address, or provider account. It is persistent and is associated with server-backed data. If you later sign in with Apple or Google, ThaiJam attempts to link that provider to the same user ID so your existing data is preserved. If the provider already belongs to another ThaiJam account, the app asks before switching and does not merge the two server accounts automatically.
The features below belong to your ThaiJam account and are stored on ThaiJam’s servers. None of them stores recordings.
| Data | Purpose |
|---|---|
| Which dramas you picked, which one you are studying now, your daily pace and, if you set one, your departure or target date | Pick “today’s step” and continue across your devices |
| A record for each answer: mission and question IDs, how you answered (spoken, typed, word tiles, fill-in, choice), result, stars, hints used, time, content version | Continue progress, schedule next-day checks, award ability badges and Study Coins |
| Ability badges you earned: which badge, when, how you earned it (spoken or typed), and the IDs of the answer records it rests on | Keep your badges on a new device or after reinstalling; never pay the same badge twice |
Answer records contain no recordings and none of the words you said or typed — only the result.
Something is saved only when you tap “Save to study set”. A saved item holds:
Recordings are not saved. Your study set is visible only to you and never appears in the weekly community or any public page. You can delete any item, export selected items as text, and everything is deleted with your account. If your plan ends, saved items stay readable and deletable; you just can’t add new ones.
| Data | Purpose |
|---|---|
| The tickets you hold (trial, make-up check-in, double coins, card pack, outfit) — source, quantity and expiry of each batch | Keep them on every device |
| Each time a ticket is received, used or expires; when double coins are active; trial history | Prevent double claims or double use; support requests |
| When ThaiJam grants tickets: the staff member and the reason | Internal audit. Audit records do not contain your email |
For redeem codes, the server stores only a hash of the code and who redeemed it, not the code itself.
Your results are private by default. They become public only when you choose to share, look at the preview and confirm. A shared card can only contain:
A card cannot contain free text, recordings, photos, your answers, study dates or account identifiers; nothing from your personal study set appears in the community.
| Data | Notes |
|---|---|
| Your shares, the encouragement you give to others, your vote for next week’s topic | Fixed options only; one encouragement per share and one vote per week, both changeable |
| Who you blocked | Only you know; once blocked, neither of you sees the other |
| Reports (fixed reasons) and moderators’ decisions | Deleted automatically after one year |
Withdrawing a share removes only the public card, not your private progress or badges. When you delete your account, your shares, encouragement and votes are removed; in reports and moderation records still within their retention period, your account is replaced by an identifier that cannot be traced back to you.
Only after you allow notifications. To deliver them we keep:
| Data | Purpose |
|---|---|
| This device’s push token (issued to the app by Apple or Google), platform, app language and time zone | Deliver to the right device, in your language, at a suitable time |
| Whether you agreed to service notifications (support replies, rewards) and to promotional notifications, and when you agreed to the latter | Send only the kinds you agreed to; promotional notifications are off by default |
| Which device each notification was sent to and whether it was delivered | Avoid duplicates and troubleshoot delivery |
Notifications are written by ThaiJam and delivered through Apple’s push service (iOS) or Google’s push service (Android). You can turn them off at any time in system or app settings; tokens and delivery records are deleted with your account.
If you turn on the streak countdown, we keep this device’s Live Activity token, time zone, language, how many hours ahead to remind you, and today’s goal, answers and streak, to update the countdown on the Lock Screen and Dynamic Island. Turning it off stops updates; it is deleted with your account.
| Identifier | Purpose | Retention |
|---|---|---|
| Anonymous ThaiJam user ID | Server-backed features without registration | Until account deletion |
| Random installation ID | Content downloads and request limits | Cleared when the app is removed |
| Provider-specific Apple or Google user ID, if linked | Find the same ThaiJam account on another device | Until account deletion |
| App Attest device-key information | Confirm that protected requests come from an authentic ThaiJam app | Until account deletion |
For the one-time welcome grant, Apple DeviceCheck stores device bits for ThaiJam. ThaiJam does not receive a reusable hardware identifier from DeviceCheck. None of these identifiers is used for advertising or tracking across apps.
ThaiJam does not use any third-party analytics or crash-reporting SDK, and it does not record your navigation through the app. However, each AI request creates a service record linked to your ThaiJam account containing:
These records support credit reconciliation, refunds after failed requests, cost control, service reliability and abuse prevention. They do not contain the text you submitted. Aggregated request counts and costs may be used for service analytics. This corresponds to the Product Interaction disclosure in the app’s App Store privacy information.
The app may connect to the network in these cases:
Read-aloud, Apple Translation, word segmentation and tracing scores run on the device.
From version 1.2, ThaiJam has rewarded ads. An ad plays only when you tap “Watch an ad”, and finishing it gives you cans to exchange for in-app items. There are no banner ads and no ads inside lessons. Every learning feature works without watching ads. Only accounts linked to Apple or Google can watch ads.
Ads are served by Google AdMob. When you open a screen that offers an ad (the cans card in the shop, the pronunciation check after you run out, cans in your backpack), the app preloads one ad from AdMob and discards it when you leave. If you never open those screens, the app does not connect to AdMob.
While loading and showing an ad, Google may collect and process:
Google uses this data to provide, measure and improve ads and to prevent fraud, as described in the Google Privacy Policy and How Google uses information from sites or apps that use its services.
We do not give Google your ThaiJam account ID, email, nickname or learning data. Cans are credited only when AdMob’s servers notify ThaiJam; that notification carries a token issued by ThaiJam that contains no identity. Our server keeps the transaction number and time to prevent double credits and to count the daily limit. Your cans history is part of your account data: you can export it, and it is deleted with your account.
Your choices:
Content leaves the device only when you use one of the AI or speech features below.
We ask for your consent before the first use. Until you agree, no recording or text is sent to third-party AI providers; if you decline, AI features stay off and the rest of the app works as usual. You can turn it on or off at any time in Settings → About. (Example sentences, Jammy quizzes and line playback use only built-in course content, contain nothing of yours, and do not need this consent.)
| Feature | What is sent |
|---|---|
| Song analysis | Lyrics you provide, after repeated choruses and section labels are removed |
| Dictionary lookup, AI explanation | The Thai you enter or the Thai on that card |
| Extra examples, Jammy quizzes | Built-in lesson content (none of your data) |
| AI conversation, custom role-play | Your recording, the recognized text and the conversation so far |
| Pronunciation assessment | Up to 10 seconds of audio and the reference text |
| Reading lines and examples aloud | The Thai from the lesson and the voice gender |
Content first reaches ThaiJam’s server and is then forwarded to third-party AI providers to produce the result (translation, analysis, reply, voice or score). ThaiJam authenticates your request with your account session for credits, rate limiting and abuse prevention. The content forwarded to AI providers contains no ThaiJam account ID, Apple or Google identifier, email address or other direct identifier — only what the table lists.
Not sent to AI providers: your study history, review progress, decks, imported audio or artwork.
AI-generated results may be cached for seven days under a hash of the submitted content. Another user can receive the same result only by submitting identical content. Original lyrics are not stored in this cache, cached results carry no account or email identifier, and there is no interface for browsing or searching cached results.
AI translations and explanations can be wrong. You can edit saved cards and report a problem from the relevant result in the app.
The anonymous account stores a random user ID, credit balance and history, Study Coin data and server-backed feature records. If you link Apple or Google, ThaiJam also stores the provider-specific user ID and an email address you choose to share. It does not receive your Apple or Google password, real name or payment details. App Store payments are handled by Apple; ThaiJam receives a transaction identifier needed to credit the purchase and handle refunds.
Google sign-in is handled by Google’s authentication service, so Google learns that the selected Google account signed in to ThaiJam and keeps an authentication record; Google’s privacy policy applies. Sign in with Apple uses Apple’s native iOS flow; Apple’s privacy policy applies.
Subscriptions are bought and renewed through the App Store (iOS) or Google Play (Android). Payment details are handled by Apple or Google; ThaiJam never receives them. To know which plan you have and how long you have been a member, we keep:
| Data | Purpose |
|---|---|
| Plan (Plus or Max), monthly or yearly, current status (active, grace period, billing retry, expired, revoked), start and expiry dates, whether it auto-renews | Decide which features you can use now |
| For each period: transaction ID, dates, offer type and the amount paid | Member-card months, offers and refund reconciliation |
| Apple transaction IDs and a hash of the signed payload; the Google Play order ID and a hash of the purchase token (not the token itself) | Verify the transaction with Apple or Google |
| Subscription notifications from Apple: notification ID, type, transaction ID, processing status and time | Reflect renewals, refunds and revocations promptly; this log does not contain your account |
When you buy on Google Play, the account reference we give Google is a one-way hash of your ThaiJam account, so Google never receives your ThaiJam account ID.
Deleting your ThaiJam account does not cancel a subscription. Cancel it first in App Store or Google Play subscription settings, or it will keep renewing. After deletion, subscription records are kept in pseudonymized form for five years, like purchase records, then deleted automatically.
Profile → Account settings → Export my data downloads a machine-readable JSON file containing study data held by ThaiJam, Study Coin data, the AI credit ledger and purchase records, plus your topic-mission plans and answer records, ability badges, personal study set, backpack tickets, weekly-community shares, and your Plus/Max subscription records (plan, status, periods, amount paid and offers, auto-renew; not transaction IDs or token hashes). It excludes imported media, original Apple or Google identifiers, and deleted items. Contact support if you need a broader access request covering internal account fields.
Profile → Account settings → Delete account works for anonymous and signed-in accounts and does not require contacting support.
Deletion closes the active ThaiJam account and removes any Apple or Google sign-in link, email, App Attest device-key information, feedback, remaining AI Credits, and the server copy of cards, study progress, songs, lyrics, AI results and Study Coin data. Topic-mission plans and answer records, ability badges, your personal study set, backpack tickets and redeem records, AI conversation and custom role-play records, push and Live Activity tokens, and leaderboard results and nickname are deleted too, and your weekly-community shares, encouragement and votes are removed (see “Weekly community topics” for reports).
Purchase, credit-spending and related service records (including Plus/Max subscription records) are retained in pseudonymized form for five years, then deleted automatically. Records of who invited whom are kept in pseudonymized form for one year (to stop the same person deleting and re-registering to claim invite rewards again), then deleted automatically. They retain no link to a sign-in account and are kept for tax recordkeeping and delayed App Store refund reconciliation.
Local data on the device is not deleted. Imported audio and artwork in your private iCloud database are also unaffected, but your data will no longer have a ThaiJam server copy.
| Permission | When it is used | Effect of declining |
|---|---|---|
| Notifications | Local review reminders; once allowed, also ThaiJam’s service notifications and any promotional notifications you opt into (see “Push notifications”) | Only notifications are disabled |
| Files | Import audio or a flashcard CSV you select | Only the import is unavailable |
| Photos | Select song artwork | Only photo selection is unavailable |
| Media and Apple Music | Search or play Apple Music after you enable it | Only Apple Music integration is unavailable |
| Microphone | Identify music with ShazamKit, pronunciation assessment, speaking practice or AI conversations | Only features that need speech are unavailable |
| Speech recognition | Turn your spoken Thai into text in speaking practice | You can answer by typing or with word tiles instead |
| Location (while using the app) | Nearby-landmark cards, checked on the device; coordinates never leave it | Only nearby landmarks are unavailable |
| Camera | Scan QR cards; the image is recognized on the device | Only QR scanning is unavailable |
| Tracking (App Tracking Transparency) | Before your first ad for cans; if you allow it, Google may use your advertising identifier to choose ads (see “Ads: watching an ad for cans”) | You can still watch ads and get cans |
ThaiJam does not track your location in the background and does not use contacts or health data.
ThaiJam does not collect children’s personal data for advertising. Its only third-party ads are rewarded ads users choose to watch (see “Ads: watching an ad for cans”), and it has no third-party analytics SDK; the only other promotional content is the in-app invitation card described under outbound network connections — today it carries only ThaiJam’s own content, and content from collaborating creators would be labelled as such. ThaiJam is not primarily directed at children. AI Credit purchases use Apple’s in-app purchase system and remain subject to Screen Time, Ask to Buy and other parental controls. ThaiJam cannot bypass those controls. Refund requests can be made through Apple’s refund process.
We use the following categories of service providers to run the features above. They process data only on our instructions and only to provide that feature:
| Category | Purpose |
|---|---|
| Cloud hosting and storage | Run ThaiJam’s servers, store account and synced data, serve lessons and audio |
| Third-party AI providers | AI analysis and conversation, speech synthesis, pronunciation assessment |
| Sign-in (Apple, Google) | Let you sign in with an Apple or Google account |
| Payments (Apple, Google) | In-app purchases and subscriptions; payment details stay with them |
| Push delivery (Apple, Google) | Deliver notifications to your device |
| Lyric and music services | Only when you use song features (see outbound connections) |
| Advertising (Google AdMob) | Only when you watch an ad for cans; Google processes this data under its own privacy policy (see “Ads: watching an ad for cans”) |
Copyright owners and users can report problematic content to support@thaijam.app. AI-generated
content in the app also includes a problem-reporting action.
When this policy changes, the date at the top will be updated and the revised policy will be released with the corresponding app version.
Questions or privacy requests: support@thaijam.app
This policy describes ThaiJam’s current behavior. Material changes to data handling will be documented before release.