Privacy Policy
In effect from October 8, 2026
This Privacy Policy explains how HanziBee collects, uses, stores, shares and protects personal data when you use HanziBee's application for iOS and Android and the related services.
1. Entity responsible for processing the data
HanziBee is responsible for processing the personal data described in this Policy. HanziBee's website is https://hanzibee.com, and you can contact us in the application at You → Help and feedback (Section 22).
In this Policy, "HanziBee", "we", "us" or "our" means the operator of HanziBee.
2. Scope
This Policy applies to data processed through:
- The HanziBee application on iOS and Android.
- The HanziBee servers the application connects to.
- The web pages that support the application, such as the password reset page.
- User accounts.
- Customer support activities.
- Decks, reviews, and listening, reading and writing practice.
- Other services that refer to this Policy.
This Policy does not directly govern the activities of third-party websites, applications or services to which HanziBee merely provides links.
3. Data we may collect
The data actually collected depends on the features you use, and above all on whether you use HanziBee with an account.
Without an account (guest mode), everything you do in HanziBee stays on your device. Nothing about your learning is sent to us. The only data that leaves your device is:
- crash reports (Section 7);
- feedback you choose to send (Section 3.5);
- words from a list you import that are not in the dictionary on your device, sent for lookup without any account (Section 3.4);
- requests to download content and audio (Section 3.4).
With an account, your learning data, decks and settings are also stored on our servers so that you can keep them and use them on several devices.
3.1. Account information
When you create or manage an account, we may collect:
- Your display name, if you set one (you can change it at You → Edit profile). If you sign in with Apple and Apple shares your name the first time, it becomes your display name.
- Your email address. With Sign in with Apple, this may be a private relay address created by Apple.
- Your password, which we store only in a form that cannot be reversed (an argon2id hash). We never see your Apple or Google password.
- An internal account identifier.
- The sign-in methods linked to the account (email and password, Apple, Google) and the identifier each provider gives you.
- The version of the Terms of Use and this Policy that you accepted when the account was created.
- The date the account was created and, if you delete it, the date of the deletion request.
If you sign in with Apple or Google, we receive what you and the provider allow to be shared:
- Google: your Google account identifier, your email address and whether Google has verified it. We do not receive or store your name, profile picture or contacts.
- Apple: your Apple account identifier, your email address or private relay address, and, the first time only, your name if you choose to share it. Apple also gives us a token that we store encrypted and use only to remove HanziBee's access to your Apple ID when you delete your account.
If you continue with Google using an address that is not a Gmail or Google Workspace address, your HanziBee account itself holds no email address, so you cannot reset a password by email or be contacted at that address about the account.
We do not collect a profile picture, a preferred language or payment information.
3.2. Learning data
We may collect:
- Each review of a word or character: what you reviewed, your answer (Again or Good), when, how long it took, the study session it belonged to and, for writing, whether you used a hint.
- Your answers in listening and reading practice, and whether they were correct.
- Study sessions: their type, start and end times, duration, the number of cards and correct answers, and the daily goal at the time.
- Your progress through reading passages.
- The calendar day of each review, practice answer and session, as it was on your device, which reflects your device's time zone.
- Your settings: daily goal, new words per day, the daily reminder (on or off, and its time), pinyin, tone colours, simplified or traditional characters, automatic audio and theme.
Your review schedule, study streak and statistics are calculated on your device from this data; we do not calculate them on our servers.
This data is stored on your device. When you are signed in, it is also synchronised with our servers so that your progress is kept and appears on your other devices.
3.3. Decks and imported word lists
We may store:
- The decks you add, including HanziBee's HSK and topic decks.
- The decks you create, their titles and the words you add to them.
- The words you import into a deck by pasting a list (for example from Pleco or Anki).
These are stored on your device and, when you are signed in, synchronised with our servers. Your decks are private and are not shown to other users.
We do not record what you search for in the dictionary or which words you open: dictionary search runs on your device.
3.4. Dictionary lookups and content downloads
Imported word lists. When you import a word list, the application first looks each word up in the dictionary on your device. Words it cannot find there are sent to our server to be looked up in the full dictionary. This works without an account; when you are signed in, the request is also counted against your account's request limit. We use the words only to answer the request and do not store them.
Dictionary entries. When a deck holds words that are not in the dictionary on your device, for example on a second device, the application downloads those dictionary entries from our server. This request is public, does not identify your account, and names the dictionary entries requested.
Content and audio. The application checks for content updates and downloads content packs and pronunciation audio from our content delivery network. The provider that runs it receives your IP address and the files requested, as any web server does.
3.5. Data you submit
When you send a message through Help and feedback, we receive:
- Your message (up to 4,000 characters).
- An email address for a reply, if you give one. The application may fill in your account's email address, which you can change or remove.
- Your account identifier, if you are signed in.
- The application version, your platform (iOS or Android), your operating system version and the time the message was received.
Your message is forwarded by email to our support mailbox, and we reply by email if you gave an address. It does not include screenshots or attachments. If you reply to our email, we receive your email address and the content of your reply.
You should not include unnecessary sensitive information in support requests.
3.6. Device and technical information
When you use the Service, some technical data may be collected automatically:
- In crash reports (Section 7): device model, operating system and version, application version, language and region settings, time zone, a random identifier for the installation created by our crash reporting provider, and basic application state at the time of the error (for example, whether the application was in the foreground or had a connection).
- With sign-in requests: a random device identifier that the application creates when it is installed. It is linked to your sign-in session on that device.
- In our server logs and request limits: your IP address, the time of the request, the address requested (for example, the dictionary entries downloaded) and technical request headers, such as the application's user agent. Passwords, sign-in tokens, password reset links and the content of your requests are not logged.
- Network information to the extent necessary to provide the Service.
We do not track you across other companies' applications or websites. HanziBee does not use an advertising identifier and does not include advertising or analytics tools.
3.7. Sign-in sessions and security data
To keep you signed in and protect your account, we store:
- Sign-in sessions: for each device you sign in on, a session linked to that device's random identifier. We store only a fingerprint (hash) of the session token, not the token itself.
- Password reset requests: when you ask to reset your password, a single-use link valid for 30 minutes, stored only as a fingerprint (hash), and the email that carries it.
- Request counters: short-lived counts of requests per IP address (for IPv6, per network block), per email address and per account, used to limit abuse.
3.8. Data stored on your device
The application stores your data on your device: a local database with your learning data, decks and settings, downloaded content, and a cache of pronunciation audio. Your sign-in tokens are kept in your device's secure storage (the iOS Keychain or Android encrypted storage).
The application does not use cookies.
Your device's own backups (iCloud or Google) may include HanziBee's local database under your Apple or Google account, according to your backup settings. Your sign-in tokens are excluded from them.
4. Data we do not actively request
HanziBee does not actively ask users to provide:
- Citizen identity card or passport numbers.
- Complete financial data.
- Precise geolocation.
- Contacts.
- SMS messages or call history.
- Voice recordings, photos or camera access.
- Medical records.
- Biometric data used for unique identification.
- Information about religion, political opinions or sex life.
The application does not request access to the microphone, the camera, your photos or your location.
If a new feature needs to process sensitive data, we will give separate notice, explain the purpose and obtain consent where required by law.
5. Purposes of data use
We may process data in order to:
5.1. Provide the Service
- Create and manage accounts.
- Authenticate sign-ins.
- Display dictionary content, decks, reading passages and practice.
- Look up imported words that are not in the dictionary on your device.
- Save and synchronise progress, decks and settings.
- Play pronunciation audio.
- Provide the features you have requested.
5.2. Schedule your reviews
- Build your review schedule with a spaced-repetition algorithm.
- Choose which words are due and which reading passages to offer next.
These calculations run on your device. We do not build a profile of you on our servers.
5.3. Operate and improve the product
- Detect and fix crashes and errors, using crash reports (Section 7).
- Improve HanziBee using the feedback you send.
We do not analyse how you use the application's features and do not run experiments on users.
5.4. Security and abuse prevention
- Limit the number of requests per IP address, email address and account.
- Detect the reuse of an old sign-in token, which ends the affected sign-in session.
- Prevent fraud and unauthorised access.
- Enforce the Terms of Use.
- Protect users, systems and HanziBee's assets.
- Investigate security incidents.
5.5. Communication with users
- Send password reset emails that you request.
- Respond to support requests.
- Give notice of important changes.
- Show the daily study reminder that you have turned on. The reminder is scheduled on your device; it is not sent from our servers.
You can turn off the daily reminder at You → Reminder or in your device settings. We do not send promotional emails.
5.6. Synchronisation across devices
When you are signed in, the application synchronises your data with our servers when it starts or returns to the screen, when a study session ends, when the connection returns, after you sign in, and in the background about every six hours, as far as your device's system allows (Background App Refresh on iOS; scheduled background work on Android). You can limit background activity in your device settings; synchronisation then happens when you open the application.
5.7. Legal compliance
- Fulfil legal obligations.
- Respond to valid requests from competent authorities.
- Handle complaints and disputes.
- Protect the lawful rights of HanziBee and users.
6. Legal bases for processing data
Depending on the activity and the applicable law, HanziBee processes data on one or more of the following bases:
- Your consent.
- The performance of the agreement to provide the Service.
- Compliance with legal obligations.
- Protection of life, health or vital interests where permitted by law.
- Protection of the lawful rights and interests of HanziBee or related parties, provided that your rights are not infringed.
- Other bases permitted by law.
Where processing is based on consent, you may withdraw your consent. Withdrawal does not affect the lawfulness of processing carried out before the withdrawal.
Refusing or withdrawing consent, or a device permission, may cause some features not to work, such as the daily reminder, which needs permission to show notifications.
7. Crash reports
The application sends a report to Sentry, our crash reporting provider, when an error occurs, whether or not you are signed in. A report contains only:
- The type of error, where in the application's code it happened, and a technical code (for example, a database or network error code). It never contains an error's text, your words, deck titles or answers, a web address or the content of a request.
- Your device model (not the name you gave the device), operating system and version, application version and build, language and region settings, time zone, and technical information about the runtime, graphics and accessibility settings.
- A random installation identifier created by Sentry. It does not contain your name, email address or HanziBee account identifier.
- The screen path the application was opened with, without any link parameters.
- Four kinds of basic events from before the error, without any content: the application moving between the foreground and the background, its interface starting or stopping, the network connection changing, and the screen rotating.
- When the server refuses a synchronised change, the type of record, an error code and up to 20 internal record identifiers or setting names. Identifiers of words and passages are removed.
Crash reports never include screenshots, the layout of the screen, performance measurements or recordings of your session. We have set Sentry not to store the IP address a report arrives from.
8. Sharing data with third parties
HanziBee does not sell your personal data.
We share data only to the extent necessary with the following categories of recipients:
8.1. Infrastructure providers
Entities that provide:
- Servers and cloud hosting for our application servers, databases and request counters.
- Storage and a content delivery network for content packs and pronunciation audio.
- Email delivery for password reset emails and forwarded feedback, and the support mailbox.
- Backup and security.
8.2. Authentication services
Apple and Google process data when you use Sign in with Apple or Google sign-in. They learn that you signed in to HanziBee. We receive only the data described in Section 3.1.
When you sign out of an account linked to Google, the application also signs out of Google on your device, so that Google asks which account to use next time. When you delete your account, we remove HanziBee's access to your Apple ID and disconnect HanziBee from your Google account (Section 15).
8.3. Crash reporting service
Sentry receives the crash reports described in Section 7.
8.4. Text-to-speech
Pronunciation audio is generated in advance with a text-to-speech system from HanziBee's own learning content. Nothing you type or say is sent to it.
8.5. Email delivery
Our email provider delivers password reset emails to your address and forwards your feedback messages (Section 3.5) to our support mailbox.
8.6. Content delivery
Content packs and pronunciation audio are downloaded from our content delivery network, whose provider receives your IP address and the files requested. The open sources our dictionary and example sentences come from (CC-CEDICT, Tatoeba and others) receive no data about you.
8.7. Advisers and corporate transactions
Data may be shared in a controlled manner with lawyers, auditors, advisers or parties to a merger, acquisition or asset transfer, subject to appropriate confidentiality obligations.
8.8. Competent authorities
We may provide data when:
- There is a lawful request from a competent authority.
- It is necessary to fulfil a legal obligation.
- It is necessary to protect life, safety or lawful rights.
- It is necessary to investigate fraud, attacks or serious violations.
Providers that process data on HanziBee's behalf are subject to confidentiality obligations and may use the data only within the scope assigned to them.
9. List of providers
| Purpose | Provider | Data concerned |
|---|---|---|
| Sign-in | Apple, Google | Account identifier, email address, and your name the first time you use Sign in with Apple, if you share it |
| Hosting of our servers and databases | Our hosting provider | Account information, learning data, decks, settings, sign-in sessions, server logs |
| Content storage and delivery | Our content delivery provider | IP address and the files requested |
| Email delivery | Our email delivery provider | Email address, password reset links, feedback messages and their details |
| Support mailbox | Our email provider | Feedback messages and their details, emails you send us, our replies |
| Crash reporting | Sentry (Functional Software, Inc.), United States | The crash report contents listed in Section 7 |
| Pronunciation audio | Our text-to-speech provider | HanziBee's own learning content only; no user data |
We update this table whenever our providers change.
10. Transfer of data abroad
Some service providers may host servers or process data outside Vietnam. Apple, Google and Sentry are based in the United States, and Sentry stores crash reports in the United States.
In that case, HanziBee will take appropriate measures in accordance with the law, which may include:
- Assessing the provider.
- Signing data processing and data protection agreements.
- Limiting the types of data transferred.
- Encrypting data in transit.
- Preparing the dossiers, assessments or procedures relating to cross-border data transfer.
- Giving notice or obtaining consent where required by law.
The actual country of storage depends on the providers listed in this Policy.
11. Data retention periods
We keep data only for as long as necessary to fulfil the notified purposes, provide the Service and comply with the law.
Expected periods:
| Data type | Expected retention period |
|---|---|
| Account information | For as long as the account is active, and for 7 days after you ask us to delete the account (at most 8 days) |
| Learning data, decks and settings | For as long as the account is active, and for 7 days after you ask us to delete the account (at most 8 days). When you delete a deck, a word in a deck, a setting or reading progress, a record of the deletion is kept for 180 days so that your other devices learn about it; a deleted deck's record keeps its title. Review and practice history is deleted with the account |
| Data on your device | Until you sign out, delete your account or uninstall the application. Copies in your device's backups follow your backup settings |
| Sign-in sessions | Until you sign out, reset your password or delete your account, or 60 days after the session was last used. Expired sessions are deleted daily |
| Password reset links | Valid for 30 minutes and deleted 24 hours after they expire. The email job that sends one is deleted once sent, or one day after it fails |
| Apple sign-in token | Until the account is deleted. It is revoked when you ask us to delete the account, and again when the account is erased |
| Words sent for lookup | Not stored. They are used only to answer the request |
| Request counters | Up to 1 hour |
| Server logs | For the limited period needed for security and troubleshooting, then deleted |
| Crash reports | For a limited period, then deleted automatically by our crash reporting provider |
| Support requests | Kept in the support mailbox for as long as needed to handle the request and any follow-up. The copy queued for sending is deleted once sent, or 30 days after it fails |
| Backups | Deleted on a rolling basis as newer backups replace them |
When the period expires, the data will be deleted, anonymised or aggregated so that it no longer identifies an individual.
12. Data protection
HanziBee applies technical and organisational measures appropriate to the level of risk. In the application and on our servers:
- Connections between the application and our servers are encrypted (HTTPS).
- Passwords are stored only as argon2id hashes.
- Sign-in session tokens and password reset links are stored on our servers only as fingerprints (hashes). The Apple sign-in token is stored encrypted.
- On your device, sign-in tokens are kept in the iOS Keychain or Android encrypted storage and are excluded from device backups.
- Our server logs leave out passwords, tokens, password reset links and the content of requests.
- Requests are limited per IP address, email address and account, and reusing an old sign-in token ends the affected session.
- Crash reports are limited to the technical data listed in Section 7.
So that a network error does not sign you out, a sign-in token that was recently replaced, presented again from the same device within 24 hours, receives the same replacement instead of ending the session. During that time, someone who obtained such a token could share the session. Signing out, resetting your password or deleting your account ends it.
Our operational measures may also include:
- Encryption of stored data where appropriate.
- Role-based access control.
- Logging of administrative activity.
- Backups and restore testing.
- Monitoring for errors and signs of unauthorised access.
- Updating software and libraries.
- Assessing providers.
- Incident response procedures.
- Limiting the staff who have access to data.
No system is absolutely secure. If an incident occurs that may affect your rights and interests, we will investigate, limit the damage and give notice in accordance with the law.
13. Your rights
To the extent of the applicable law, you may have the following rights:
- To be informed about data processing activities.
- To consent or refuse consent.
- To withdraw consent.
- To request access to data.
- To request a copy of data.
- To request correction of inaccurate data.
- To request deletion of data.
- To request restriction of processing.
- To object to certain processing activities.
- To request that the use of data for marketing stop.
- To lodge complaints or denunciations, or to bring a lawsuit.
- To claim compensation for damage in accordance with the law.
- Other rights recognised by law.
You can exercise some rights directly in the application:
- Change your display name at You → Edit profile.
- Remove decks and the words in them.
- Turn off the daily reminder.
- Sign out, which removes HanziBee's data from that device.
- Delete your account at You → Delete account.
The application has no data export. To request a copy of your data, correction of other data such as your email address, or any other right, send a request at You → Help and feedback.
To protect data, we may ask for reasonable information to verify your identity and your rights over the account.
In some cases, a request may be limited or refused if:
- The requester cannot be verified.
- Fulfilling it would affect the rights of others.
- The data must be kept to comply with a legal obligation.
- The request shows signs of abuse or is unreasonable.
- The law permits or requires refusal.
We will explain the reasons when we cannot fully meet a request, unless the law does not permit disclosure.
14. Withdrawing consent and managing device permissions
You can:
- Turn off the daily reminder at You → Reminder, or turn off HanziBee's notifications in your device settings.
- Limit background activity, such as Background App Refresh on iOS, in your device settings.
- Remove decks in the application.
- Sign out, which removes HanziBee's data from that device.
- Delete your account.
Revoking a permission may make the corresponding feature unusable, but it should not prevent you from using features that do not depend on that permission.
15. Account deletion
You can start an account deletion request:
- In the application at You → Delete account (at the bottom of the You tab while you are signed in; you confirm by typing DELETE).
- By asking us at You → Help and feedback.
A request made at You → Delete account takes effect at once. For a request sent through Help and feedback, we first verify that it comes from the account holder. Then:
- The account is closed immediately and every sign-in session ends. A device that is using the account at that moment loses access within 15 minutes. When you delete the account in the application, HanziBee's data is removed from that device, which returns to guest mode.
- We remove HanziBee's access to your Apple ID at once. If you used Google, the application disconnects HanziBee from your Google account. On Android, this may not succeed if the application was restarted since you signed in with Google; HanziBee then stays in your Google account's list of connected apps until you remove it there.
- Seven days later, we permanently delete the account, its sign-in methods and sessions, and all the data synchronised with it. If this step is delayed, a daily check completes it within 8 days of the request. Until then, the deletion cannot be undone and the account's email address cannot be used to sign in or to create a new account.
- We retain certain data to the extent permitted or required by law.
Some data is not part of the account and is not deleted with it: messages you sent to support, crash reports and server logs. They are deleted at the end of the periods in Section 11. Data remaining in backup systems will be deleted according to the backup cycle and will not be used for ordinary business purposes.
16. Children's privacy
Users under 16 years of age should use HanziBee only with the consent and supervision of a parent or lawful guardian.
HanziBee will endeavour to:
- Collect only the data necessary for learning features.
- Not use children's data for behavioural advertising. HanziBee shows no advertising and includes no advertising or analytics tools.
- Not sell children's data.
- Let parents or guardians delete the account in the application (You → Delete account) and request review, correction or deletion of data at You → Help and feedback.
- Use suitable providers and SDKs if the application is distributed to children.
Parents or guardians may contact us at You → Help and feedback if they believe that a child has provided inappropriate data or data without the necessary consent.
HanziBee may request information to verify the status of the parent or guardian before handling the request.
17. Notifications and marketing
HanziBee may send:
Essential notifications
- Password reset emails that you request.
- Important changes to the Service, by email to the address on your account, where your account has one.
- Support responses.
You may not be able to turn off some necessary notifications while you keep your account.
Optional notifications
- A daily study reminder, at the time you choose. It is a notification scheduled on your device; HanziBee does not use a push notification service and does not collect a push token.
You can turn off the daily reminder at You → Reminder or in your device settings. HanziBee does not send marketing emails or newsletters.
18. No sale of data and advertising
HanziBee does not sell or rent personal data.
As of this version of the Policy, HanziBee does not use personal data to serve personalised advertising on third-party applications or websites.
If an advertising model is added in the future, this Policy and the related consent forms must be updated before that activity begins.
19. Third-party links and content
The Service may contain links to third parties, such as the licence pages of the open sources HanziBee uses. These links open in your device's browser. When you leave HanziBee or interact directly with their services, data may be processed under the third party's policies.
You should review the privacy policy of each service before providing information.
20. Changes to the Privacy Policy
We may update this Policy when:
- Features or technology change.
- Providers change.
- The law or platform requirements change.
- The way data is processed changes.
The version and the date on which it took effect are shown at the top of this Policy in the application, which always shows the most recent version it has received.
When a change has a significant effect, we will notify you by email to the address on your account, where your account has one, or by another appropriate method. You are not asked to accept a new version of this Policy. If a change would begin a new processing activity that the law allows only with your consent, we will ask for that consent before the activity begins.
21. Complaints
If you believe that your data has been processed inappropriately, you may:
- Contact HanziBee at You → Help and feedback to request a resolution.
- Lodge a complaint with the competent state authority.
- Exercise your rights to lodge complaints or denunciations, bring a lawsuit or claim compensation in accordance with the law.
Lodging a complaint does not affect your other rights.
22. Privacy contact
All requests relating to personal data may be sent to us in the application at You → Help and feedback.
Website: https://hanzibee.com
When sending a request, please provide your account's email address and a description of the request. If your account has no email address (for example, an account created with Google using an address that is not a Gmail or Google Workspace address), tell us which sign-in method you use and the email address of that Apple or Google account. Do not include your password or a password reset link in your message.