Privacy Policy
Contents
1. Who we are
This Privacy Policy describes how Mindoria (the "App", "we", "us", or "our") collects, uses, and protects your personal information when you use the Mindoria mobile application and related services available at mindoria.app.
Mindoria is an educational app that offers bite-sized lessons, spaced repetition, achievements, leaderboards, and real-time player-versus-player (PvP) trivia battles across subjects such as History, Biology, Psychology, Economics, and more.
For the purposes of the General Data Protection Regulation (GDPR), the data controller is the operator of Mindoria, contactable at privacy@mindoria.app.
2. Scope
This policy applies to:
- The Mindoria mobile application for Android (distributed via Google Play).
- The Mindoria website at mindoria.app.
- Email communications we send you about your account or the service.
It does not apply to third-party services linked from the App or website, which are governed by their own privacy policies.
3. Data we collect
3.1 Account information
When you create an account, we collect and store:
- Email address: used to sign you in, verify your identity, and send transactional messages.
- Display name: how you appear to other players and on leaderboards.
- Password (for email/password accounts): stored only as a salted bcrypt hash. We never see or store your plaintext password.
- Avatar: an emoji or image you choose to represent yourself.
- Friend code: an automatically generated identifier that lets other users add you as a friend.
- Google account identifier (if you sign in with Google): your Google-provided user ID, email, and public profile name. We do not receive your Google password.
3.2 Learning and progress data
- Lessons, topics, and subjects you have started or completed.
- Questions answered, scores, attempts, and time spent.
- XP, level, current streak, longest streak, and hearts (lives).
- Daily goal settings and preferred study language.
- Achievements earned and when they were earned.
- Spaced-repetition review schedules generated from your activity.
- PvP match history, including opponents, outcomes, and ratings.
3.3 Social data
- Friend requests you send or receive, and accepted friendships.
- Your position on global, friends, and subject leaderboards.
3.4 Preferences and settings
- Interface language and theme (light/dark).
- Narration voice preference (for text-to-speech playback of teaching cards).
- Notification preferences.
3.5 Device and technical data
- Device model, operating system version, app version, and crash logs.
- Push-notification tokens (Firebase Cloud Messaging or Expo Push Token) so we can deliver notifications to your device.
- Approximate locale and timezone (derived from device settings).
- IP address (used temporarily by our servers for rate limiting, fraud prevention, and abuse detection; not linked to your account profile).
3.6 Subscription status
- If you subscribe to Mindoria Plus or Mindoria Premium, we receive a pseudonymous subscriber identifier and your current entitlement status (active or inactive) from Google Play Billing via RevenueCat (our subscription management provider). This is account state, not a transaction history. Mindoria does not store a list of your past purchases, prices, or invoices.
- We do not receive or store your credit-card number, CVC, billing address, or any other payment information. Payment is processed entirely by Google Play, which has its own privacy policy.
3.7 Support and feedback
If you contact us for support, we keep the content of your message along with your email address so we can respond.
What we do NOT collect: We do not access your camera, microphone, location, contacts, SMS, call logs, photos, or files. The app does not record audio from your device.
4. How we use your data
We use the data described above to:
- Create and manage your account, authenticate you, and verify your email.
- Deliver the core learning features: lessons, quizzes, spaced repetition, streaks, hearts, and achievements.
- Run PvP matches, leaderboards, and friend features.
- Send you transactional emails (email verification, password reset, subscription receipts, critical service notices).
- Send push notifications you have opted into (streak reminders, achievements, PvP results).
- Process in-app subscriptions and apply the benefits of your plan.
- Show rewarded advertisements to free users who voluntarily watch them to refill hearts.
- Detect, prevent, and respond to abuse, cheating, and security incidents.
- Understand how the App is used in aggregate so we can fix bugs and improve features.
- Comply with legal obligations and enforce our terms.
5. Legal bases for processing (GDPR)
If you are located in the European Economic Area, the United Kingdom, or Switzerland, we rely on the following legal bases under Article 6 GDPR:
| Purpose | Legal basis |
|---|---|
| Providing the App and your account | Performance of a contract (Art. 6(1)(b)) |
| Processing subscription payments | Performance of a contract (Art. 6(1)(b)) |
| Security, fraud prevention, rate limiting | Legitimate interests (Art. 6(1)(f)) |
| Product analytics and crash reporting | Legitimate interests (Art. 6(1)(f)) |
| Non-personalised advertising | Legitimate interests (Art. 6(1)(f)) |
| Sending push notifications you enabled | Consent (Art. 6(1)(a)) |
| Complying with legal obligations | Legal obligation (Art. 6(1)(c)) |
You can withdraw consent at any time from the settings screen without affecting the lawfulness of prior processing.
6. How we share data
We do not sell your personal information. We share data only in the limited circumstances below:
- Service providers who process data on our behalf under written instructions (listed in Section 7).
- Other users, where you choose to make information public (see Section 9 on social features).
- Legal authorities, where required by law, court order, or to protect the safety and rights of users and the public.
- In a business transfer, if Mindoria is acquired or merged with another company, in which case we will notify you before your information becomes subject to a different privacy policy.
7. Third-party services (sub-processors)
We rely on the following service providers. Each processes only the data needed for their specific role.
| Provider | Purpose | Data processed |
|---|---|---|
| Google Play Billing | Processing subscriptions | Purchase token, plan, payment status |
| RevenueCat | Managing subscription entitlements | Pseudonymous user ID, entitlement status, product IDs |
| Google AdMob | Serving rewarded ads | Advertising ID, device identifiers, IP address (received automatically by Google's ad servers as part of the network connection) |
| Firebase Cloud Messaging | Push notifications | Device push token, notification payload |
| Expo Push Service | Push notifications (alternative channel) | Device push token, notification payload |
| Google Sign-In | Optional social login | Google user ID, email, profile name |
| PostHog | Product analytics and crash reporting | Pseudonymous user ID, events, device metadata, error stack traces |
| Resend | Transactional email delivery | Email address, message content |
| Fly.io | Application hosting and database | All personal data listed above (at rest, encrypted) |
8. Advertising
Mindoria shows rewarded advertisements only via Google AdMob, and only to users on the free plan who voluntarily choose to watch an ad to refill hearts. We do not show banner or interstitial advertisements.
We configure AdMob to request non-personalised ads, meaning ads are not targeted using your personal profile, browsing history, or interests. Google may still use coarse contextual signals such as app category, device language, and the country derived from your IP address to deliver legally appropriate ads and prevent fraud. Mindoria does not request location permissions and does not derive your physical location from your IP address.
Note that, as is true of any service accessed over the internet, Mindoria's own backend automatically sees your IP address whenever the app makes a request to it (used briefly for rate limiting, security, and abuse detection, as described in Section 3.5), and Google's ad servers separately see your IP address whenever the app fetches an ad (used by Google for the purposes above). These are two independent, network-layer exposures. Mindoria and Google do not exchange IP addresses with each other. Paid subscribers see no ads at all and therefore make no requests to Google's ad servers.
For users in jurisdictions that require consent under ePrivacy or GDPR, AdMob's own consent management will present a consent dialog on first ad request. Google's advertising privacy notice is available at policies.google.com/technologies/ads.
9. Social and public features
Mindoria includes social features. The following information is visible to other users by design:
- Your display name, avatar, level, and XP appear on global and friend leaderboards.
- Your friend code can be shared by you and used by others to send you friend requests.
- Your public achievements can be viewed by friends and opponents.
- PvP match results show your display name and avatar to your opponent.
You can control what you share by choosing a generic display name, declining friend requests, or deleting your account. There is no free-form user-to-user chat, direct messaging, or profile description field in Mindoria.
10. Data retention
We keep your personal data only for as long as your account is active, plus the period needed to:
- Comply with legal, tax, and accounting obligations (typically up to 7 years for subscription records).
- Resolve disputes and enforce our agreements.
- Maintain security logs (typically 90 days).
When you delete your account (see Section 14), we erase or anonymise your personal information from our active systems within 30 days. Backups are overwritten on our standard rotation cycle (typically within 60 days).
11. Security
We protect your data with industry-standard safeguards, including:
- HTTPS/TLS encryption for all data in transit.
- Encryption at rest on our database host.
- Bcrypt password hashing with salt; we never store plaintext passwords.
- Short-lived authentication tokens with automatic refresh and secure storage on-device.
- Rate limiting, abuse monitoring, and access controls on our infrastructure.
No system is perfectly secure. If we become aware of a data breach that affects you, we will notify you and the relevant supervisory authority within the timeframes required by law.
12. International data transfers
Our servers are hosted on Fly.io, which operates data centres in multiple regions. Some of our sub-processors (Google, RevenueCat, PostHog, Resend) are based in the United States or other countries outside the EEA. Where personal data is transferred outside the EEA, UK, or Switzerland, we rely on the European Commission's Standard Contractual Clauses and, where applicable, additional safeguards required by the Schrems II decision.
13. Your rights
Depending on where you live, you may have the following rights in relation to your personal data:
- Access: request a copy of the personal data we hold about you.
- Rectification: correct inaccurate or incomplete information.
- Erasure: request deletion of your account and data ("right to be forgotten").
- Portability: receive a machine-readable export of data you provided to us.
- Restriction: ask us to limit how we use your data in certain circumstances.
- Objection: object to processing based on legitimate interests, including analytics.
- Withdraw consent: withdraw any consent you previously gave.
- Complain: lodge a complaint with your local data protection authority. In the EU, you can find yours via edpb.europa.eu.
To exercise any of these rights, email privacy@mindoria.app. We will respond within 30 days.
California residents (CCPA/CPRA)
If you are a California resident, you also have the right to know which categories of personal information we collect, the purpose of collection, and the categories of third parties with which we share it (all disclosed above). You have the right to delete your personal information and to not be discriminated against for exercising your rights. We do not sell or share personal information for cross-context behavioural advertising.
14. Account and data deletion
You can delete your Mindoria account at any time, directly from the App:
- Open Mindoria and go to Profile → Settings.
- Scroll to Delete account.
- Confirm your identity by entering your password (or email for Google accounts).
- Confirm deletion.
Deletion is immediate and irreversible. It removes your profile, progress, XP, streak, hearts, friendships, PvP history, leaderboard entries, and achievements from our active systems. Residual data is purged from backups within 60 days.
If you cannot access the App, you can also request deletion by emailing privacy@mindoria.app from the email address associated with your account.
15. Children
Mindoria is intended for users aged 13 and older. We do not knowingly collect personal information from children under 13. If you are a parent or guardian and believe your child has provided us with personal information, please contact privacy@mindoria.app and we will delete the account promptly.
In jurisdictions where the minimum age for digital consent is higher than 13 (for example, 16 in parts of the European Economic Area), the corresponding higher age applies.
16. Changes to this policy
We may update this Privacy Policy from time to time. When we make material changes, we will notify you in the App and/or by email before they take effect, and we will update the "Last updated" date at the top of this page. Prior versions are available on request.
17. Contact
For privacy questions, data-access requests, or complaints:
- Privacy: privacy@mindoria.app
- General support: support@mindoria.app
- Website: mindoria.app