Privacy Policy

Effective Date: April 19, 2026
Last Updated: April 20, 2026 (Rev. 3 — rolling 24-hour window + fair-use throttle field disclosure)

1. Introduction

ParsleyPDF Team ("we," "our," or "us") operates ParsleyPDF, a mobile application that uses artificial intelligence to help you understand PDF documents. We are based in Ireland and committed to protecting your privacy in compliance with the General Data Protection Regulation (GDPR), the California Consumer Privacy Act (CCPA), and the Children's Online Privacy Protection Act (COPPA).

This Privacy Policy explains what information we collect, how we use it, and your rights regarding your data.

2. Information We Collect

2.1 Anonymous Authentication Identifier

When you first open ParsleyPDF, we create an anonymous authentication session using Firebase Authentication. This generates a random user identifier (UID) that is not linked to your name, email, or any personal account. This UID is used solely to authenticate API requests and enforce usage limits.

2.2 Purchase Data

If you subscribe to ParsleyPDF Pro (Monthly or Weekly), your subscription is processed through Apple's In-App Purchase system and managed by RevenueCat, our subscription infrastructure provider. We receive:

We do not receive your Apple ID, payment method, billing address, or any financial details. Apple handles all payment processing directly.

2.3 Document Content (Ephemeral Processing Only)

When you use AI features — including chat, document summaries, and quizzes — the text content of your document is sent to our servers for processing by Google's Gemini AI. Before any data is sent, you will be asked to provide explicit consent within the app. You may revoke this consent at any time in Settings. This data is:

Along with document content, we send your chat message, recent conversation history (up to 10 messages), and your RevenueCat app user ID (for subscription verification).

2.4 Anti-Abuse Counters

To enforce the daily usage limits described in Section 5.3 and prevent automated abuse, we maintain anti-abuse counters in two separate locations. We disclose both below.

2.4.1 On-device counters (iOS Keychain)

Stored locally on your device and used for in-app display (for example, the "Questions today: N of M" row in Settings):

These on-device counters are encrypted by iOS at rest, persist across app reinstalls, and are not synced to iCloud. They are not transmitted to our servers as a payload field.

2.4.2 Server-side counter (Google Cloud Firestore)

Because an on-device counter can be circumvented by a modified or reinstalled app, we also maintain a server-side counter whose sole purpose is to enforce the daily query cap described in Section 5.3 and the fair-use throttle described in Section 5.3. This counter is keyed on your anonymous RevenueCat app user ID (see Section 2.2) and contains the following fields:

The counter contains:

Your 24-hour quota resets automatically 24 hours after your first counted request of each period, giving every user an identical quota worldwide regardless of timezone. The underlying record persists while you continue to use the app. It is not shared with, sold to, or otherwise disclosed to any third party. It is not used for advertising, profiling, analytics, or any purpose other than enforcing the Section 5.3 daily cap and fair-use throttle.

This server-side counter is not considered "tracking" under Apple's App Tracking Transparency framework, because it is not combined with data from any other app, website, or third-party data broker.

2.5 Information We Do NOT Collect

3. How We Use Your Information

Data Purpose Legal Basis (GDPR)
Anonymous UIDAuthenticate API requests, enforce rate limitsLegitimate interest
RevenueCat user IDVerify subscription status and tier for feature accessContract performance
Document contentGenerate AI responses (chat, summary, quiz)Contract performance
Anti-abuse counters (on-device)Display usage in-app, enforce free tier limits on-deviceLegitimate interest
Anti-abuse counter (server-side Firestore)Enforce daily query cap against automated abuseLegitimate interest

We do not use your data for advertising, profiling, or automated decision-making.

4. Third-Party Services

Service Provider Data Processed Purpose
Firebase AuthenticationGoogleAnonymous UIDUser authentication
Cloud Functions for FirebaseGoogleDocument content (ephemeral), anonymous UIDAI request processing
Cloud FirestoreGoogleAnonymous RevenueCat app user ID + daily request count (two fields only)Anti-abuse daily-cap enforcement
Gemini APIGoogleDocument content (ephemeral)AI text generation
RevenueCatRevenueCat Inc.App user ID, subscription status and tierSubscription management
Apple App AttestAppleDevice attestation tokenAnti-fraud verification

No third-party service receives your documents for storage or training purposes.

Google, as our AI processing provider, provides the same or equal level of protection for your data as described in this Privacy Policy. Specifically, Google processes your document content through the Gemini API — it may be temporarily cached to improve performance, then automatically deleted. It is never used for model training.

5. Data Storage & Security

5.1 On-Device Storage

Your PDF documents and all associated data (chat history, summaries, quiz results) are stored exclusively on your device using:

Documents are never uploaded to or stored on our servers.

5.2 Keychain Storage

Anti-abuse counters are stored in the iOS Keychain with kSecAttrAccessibleAfterFirstUnlock protection. This data:

5.3 Server-Side Security

Our Cloud Functions run on Google Cloud (us-central1 region) with:

6. Data Retention

Data Retention Period
Documents & chat historyStored on your device only. Deleted when you delete the document or uninstall the app.
Anonymous authenticationExpires after 90 days of inactivity (Firebase automatic cleanup).
Document content sent for AIEphemeral — processed in memory and discarded immediately after response generation. No server-side logs.
Anti-abuse counter (server-side)Numeric count resets 24 hours after your first counted request of each period (rolling window, worldwide-consistent). The underlying record persists while you continue to use the app.
Anti-abuse counters (Keychain)Persist on device until manually cleared via iOS Settings > General > Transfer or Reset iPhone.
Subscription data (RevenueCat)Retained by RevenueCat per their privacy policy. We do not maintain a separate copy.

7. Children's Privacy

ParsleyPDF is intended for users aged 13 and older. We do not knowingly collect personal information from children under 13. Because we use anonymous authentication with no personal data collection, there is minimal risk. However, if you believe a child under 13 is using the app inappropriately, please contact us and we will take appropriate action.

Our age minimum of 13 complies with:

8. Your Rights

8.1 GDPR Rights (EU/EEA Users)

Under the GDPR, you have the right to:

Because ParsleyPDF uses anonymous authentication and stores documents only on your device, most data is already under your direct control.

8.2 CCPA Rights (California Users)

Under the CCPA, California residents have the right to:

9. Data Deletion

9.1 Deleting Your Documents

Delete individual documents within the app. This permanently removes the document and all associated data (chat history, summary, quiz results) from your device.

9.2 Deleting All Data

Uninstalling ParsleyPDF removes all app data from your device, including:

Note: Keychain data (anti-abuse counters) persists after uninstall by iOS design. To remove it, go to iOS Settings > General > Transfer or Reset iPhone > Reset All Settings.

9.3 Anonymous Authentication

Your anonymous Firebase authentication session expires automatically after 90 days of inactivity. No action is required.

9.4 Subscription Data

To cancel your subscription, go to Settings > Apple ID > Subscriptions, or use the link in ParsleyPDF's Settings tab. RevenueCat retains subscription transaction data per their privacy policy and Apple's requirements.

10. International Data Transfers

ParsleyPDF's Cloud Functions and the server-side anti-abuse counter (Cloud Firestore) are hosted on Google Cloud in the us-central1 (Iowa, USA) region. No data we hold leaves this region. When you use AI features, your document content is transmitted to US-based servers for ephemeral processing.

For EU/EEA users, this transfer is governed by:

11. Changes to This Policy

We may update this Privacy Policy from time to time. We will notify you of material changes by:

Your continued use of ParsleyPDF after changes are posted constitutes acceptance of the updated policy.

12. Contact Us

If you have questions about this Privacy Policy or wish to exercise your data rights, contact us at:

ParsleyPDF Team
Email: tezaapps@gmail.com

For GDPR-related inquiries, you also have the right to lodge a complaint with your local data protection authority. In Ireland, this is the Data Protection Commission.