Privacy Policy

Last updated: October 30, 2026

1. Who we are

p8nda is operated by Volverix sp. z o.o., the data controller for personal data processed through the p8nda mobile app and website.

  • Registered office: ul. Grunwaldzka 9C, 34-600 Limanowa, Poland
  • Registry court: Sąd Rejonowy dla Krakowa-Śródmieścia w Krakowie, XII Wydział Gospodarczy KRS
  • KRS: 0001228922
  • NIP: 7372257673
  • REGON: 544253033
  • Share capital: PLN 5,000

Contact: [email protected]

2. What we collect

When you use p8nda, we may collect:

If you create an account (mobile app or website)

  • Email address for sign-in, password reset, and account-related notifications.
  • Password hash (bcrypt) if you sign up with email and password. We never store the password itself.
  • OAuth identifiers if you sign in with Google or Apple: your provider account ID and verified email. We do not receive your password.
  • Web sessions: after you log in on the website, an HTTP-only session cookie keeps you signed in. We store the session record server-side until you sign out or it expires.

Anonymously (no account required)

  • Device identifier: a randomly generated ID stored in a first-party cookie (web) or in app storage (mobile). Used for rate limiting, anonymous quotas, and resuming flashcard sessions across reloads.
  • Usage data: dictionary searches, OCR uses, and translations counted per device for rate limits and anonymous analytics.
  • IP address: retained briefly in standard server logs for abuse prevention.

Feature data (mobile app and website)

  • Translation data: text you submit for AI translation is processed by Google's Gemini API. We store your translation history (input, result, timestamp) so you can revisit past translations and so repeated queries return instantly. Tied to your account if signed in, otherwise to your device.
  • Translations read aloud: when you play a translation aloud, its Chinese text is sent to Microsoft's Azure Speech service to make the audio. We keep that audio on our CDN under a code made from the text, so the same sentence is not sent again. It is not linked to you or your device.
  • Flashcard data: custom decks you create, your card lists, per-word study statistics, completed-session history, and the queue/state of any in-progress session you can resume after a reload.
  • Word view history: the words you've recently looked at, kept locally and synced if signed in.
  • Settings: preferences such as font size, study direction, audio autoplay, and similar options. Stored in cookies (web) or app storage (mobile), and synced if signed in.
  • Connecting from mainland China: connections from mainland China to our servers are often slow, so they can go through a server we run in Hong Kong on Tencent Cloud. The app may connect through it, and visitors to the website from mainland China are sent to cn.p8nda.com, which is the same website served through that server. The encrypted connection ends on that server, which passes each request on to our servers. It keeps only a short, rolling log of each request: the time, the address it asked for, its size and result, and your IP address shortened to its network. It stores nothing else. If you choose to go back to p8nda.com from cn.p8nda.com, a cookie on p8nda.com remembers that choice.

Mobile app only

  • Stroke practice data: per-character stroke practice scores and streaks, stored locally and optionally synced.
  • Audio, stroke and photo cache: pronunciation audio, stroke data and the photos of dishes, ingredients and people, downloaded when you open them and stored on your device only.
  • Photos you scan: when you take or pick a photo in Scan, the app reads its text on your phone where it can. With "Improve photos with AI" on (the default), the photo is also sent to our server and to Google's Gemini API, which corrects the reading and translates it. Our server holds the photo in memory for up to 10 minutes, so a slow connection can try again without sending it twice, and never writes it to disk. We record that a photo was read, for the daily limit, but not the photo or its text. Your scans (photo, text and translation) are kept on your phone only and are never synced.
  • Camera search: searching with the camera reads the text on your phone and sends nothing to us. Only when you tap Translate does something leave the phone: the picture goes to Scan, as described above, or a line's text goes to Translate. Your recent camera search pictures stay on your phone for 30 days.
  • Device info: platform, OS version, and app version for compatibility and debugging.

Website only

  • OCR images: images pasted for text extraction are sent to Google's Gemini API. Images are not stored permanently. They are deleted from our servers within seconds after processing.
  • Cookies: a device ID cookie for rate limiting, a session cookie if you log in, small preference cookies (theme, study settings), and an analytics opt-out cookie if you set one. No third-party tracking cookies are used.
  • Analytics: we use Umami, a privacy-focused, cookie-free, open-source analytics tool self-hosted on our servers. It collects anonymous page views (page URL, referrer, browser, country, page load speed) and feature usage (audio plays, stroke order practice, flashcard sessions) without using cookies or tracking individuals. This includes the words you type into search, which is how we find out which entries are missing from the dictionary. Search terms are stored without any identifier that links them to you, and are truncated so a long paste cannot be recorded in full. No personal data is collected or shared with third parties. You can turn analytics off for your browser at any time.
  • Local storage: your recent dictionary searches (the list you see when the search box is empty) and a few UI flags are stored in your browser's local storage. That list stays on your device and can be cleared at any time.

3. How we use your data

  • To provide the dictionary, translation, photo reading, OCR, and flashcard services.
  • To authenticate you, keep you signed in, send password resets, and let you delete your account.
  • To sync your decks, word history, translations, stroke practice, and settings across your devices when you are signed in.
  • To enforce rate limits and prevent abuse.
  • To cache translation and OCR results so repeated queries are instant.
  • To produce anonymous, aggregated analytics that help us understand which features are used.

4. Data storage

Account and feature data (email, password hash, decks, translation history, flashcard sessions, settings, word history) is stored on our servers in the European Union (Hetzner, Helsinki) when you are signed in.

Mobile app: a local copy is also kept on your device so the dictionary and your data work offline.

Website (signed out): only a device ID cookie and a small amount of browser local storage are stored on your device. Anything you submit (OCR image, translation text) is processed and not retained beyond what is needed to give you the result.

5. Third-party services

  • Google Gemini API: used for AI translations, for reading photos in the app's Scan, and for image OCR on the website. See Google's Privacy Policy.
  • Microsoft Azure Speech: makes the audio when you play a translation aloud (see above), and made the dictionary's word audio from the dictionary's own text. See Microsoft's Privacy Statement.
  • Google / Apple Sign-In: if you choose to sign in with one of these providers, we receive your email and provider account ID. Available on the mobile app and website.
  • Resend: used to send transactional email (verification, password reset, email-change confirmation). Resend processes the recipient address and message body. See Resend's Privacy Policy.
  • Dictionary audio: example sentence audio is generated with CosyVoice 3, an open-source text-to-speech model we run ourselves, and word audio with Microsoft Azure Speech. Both are made in advance from the dictionary's own text, not from anything you enter, and served from our CDN.
  • Umami Analytics: self-hosted, open-source, cookie-free web analytics. No data is shared with third parties. See umami.is.
  • Cloudflare R2: hosts audio, stroke data and photos on our CDN, including the cached audio of translations read aloud. No account data is stored there.
  • Tencent Cloud: runs our Hong Kong server for connections from mainland China, from the app and to cn.p8nda.com (see "Connecting from mainland China" above).
  • Cloudflare Turnstile: a privacy-focused anti-bot challenge used on the sign-in, sign-up, password-reset, translate, and OCR forms to distinguish real visitors from automated traffic. Runs invisibly in the background. Most visitors never see anything. Cloudflare receives your IP address and limited browser signals to produce a per-request verification token; the contents of the form (your password, your translation text, your OCR image) are never sent to Cloudflare. See Cloudflare's Turnstile Privacy Addendum.
  • Hetzner: hosts our application servers and database in Helsinki, Finland. EU-based infrastructure provider.

6. AI assistants you connect

If you connect an AI assistant such as Claude or ChatGPT to your p8nda account, it can read your decks, review history and study progress, and create or change decks when you ask it to. What it reads is sent to the company that runs that assistant (for example Anthropic or OpenAI) because you asked for it, and their privacy policy covers what happens next.

p8nda keeps a record of which assistants you connected and when they last used your account. You can disconnect an assistant at any time in Account settings under Connected apps, which stops its access straight away. Disconnecting does not delete decks it created. Dictionary lookups made without signing in are not linked to your account.

7. Your rights (GDPR)

You can access, correct, or delete your data at any time. See how to delete your account for step-by-step instructions on the website and in the mobile app, or contact [email protected].

You also have the right to lodge a complaint with the Polish data protection authority (Prezes Urzędu Ochrony Danych Osobowych, UODO).

8. Data retention

Account deletion anonymizes all personal data immediately. Anonymous usage statistics may be retained. OCR images are never retained beyond processing, and photos sent from the app's Scan are discarded within 10 minutes. Inactive flashcard sessions and web login sessions are pruned automatically (active sessions after 14 days, web login sessions after 7 days past expiry).

9. Children

p8nda is not directed at children under 13. We do not knowingly collect personal data from children under 13.

10. Contact

Questions? [email protected] or join our Discord.