Privacy Policy
The short version
Punctum does not ask you to create an account. Your imported books, the text you read and your reading progress stay on your device, and ordinary reading works without a connection. Data leaves your device only in the specific cases described below: downloading a book or web article you ask for, the already-read text the app sends to Google Gemini so it can generate the optional questions and recaps, the diagnostics you consent to, and the technical security data Firebase sends. Purchases are handled by Apple or Google, with RevenueCat keeping track of what you have bought.
Who is responsible
Punctum is operated by Eren Kaya, a sole trader (micro-entreprise) based in France, who is the data controller for the processing described here. Contact: support@punctumreader.com.
What stays on your device
- There is no registration: no username, no password and no email address tied to your reading.
- Imported files (TXT, PDF, EPUB) are processed entirely on your device. They are not uploaded anywhere.
- Your library and your reading progress are stored on your device and are not sent to us.
- The text you read is not sent to us either. The only exception is the already-read text the app sends automatically for the AI features described below, and only after you enable them.
- The app works offline for ordinary reading. A connection is needed only to download a book or web article, or to use an AI feature you have opted into.
If you choose a book from the in-app library, the app downloads only that book’s file from punctumreader.com; no identity or device information is added to the request.
If you add a web link, the app downloads that page directly from the website you entered and keeps only its readable text on your device. The request goes nowhere else — there is no Punctum server in between — and no identity or device information, cookies or account details are added to it. The website you open sees an ordinary request from your device, as it would from a browser.
When you add a web link, the request goes straight from your device to the website you named: there is no Punctum server in between, and the app adds no special identity, cookie or account. That site sees your IP address and the URL you requested, and it may keep its own server logs. A plain http:// address is not encrypted in transit, while an https:// address is. If that extracted text is later sent to Google Gemini through an AI feature, the AI sections below apply.
Optional AI features (Google Gemini)
AI features are separate and off by default. If you give your consent, the app automatically generates three yes/no questions from the passage you have just read, and a recap when you return to a book after a few days. Both are optional on every plan, including the free one, and if you do not give consent, ordinary reading is not blocked in any way.
When a question runs, the app sends a request through Firebase AI Logic to Google’s Gemini: approximately 2,000 words of the passage you have already read or just read, the book’s language and, when the book has chapters, the title of the chapter the passage comes from. A recap request is different: it sends only the already-read portions of the last 2,000-token window and the book’s language, with no chapter title. In both cases the full book file is not attached, and neither is a book identifier, your reading location or a device identifier. The text itself may contain personal information, and the exact size of a question varies with paragraph boundaries, so it is not capped at 2,000 words.
Google may keep this data on its servers for up to 55 days for abuse-monitoring and security purposes, and authorised reviewers may inspect it. Caching questions and recaps on your device reduces how often text is sent again, but it does not delete what was already sent and can never guarantee that nothing will be sent again. Firebase AI Logic is only a proxy: the fact that it does not retain the data itself does not mean Gemini does not. See Google’s Gemini usage policies.
How the data is used is governed by Google’s current Gemini service terms and, where they apply, by any optional data contribution Punctum has set at project level. Under those terms, paid usage is by default not used to improve Google’s models or products, while unpaid usage may be treated differently, and security retention still applies to both. That contribution, if enabled, is not something you choose as an end user, and it is separate from the AI consent in this app. See the Gemini terms and the data-use policy.
You can withdraw AI consent at any time in Settings > Reading, and you can switch off return recaps on their own while leaving questions on. Withdrawing consent stops new AI requests and you can keep reading normally; data already sent remains subject to the provider’s retention.
Firebase and app security
App Check activates on every app launch whenever Firebase is present, using Play Integrity on Android and App Attest on iOS. It sends technical app and device verification data, and network data such as your IP address, independently of AI or analytics consent; this exists to prevent abuse. Not adding an identifier to a request prompt does not mean the SDK sends no data or that you are fully anonymous.
Usage statistics (Firebase Analytics)
The first time you open Punctum, it asks whether you want to share usage data. This consent is separate from the AI consent above: the two are decided independently. No analytics data is collected before you answer, and no analytics data is collected if you decline. You can change your answer at any time in Settings → Privacy & app.
If you agree, the app uses Firebase Analytics, a service provided by Google, to record:
- which screens you open and which actions you take (for example, that the plans screen was shown or a reading session ended), with numbers grouped into ranges such as “10–30 minutes” rather than exact values;
- an app-instance identifier generated for this installation, which means usage data can be linked to your installation rather than being fully anonymous;
- your device model, operating-system version, app version and country.
We do not collect the advertising identifier, and the app contains no advertising. Book titles, file names and the text you read are never included. Analytics data is kept for 14 months.
Crash reports (Firebase Crashlytics)
Under the same analytics consent, the app uses Firebase Crashlytics, also provided by Google, to send a report when it crashes. A report contains the technical trace of the error, your device model and operating-system version, and an installation identifier. It does not contain your books or the text you were reading. Crash reports are kept for 90 days.
Purchases (Apple, Google and RevenueCat)
Payments are handled entirely by Apple (App Store) or Google (Google Play). Punctum never sees your payment card details.
To know which purchases you own and to restore them on a new device, the app uses RevenueCat. RevenueCat processes an anonymous app-user identifier created by the app and the purchase receipts sent by Apple or Google (product, date, subscription status). This is necessary to provide what you paid for, so it depends on neither the usage-data consent nor the AI consent above. RevenueCat receives no name or email address from us.
Legal basis
- Usage statistics and crash reports: your consent, which you can withdraw at any time in Settings.
- AI questions and return recaps: a separate consent, which you can withdraw at any time.
- App security and anti-abuse measures (App Check): our legitimate interest in keeping the service working and preventing misuse.
- Purchase records: performance of the contract when you buy a plan.
Where the data goes
Google (Firebase, including its Gemini API) and RevenueCat may process this data outside the European Union, including in the United States. These transfers rely on the EU–US Data Privacy Framework or on the European Commission’s standard contractual clauses.
Your rights
Under the GDPR you can ask to access or delete the data linked to your installation, and you can object to its processing. Because we do not know who you are, please include the approximate date you installed the app when you write to support@punctumreader.com; turning a consent off stops the related new analytics or AI sending immediately, while App Check and any data already retained continue as described above. You also have the right to lodge a complaint with the French data protection authority (CNIL, cnil.fr) or the authority in your country.
This website
The website at punctumreader.com does not use cookies, does not track visitors, and does not load any third-party scripts. There is no analytics beacon, no advertising network, and no social-media pixel on any page.
Changes to this policy
If our practices change, we will update this page and revise the date at the top. Material changes will be reflected here before they take effect.
Contact
Questions about this policy can be sent to support@punctumreader.com.