Privacy Center

Protecting your privacy is built into everything we do.
For any additional request, please contact: privacy@sapraxis.com

Version française

Privacy Policy

Last updated: October 14, 2026

This policy explains what personal data Sapraxis collects when you use the Historo app on iOS and Android and our websites sapraxis.com and historo.app, why we use it, who we share it with, how long we keep it, and the choices and rights you have.

The short version

  • You can use Historo without giving us your name or email address: the app starts with an anonymous account.
  • Historo shows no ads, and we don't sell your personal data.
  • When you use AI features, what you type is sent to OpenAI to generate the answer. Your chat messages and your username are never used to train OpenAI's models, but the topics you request for lessons, courses and chronicles may be. Please don't share personal information in the chat or in the topics you type.
  • Usage statistics are on by default. You can turn them off at any time in Settings → Privacy → Share usage statistics.
  • You can delete your account from the app at any time: Settings → Privacy → Delete account.

1. Who we are

The data controller is Thomas Cianfarani EI, a sole proprietorship (micro-entreprise) trading as Sapraxis, registered in France under SIRET 840 161 319 00024, 16 Allée de la Colline, 83330 Le Beausset, France. In this policy, "Sapraxis", "we" and "us" refer to this business.

For any question about your personal data, or to exercise your rights, write to privacy@sapraxis.com.

2. Data we collect

2.1 Using Historo without signing in

When you choose your username during onboarding, Historo creates an anonymous account for you with Firebase Authentication. It is identified only by a random user ID: we don't ask for your name, email address or date of birth. Your profile and progress are linked to this ID. If you later sign in with Google or Apple, the provider is linked to the same account and you keep your progress.

2.2 Account data (Sign in with Google or Apple)

If you sign in with Google or Apple, the provider gives us your email address (with Apple, this can be a private relay address), a unique account identifier and, if it shares them, your name and, for Google, a link to your profile photo. Firebase Authentication stores this information. In Historo, we use your email address to identify your account, show it in your account settings, reply to your messages if you allow it, and, as explained in section 2.7, in your usage-statistics profile. If you sign in before choosing a username, the name shared by the provider is suggested as your username; you can change it.

2.3 Profile and learning data

  • Profile: the username, title and avatar you choose (avatars are Historo illustrations; you can't upload photos), the form you choose for your title (male, female or neutral), your time zone (detected from your device), your app language, your account creation date, your last activity date, and your app version and operating system.
  • Onboarding answers: why you want to learn history, up to three favourite historical eras, and how you plan to use Historo.
  • Learning activity: the lessons, chronicles and courses you start, complete or save (including the topics you request), whether your quiz answers were correct (by historical category), your XP history, level, streaks and streak freezes, weekly challenge rewards, tournament participation and rankings, and the counters used for the free plan's limits (for example, chat messages or quiz hints used today).
  • Subscription screens: when a subscription screen is shown, which screen it was, what you did (for example, closed it or subscribed) and how long it was displayed.

2.4 What you type and your AI conversations

This covers the messages you send to Historo's AI chat (including questions about a lesson or chronicle you're reading), the topics you type to generate lessons, courses or chronicles, and your username. Section 4 explains how this content is processed. Your chat conversations are kept on your device. Our database only records when each message was sent and from where in the app, to apply the daily message limit; our servers don't log the text of your messages.

2.5 Purchases

Subscriptions are sold and billed by Apple (App Store) or Google (Google Play); we never receive your payment card details. Through our subscription provider RevenueCat, we receive information about your purchases, linked to your Historo user ID: the product, price and currency, purchase, renewal, cancellation and expiry dates, trial status, store transaction identifiers and the store country.

2.6 Device and technical data

When the app connects to our services, we and our providers process technical data such as your device model, operating system and app version, language and time zone, your IP address, and app-installation identifiers (the Firebase installation ID and, for usage statistics, Google Analytics' app-instance ID and, on iOS, the identifier for vendor). To protect our services from abuse, Firebase App Check asks Google Play Integrity (Android) or Apple App Attest (iOS) to confirm that requests come from a genuine copy of Historo.

2.7 Usage statistics

To understand how Historo is used and improve it, the app records usage events with PostHog and Google Analytics for Firebase. For example: screens viewed and app opens, onboarding steps and answers, lessons, chronicles, courses and quizzes started and completed (with their topic or title), quiz questions and whether you answered correctly, chat usage (message length, never the content), XP, level and streak changes, notification choices, subscription screens and purchases. These events are linked to your Historo user ID, together with a profile summary: plan, level, XP, streak, number of completed lessons, chronicles and courses, install date, sign-in method, app language and theme. If you're signed in with Google or Apple, your email address is also added to your PostHog profile (not to Google Analytics), which lets us exclude our own test accounts from statistics. RevenueCat also sends PostHog your subscription events (purchases, renewals, refunds) and how you interact with its subscription screens (screen shown, buttons tapped, screen closed). PostHog and Google Analytics for Firebase use your IP address to estimate your approximate location (country and city; PostHog also estimates postal code and approximate coordinates), then discard it, so your usage statistics don't include your IP address.

Usage statistics are on by default. You can turn them off at any time in Settings → Privacy → Share usage statistics; the app then stops sending usage events to PostHog and Google Analytics, and the events RevenueCat sends to PostHog for your account are discarded.

Campaign measurement. We advertise Historo and measure which campaigns bring new users. On iOS, Apple's AdServices framework (through RevenueCat) tells us whether an install came from an Apple Search Ads campaign. On Android, Google Analytics reads the Google Play install referrer, which indicates the store campaign or link that led to the install, and Google Play tells our Google Ads account which installs and first subscription purchases came from our Google ads; the app sends no data to Google Ads for this. Historo doesn't ask for permission to track you across other companies' apps (App Tracking Transparency), and it tells Google Analytics not to use data for advertising (advertising storage, advertising user data and ad personalisation are denied); on Android, the app has no permission to read the advertising ID. Your device's advertising identifier (IDFA or Android advertising ID) is therefore not collected, and your usage statistics are not used for advertising.

2.8 Crash reports

If the app crashes or hits an error, Firebase Crashlytics collects a crash report: the technical error trace, device model, operating system and app version, installation identifiers, your Historo user ID, and the app's recent warning and error messages.

2.9 Messages you send us

  • In the app (Contact us, Report a problem, language requests): the subject and text of your message or report, the content concerned (for example a lesson or a quiz question), your app language and version, your platform, your user ID and, if you leave Allow a reply by email switched on, your account email address. For a language request, we also record your device's language. Our replies appear in the app, or by email if you allowed it.
  • By email: your email address and the content of your message. Our mailboxes (@sapraxis.com and @historo.app) are hosted by OVH in France.
  • Through the contact forms on our websites: your name (sapraxis.com only), email address, subject or topic and message, collected through Formspree.

2.10 Our websites

  • sapraxis.com is hosted by OVH in France, whose servers log technical data such as your IP address, browser and the pages requested. It has no analytics and no advertising. The home page loads Google reCAPTCHA, which protects the contact form against spam by analysing device and interaction data and setting cookies; Google receives your IP address. Your language choice is saved in your browser's local storage.
  • historo.app is hosted on Firebase Hosting (Google). It counts visits with PostHog without cookies or any identifier stored on your device: page views and clicks on the store buttons are recorded, and IP addresses are discarded. The /download link reads your browser's user agent to send you to the right app store.

3. Why we use your data and our legal bases

We use your data only for the purposes below. Each relies on a legal basis of the GDPR: performing our contract with you, that is our Terms (Art. 6(1)(b)); our legitimate interests (Art. 6(1)(f)); your consent (Art. 6(1)(a)); or a legal obligation (Art. 6(1)(c)).

Purpose Data Legal basis
Create and run your account, sync your progress across devices Account data, user ID, profile and learning data Contract
Provide Historo's features: lessons, chronicles, quiz, courses, XP, streaks, weekly challenges, free-plan limits Profile and learning data, time zone, language Contract
Generate AI content and answer your chat messages What you type, username, language, content you're viewing, user ID Contract
Tournaments and public profiles Username, title, avatar, level and XP, streak, podiums, completion statistics, premium badge, join date Contract
Sell and manage subscriptions Purchase data, user ID Contract
Keep accounting and tax records Purchase records Legal obligation
Answer your messages, fix reported problems, handle language requests Your messages and reports, related content, technical data, email address if you allowed replies Contract; legitimate interest (helping you and correcting our content)
Security, fraud and abuse prevention, cost control (App Check, rate limits, automated checks of usernames and topics, server logs) Technical data, user ID, usernames and topics, server logs Legitimate interest (protecting Historo and its users)
Usage statistics to understand and improve Historo Usage events and profile summary, user ID, email address (PostHog only) Legitimate interest, with the option to turn statistics off
Measure our advertising campaigns Campaign and install-attribution data Legitimate interest
Crash reporting and app stability Crash reports Legitimate interest (keeping the app working)
Reminders and daily history topics, scheduled on your device Notification permission Consent (the device permission, which you can withdraw in your device settings)
Run our websites and their contact forms, prevent spam, count visits to historo.app Server logs, form content, reCAPTCHA data, visit statistics Legitimate interest
Comply with the law and defend our rights The data needed for the purpose Legal obligation; legitimate interest

4. AI features

Historo uses artificial intelligence to write lessons, chronicles, courses and quizzes and to answer your chat messages. This processing runs on our servers (Google Cloud, Belgium), which call the following providers:

  • OpenAI generates text and checks content. For the chat, OpenAI receives your message, your username (so Historo can address you by it), your app language, the lesson or chronicle you're viewing when your question is about it, and a pseudonymous identifier (your Historo user ID, without your name or email address) that OpenAI uses to detect abuse. For a lesson, course or chronicle, it receives the topic (whether you typed it or picked it from Historo's catalog) and the same pseudonymous identifier. Usernames and the topics you type are also sent to OpenAI to check that they are appropriate.
  • Runware generates illustrations for chronicles and courses. It only receives an image description written by our servers from the content (which can include a topic you typed), never your user ID, name or email address. Runware may use OpenAI's image models to create the image.

These providers process this data only to generate the requested content and to keep their services safe. Your chat messages and your username are never used to train AI models: the chat and the check on your username go through a separate OpenAI project for which data sharing is turned off, and under OpenAI's API data policy such data is not used to train its models. We do let OpenAI use the requests that check the topics you type and generate lessons, courses and chronicles to improve its models, including those on a topic you typed; these requests contain the topic and, for generation, the pseudonymous identifier, never your name, email address or chat messages. To keep conversations going, OpenAI stores chat exchanges and generated lessons and chronicles for a default period of 30 days, and keeps abuse-monitoring logs for up to 30 days. Runware doesn't keep the generated images long term; we store them ourselves in the EU.

Lessons, courses and chronicles generated for a topic are stored in a shared library and may be shown to other users who ask for the same topic; courses can also appear in the Community courses list. This content is not linked to your account and never shows your name.

Please don't share personal information, about yourself or anyone else, in the chat or in the topics you type. AI-generated content can contain mistakes; see our Terms.

We don't make decisions about you based solely on automated processing that have legal or similarly significant effects. Usernames and custom topics are screened automatically; if one is rejected, you can choose another or contact us.

5. Who we share data with

We don't sell your personal data and we don't share it with advertisers or data brokers. We share it only with the service providers below, which process it on our behalf, and with the other recipients listed after the table.

Provider Role Data Location Transfer safeguard
Google (Firebase and Google Cloud) Authentication, database, servers, file storage, app configuration, App Check, crash reports, Google Analytics for Firebase, server logs, hosting of historo.app Account, profile and learning data, messages to support, technical data, usage statistics (without your email), crash reports, logs Database, servers and files in the European Union; authentication, analytics, crash reports and logs may also be processed in the United States and other countries EU–US Data Privacy Framework and Standard Contractual Clauses
OpenAI AI text generation, chat, content checks Chat messages, topics, username, language, content context, pseudonymous user ID United States (under OpenAI's data processing addendum, data from the EEA is handled by OpenAI Ireland Ltd) Standard Contractual Clauses (OpenAI data processing addendum)
Runware Ltd Image generation Image descriptions only (no identifiers) United Kingdom (Runware Ltd); servers in the United States, Germany and Romania. Requests for OpenAI image models are forwarded to OpenAI (United States). European Commission adequacy decision for the United Kingdom; Runware's terms describe no specific safeguards for its US servers (it receives no identifiers)
RevenueCat, Inc. Subscription management User ID, purchase and subscription data, interactions with subscription screens, Apple Search Ads attribution (iOS), app and device information United States Standard Contractual Clauses (RevenueCat data processing addendum)
PostHog, Inc. Usage statistics (app and historo.app) Usage events, profile summary, user ID, email address of signed-in users, approximate location (the IP address used to estimate it is discarded) European Union (Frankfurt, Germany) Data hosted in the EU; Standard Contractual Clauses in PostHog's data processing agreement
Formspree, Inc. Contact forms on our websites Name, email address, subject, message United States None: Formspree is no longer certified under the EU–US Data Privacy Framework (it withdrew in 2022) and we have no data processing agreement with it. To avoid this transfer, email us directly.
OVH SAS Hosting of sapraxis.com and of our mailboxes Server logs, emails you send us France No transfer outside the EU

We also share data with the following recipients, which act independently under their own privacy policies:

  • Apple and Google, when you sign in with them or buy a subscription through their stores, for the App Attest and Play Integrity checks, and for Apple Search Ads attribution. Google Play also tells our Google Ads account which installs and first purchases came from our ads (section 2.7). On sapraxis.com, Google also provides reCAPTCHA.
  • Wikimedia Foundation: many lesson images are loaded directly from Wikimedia Commons, so Wikimedia receives your IP address and device information when they are displayed.
  • Other Historo users: when you take part in a tournament, the other participants can see your public profile: username, title, avatar, level and XP (including XP earned this week), streak, podiums, premium badge, completion statistics and the date you joined.
  • Authorities and courts, when the law requires it.
  • A buyer of Historo, if the app is sold or transferred; the new owner would have to respect this policy.

6. International transfers

Our main database, servers and file storage are in the European Union. Some providers process data outside the EU: OpenAI, RevenueCat and Formspree in the United States, Runware in the United Kingdom (with servers in the United States, Germany and Romania), and some Google services in the United States and other countries. These transfers rely on adequacy decisions of the European Commission (the EU–US Data Privacy Framework for certified US companies such as Google, and the decision for the United Kingdom) or on the Standard Contractual Clauses adopted by the European Commission, included in our providers' data processing agreements. There are two exceptions: Formspree, used for the contact forms of our websites, isn't covered by these safeguards, so email us directly if you prefer; and Runware's terms don't describe safeguards for its US servers, which only receive image descriptions without identifiers. You can ask us for more information about these safeguards at privacy@sapraxis.com.

7. How long we keep data

Data How long
Account, profile and learning data As long as your account exists. When you delete your account in the app, it is deleted immediately from our database and from Firebase Authentication; Google can take up to 180 days to remove authentication data from its backups.
Anonymous accounts that are no longer used Until you delete the account in the app. Uninstalling Historo does not delete it.
Signed-in accounts that are no longer used Until you delete your account.
Chat conversations On your device until you delete them, delete your account, sign out or uninstall the app, or after 28 days without activity. At OpenAI: 30 days by default for the stored conversation, and up to 30 days for abuse-monitoring logs.
Usage statistics (PostHog) Up to 7 years (the retention of our current PostHog plan). Deleting your account does not delete these statistics; ask us and we will delete them sooner.
Usage statistics (Google Analytics) Event data: 2 months. Data linked to your user ID: 14 months after your last use of the app (the period restarts each time you use Historo).
Crash reports 90 days
Server logs (Google Cloud) 30 days
Rate-limiting record (user ID, request count, time of the last request) Until you ask us to delete it, including after you delete your account.
Messages to support, bug reports and language requests sent from the app Until you ask us to delete them. Deleting your account does not delete them.
Emails and website form messages (Formspree) We keep them until you ask us to delete them. Formspree keeps its own copy of website form messages for 30 days.
Purchase and subscription records (RevenueCat) Kept by RevenueCat, including after you delete your account. Ask us and we will delete them, except records we must keep for accounting (10 years, article L123-22 of the French Commercial Code).
Server logs of sapraxis.com (OVH) Kept by OVH under its own rules, including the retention obligations French law places on hosting providers.
Visit statistics of historo.app Up to 7 years; they contain no identifier linked to you.
Lessons, courses and chronicles in the shared library As long as Historo is operated; this content is not linked to you.

After these periods, data is deleted or made anonymous.

8. Children

Historo is intended for people aged 13 and over and is not designed for younger children. We don't ask for your age and we don't knowingly collect personal data from children under 13. If you believe a child under 13 is using Historo, contact us at privacy@sapraxis.com and we will delete the account.

In France, a minor can consent alone to the processing of their personal data by an online service from the age of 15. Where we rely on consent, users under 15 can only give it together with a parent or guardian (article 45 of the French Data Protection Act). If you're under the age of majority in your country, please read this policy with a parent or guardian.

9. Security

  • Data is encrypted in transit (HTTPS). Our main database, servers and files are hosted by Google in the EU, where data is encrypted at rest.
  • Our backend checks that requests come from genuine copies of the app (Firebase App Check) and is protected by access rules and rate limits; secret keys are kept in Google Secret Manager.
  • Access to administrative tools is restricted to Sapraxis.
  • Your payment card details never reach us.
  • No system is perfectly secure. If a data breach is likely to put your rights at risk, we will notify the CNIL and, where required, inform you.

10. Your rights

Under the GDPR, you have the right to:

  • access your data and get a copy of it;
  • rectify inaccurate data (you can change your username, title, avatar and preferences directly in the app);
  • erase your data;
  • restrict processing in certain cases;
  • data portability: receive the data you provided in a structured, machine-readable format;
  • object to processing based on our legitimate interests (for usage statistics, simply turn off Share usage statistics in Settings → Privacy);
  • withdraw your consent at any time, for example by turning off notifications in your device settings;
  • in France, give instructions about what happens to your data after your death.

How to exercise them:

  • delete your account in the app: Settings (gear icon) → Privacy → Delete account;
  • follow the instructions at sapraxis.com/deletion;
  • or write to privacy@sapraxis.com. We may ask for information to confirm that the account is yours. For an anonymous account, deleting it from the app is the most reliable option, as we may not be able to link an email to it.

We respond within one month of receiving your request. This can be extended by two further months for complex or numerous requests; in that case, we will tell you why within the first month.

If you think your rights are not respected, you can lodge a complaint with the CNIL, the French data protection authority (www.cnil.fr), or with the authority of the EU country where you live or work (list of EU authorities).

11. Cookies and similar technologies

The Historo app doesn't use cookies. It stores data on your device so that it works (settings, cached content, chat conversations), and the PostHog and Google Analytics SDKs store identifiers for usage statistics, which you can turn off in Settings → Privacy. For our websites, see our Cookies Policy.

12. Additional information for U.S. residents

We do not sell your personal information, we do not share it for cross-context behavioral advertising, and we do not use it for targeted advertising: we only measure which of our own ads led to installs or subscriptions (section 2.7), with ad personalisation turned off. Sections 2 to 5 describe the categories of personal information we collect, their sources, why we use them and who receives them; section 7 explains how long we keep them. Depending on your state, you may have the right to know, access, correct and delete your personal information and to get a copy of it. To exercise these rights, write to privacy@sapraxis.com; we will not discriminate against you for doing so. If we decline your request, you can appeal by replying to our answer.

13. Changes to this policy

We may update this policy when Historo or the law changes. We will change the "Last updated" date at the top of this page and, for significant changes, inform you in the app or by email if we have your address.

Questions? Write to privacy@sapraxis.com.