← ReaderML
Privacy Policy
Last updated: November 8, 2026
1. Introduction
ReaderML (“the App”) is an independently developed application. This Privacy Policy explains what information we collect, how we use it, and your rights regarding your data. By using the App, you agree to the practices described here.
2. Information We Collect
2a. Information you provide directly
- Google account information (name, email address, profile photo) when you sign in with Google Sign-In
- Your username and email address, if you create an account with a username
- Files you upload to cloud storage. These are usually PDF and EPUB documents, but any file type can be uploaded, including photos, videos, and audio
- Notes, highlights, drawings, and bookmarks you create, when they are synced to your account
- Text you select when you use an AI feature such as Translate, Simplify, or Define
- Subscription status (whether you are on a Free or Pro plan), and any promo code you redeem
2b. Information collected automatically
- App usage data collected by Firebase Analytics (anonymous, aggregated)
- Crash reports and performance data via Firebase
- The Google Advertising ID (AD_ID), collected by Firebase Analytics for app analytics only (see Section 6)
- If you installed the App through an influencer partner’s link: the partner’s short tag from that link, read once from Google Play (see Section 6)
- Approximate location: the country your connection comes from, worked out from your IP address. It is shown beside your username on the leaderboard and used for analytics and marketing measurement. To keep the leaderboard fair, we may fix the country shown for an account, for example when a VPN makes it keep changing; it then stays the same until we change it back
- Reading activity: reading time, challenges, badges, and streaks, recorded on our server to credit challenges and rank the leaderboard
- A device token for push notifications, used to send notifications and to sync your devices
- If you use AI features without signing in: a one-way hash of your device’s app-specific Android ID (never the ID itself), used only to limit free AI use per device
- Remote Config fetch events (used to deliver legal pages and Pro feature lists)
2c. Information we do NOT collect
- We do not read your documents. Documents you never upload stay on your device, and only the text you select is sent when you use an AI feature
- We do not collect payment card details — all billing is handled entirely by Google Play
- We do not collect precise location data
- We do not collect contacts or call logs
3. How We Use Your Information
We use the information collected to:
- Authenticate you and maintain your account session
- Sync your files, notes, and annotations to cloud storage
- Verify your subscription status and unlock Pro features
- Provide AI features, and check that new usernames are not offensive
- Credit reading challenges and run the leaderboard
- Send push notifications and keep your devices in sync
- Deliver app configuration and legal content via Firebase Remote Config
- Improve app stability through crash and performance monitoring
- Understand how the App is used (app analytics)
- Count how many installs and subscriptions each influencer partner’s link brought in, so we can pay them (influencer attribution)
- Keep free AI use within its daily allowance, so that it cannot be reset by clearing the App’s data or re-creating an account
4. Cloud Storage
The files and notes you upload are stored in Cloudflare R2 cloud storage. Files are stored under your unique user ID and are not shared with other users. Every signed-in account includes a free storage allowance; Pro raises it. If a subscription expires, your files stay fully accessible — the account simply returns to the free allowance, and files above it are removed afterwards, oldest first, 14 days after the subscription lapses.
5. Data Sharing
We do not sell, rent, or trade your personal information. We share data only with the following third-party service providers that help us operate the App and measure how people find it:
- Google Firebase — authentication, remote configuration, analytics, and crash reporting (Google Privacy Policy applies)
- Google Sign-In — account authentication
- Cloudflare R2 — cloud file storage (Cloudflare Privacy Policy applies)
- Google Play — subscription billing and purchase verification
- RevenueCat — subscription management and purchase validation. RevenueCat also tells our server about each subscription payment, renewal, and refund on your account (RevenueCat Privacy Policy applies)
- OpenAI — AI features and username checks. Text you select for an AI feature, and any new username you choose, is sent through our server to OpenAI to produce the result (OpenAI Privacy Policy applies)
We do not share your data with advertisers or data brokers.
Leaderboard. If you have a username, other users of the App can see your username, country, reading time, badges, and streak on the leaderboard. Your email address is never shown.
Influencer partners. A partner sees only totals for their own link: how many installs, sign-ups, and paying subscribers it brought in, the revenue from them, and what the partner has earned. A partner never sees who installed, signed up, or subscribed.
6. Advertising ID and Influencer Links
6a. Advertising ID
Firebase Analytics, which we use for app analytics, collects the Google Advertising ID (AD_ID), a resettable identifier provided by Google Play services on Android devices. We use it only to understand how the App is used. We do not use it for advertising, and we do not share it with advertisers.
You can reset or delete your Advertising ID at any time in your Android device settings, usually under Privacy → Ads.
6b. Influencer links
Some people install ReaderML through a link shared by one of our influencer partners. When you do, Google Play keeps the partner’s short tag from that link (its “install referrer”) and gives it to the App once, when it first opens. The App sends that tag to our own server, together with a one-way hash of your device’s app-specific Android ID (never the ID itself), so that each phone is counted only once.
If you then sign in, your account is linked to that partner’s tag. From then on, the subscription payments, renewals, and refunds that RevenueCat reports for your account are counted towards that partner’s totals: the plan, the amount after taxes and store fees, and the date. This is all done on our own server; no attribution or advertising company is involved.
Influencer attribution is switched off in the European Union, the European Economic Area, the United Kingdom, and Switzerland. There, the App does not read the install link at all. The App decides this from your SIM card, your mobile network, and your phone’s time zone.
If you installed the App any other way, for example by searching the Play Store, nothing is recorded for this purpose.
Partner promo codes. Some partners also share a promo code. If you type one in the App, you get the free Pro it offers, and your account is linked to that partner in the same way, unless it is already linked to another partner, in which case it stays with them. Because you choose to type the code, this happens wherever you are, including in the regions above.
7. Data Retention
- Account data, including your username and reading activity, is retained as long as your account is active
- AI results are saved on your device so you can find them again. They are not stored in your account
- Cloud-stored files are retained after an entitlement expires; anything above the free plan’s storage allowance is then removed oldest-first, 14 days after the subscription lapses. Files that already fit within the free allowance are kept
- If you delete your account or request data deletion, we will remove your stored files and account-linked data within a reasonable timeframe
- AI usage counts are kept against a one-way hash of your email address (never the address itself): a free account’s daily count for up to 2 days, and an unfinished subscription allowance for up to 30 days after account deletion, so that an allowance cannot be reset by re-creating an account
- If you use AI features without signing in, the hashed device ID and that day’s count are kept for up to 2 days. The anonymous account the App opens for this is deleted automatically after 30 days
- A record of any promo code you redeem is kept against a one-way hash of your email address (never the address itself), or your account ID if the account has no email, including after account deletion, so that a code cannot be redeemed again by re-creating an account
- Influencer attribution records are kept for as long as we need them to pay partners and keep our accounts. If you delete your account, the link between your account and a partner’s tag is deleted. The payment records stay, no longer tied to your account, because a partner’s earnings were counted from them
- Anonymous analytics data may be retained by Firebase per Google’s data retention policies
8. Your Rights
Depending on your jurisdiction, you may have the right to:
- Access the personal data we hold about you
- Request correction of inaccurate data
- Request deletion of your data
- Opt out of Firebase Analytics data collection, by contacting us. You can also reset or delete your Advertising ID as described in Section 6a
- Ask us to remove the link between your account and an influencer partner’s tag, by contacting us
- Download a copy of your stored files at any time from the Cloud Storage screen in the App
To exercise any of these rights, contact us at: support.readerml@gmail.com
9. Do Not Sell or Share My Personal Information
We do not sell or share your personal information with third parties for their own marketing or advertising purposes. For more detail, see the “Do Not Sell or Share My Personal Information” section in the App’s legal pages.
10. Children’s Privacy
The App is not directed at children under the age of 13. We do not knowingly collect personal information from children. If you believe a child has provided us with personal data, please contact us and we will delete it promptly.
11. Security
We take reasonable technical measures to protect your data, including encrypted connections (HTTPS/TLS) for all data in transit and access-controlled cloud storage. However, no method of transmission or storage is 100% secure, and we cannot guarantee absolute security.
12. Third-Party Services
The App integrates third-party services that have their own privacy policies. We encourage you to review:
- Google Privacy Policy (covers Firebase, Google Sign-In, and Google Play)
- Cloudflare Privacy Policy (covers R2 cloud storage)
- RevenueCat Privacy Policy (covers subscription management)
- OpenAI Privacy Policy (covers AI features and username checks)
We are not responsible for the privacy practices of these third-party services.
13. Changes to This Policy
We may update this Privacy Policy from time to time. When we do, the “Last updated” date at the top will change. Continued use of the App after changes are posted constitutes acceptance of the revised policy. The most current version is always available within the App under Profile → About ReaderML → Privacy Policy.
14. Contact
If you have questions or concerns about this Privacy Policy or your data, contact:
support.readerml@gmail.com