Hana Learn
プライバシー

Privacy Policy

🌸 Hana Learn — Privacy Policy

This policy explains what information the Hana Learn app handles, why, and the choices you have. Hana Learn is built to know as little about you as possible. No account, sign-up, email, or login is required — the app works anonymously. Your learning progress is backed up under a random, anonymous identifier so it can be restored, and lesson content, reviews, and writing practice work offline. We collect nothing beyond what each feature needs to run. The app carries no third-party analytics or advertising SDK; the usage events we do keep are sent to our own server under that same anonymous identifier and are listed in full in section 5.

1. The short version

2. Information the app handles

That is the complete list. Beyond an optional profile name you may set, the app does not collect your name, email, phone number, contacts, photos, location, or advertising identifiers. We do build a usage picture of each installation — which events a device sent, and which ad campaign it came from — but it is keyed to a random token, never to you: we do not know who you are, we do not combine it with data from other apps or websites, and we never sell or share it with advertisers, ad networks, or data brokers.

3. Progress backup, in detail

The backup is keyed by a random token created on your device — it contains no name, email, advertising ID, or hardware identifier. On Apple platforms the token is stored in iCloud Keychain; on Android it is protected with Android Keystore and belongs to that Android installation. These are separate anonymous identities, so Android does not automatically restore an iPhone profile. Our server stores progress under a one-way hash of the token, so we cannot tell which backup belongs to which person and cannot look you up. The backup contains learning progress and, if you set one, your profile name: no conversations, audio, or other personal details. Using “Reset all progress” clears the learning data in that installation's server backup and replaces it with an empty reset state. Restoring a backup on a new phone requires that device's own token, which stays in your keychain and is never shared with us in a form we can reverse.

4. Talking with Hana, in detail

Talk with Hana has two modes, and you choose between them in Settings under “Talking with Hana.”

Live voice is the default. It sends microphone audio while the microphone is active and not muted, over an encrypted connection to ElevenLabs, whose conversational agent does the listening, the answering, and the speaking in one session. Typed messages in this mode go over the same session.

Turn by turn sends no audio to any conversation provider. Your speech is transcribed by the device's own speech recognition first — on the device itself where it supports that, otherwise by Apple's speech service — and only TEXT leaves the app after that: what you said, plus up to the last twelve turns of that conversation for context. That text goes through our server to OpenRouter, which routes it to the model that writes Hana's reply; the model in the shipping build is Google's Gemini 2.5 Flash, so Google receives the text as well. Hana's reply is then sent to a speech provider to be spoken aloud: Fish Audio, with ElevenLabs as an automatic fallback if Fish fails, so either may receive the reply text. Our server can also be configured to send the text to xAI instead of OpenRouter; that is an alternate setting, not the shipping default. The speech provider receives only Hana's own reply, never your microphone audio. No provider in this mode receives your name or contact details.

Scenarios transcribe a user-initiated recording with the device's speech-recognition service and send only the resulting text through whichever mode you have selected. Depending on the device, language resources, and system service, speech recognition may run on the device or require that service's network connection. The app does not attach a profile name or contact details to conversations; information you choose to say or type can still become part of the conversation.

Sessions are authorized through our server using the anonymous token, and every talk message is counted against that token — the count guards against abuse and is what enforces the free tier's monthly message limit (Hana Pass has no monthly limit). Our server passes conversations through without keeping them: it never receives live-mode audio, and it does not store the turn-by-turn text or Hana's reply after answering the request. The one exception is a reply you explicitly submit with the Android app's safety report. Providers may retain conversation audio, text, or provider-generated transcripts under the retention settings configured for Hana's agent and their own service policies, including any information you choose to say or type.

Speaking exercises and Pocket Translator voice input use the device's speech service; their microphone audio is not sent to any conversation provider. On Apple platforms, conversation subtitles and Pocket Translator results use Apple Translation. On Android, they use Google's ML Kit on-device translation after you explicitly approve downloading the Japanese translation resource. Translation text stays on the device; the resource download itself is handled by Google and does not include your text or microphone recording. Hana Learn does not download or bundle a separate speech-recognition model. Reminders are scheduled entirely on your device — we run no notification servers.

5. Product analytics and ad attribution

Hana Learn runs its own product analytics. There is no third-party analytics or advertising SDK in the app, and no cookies: the iPhone app posts events to our own API under the same random device token as everything else, and our server stores them under a one-way (SHA-256) hash of that token. The Android app sends no product events at all; it uses our server only for progress backup and talk sessions.

The list of events is fixed in both the app and the server, and this is all of it: first launch of the day (with whether notifications are allowed, denied, or not yet asked for), onboarding finished (with the daily goal you picked), lesson started and lesson completed (with the lesson's ID), paywall shown and paywall dismissed (with the screen it opened from), win-back offer shown, trial started, purchase, message top-up (with the product ID), flashcards, writing quiz or speaking quiz finished (with the script: hiragana, katakana, or kanji), and an anime scene opened (with the scene ID). Events carry no message content, no audio, and no free text you have written.

On iPhone the app also asks Apple once per install for an Apple Search Ads attribution token and sends it to our server, which exchanges it with Apple. Apple answers either that the install was organic or with the campaign, ad group, and keyword IDs and the country or region, and we store that answer under the same hash. This uses Apple's AdServices API; it does not use or collect the advertising identifier (IDFA), the app shows no ads, and it never asks to track you across other companies' apps or websites.

What this lets us do — and this is the honest limit of it — is read one anonymous device's events in order, alongside that device's progress totals (lessons completed, XP, streak) and the campaign it arrived from, so we can see where people get stuck and which campaigns are worth paying for. That is a picture of an app installation, not of a person.

6. Purchases

Hana Pass subscriptions on Apple platforms are processed by Apple through the App Store under Apple's own privacy policy. We receive only an anonymous confirmation that a subscription is active. Android sales are disabled until Google Play products and server-side purchase verification are configured; no Android payment status is collected by the current build.

7. How long we keep things

Progress backups are kept so your progress can follow you. “Reset all progress” clears the learning data and leaves an empty reset state so older devices cannot restore it; you may also email us about deletion. Backups untouched for an extended period may be deleted. Talk-message counters reset automatically each month; every talk message is counted for abuse protection, and on the free tier that same count is what enforces the monthly message limit. Temporary recordings are deleted after on-device transcription on the scenario, speaking-exercise, and Pocket Translator surfaces. In live voice mode, audio and conversation text are processed by ElevenLabs, which may retain them according to the provider retention described above; in turn-by-turn mode the conversation text — never audio — is processed by OpenRouter and the model it routes to, and Hana's reply text by Fish Audio or ElevenLabs, each under its own retention policy. Hana Learn's server does not retain conversation audio or text from ordinary sessions. A reply you explicitly report in the Android app is retained in the private moderation queue only as long as needed to investigate safety and abuse. Usage events and the attribution answer are kept under the anonymous hash for as long as they are useful for product and campaign reporting; they are not deleted automatically.

8. Security

All traffic between the app and our servers uses encrypted connections (HTTPS/TLS). Backup tokens are stored hashed, and we keep the minimum data needed to run each feature — the most effective security is having nothing worth stealing.

9. Your choices and rights

Depending on where you live, you may have legal rights to access, correct, delete, or object to the processing of your data (for example under the GDPR or the California Consumer Privacy Act). We extend these choices to everyone: use “Reset all progress” in Settings to erase backed-up learning progress, or email us for anything else, including provider-held conversation audio or text and the usage events and attribution record stored under your device's hash. Resetting progress does not itself delete conversation content retained by the conversation provider. Our data is anonymous by design, so we may be unable to link server data to you unless you can provide your device's token.

10. International users

Our servers are operated from the United States. By using the online features, you understand that the limited data described above is processed in the United States and other countries where our service providers operate.

11. Children's privacy

Hana Learn does not require an account and asks for no personal information — every feature works anonymously. The anonymous ID above is random and identifies an app installation, not a person, and the usage events in section 5 are keyed to it rather than to anyone's identity. Conversation audio and text are handled as described above. If you believe a child has provided personal information through the conversation feature, email us and we will work with our providers to address it.

12. Changes to this policy

If a future version of the app changes any of the above, this policy will be updated first and the date below revised. Material changes will be noted in the app.

13. Contact

Hana Learn is operated by Drito LLC, Florida, USA. Questions or requests: dritollc@gmail.com.

Last updated: August 29, 2026