Privacy, data flow, and account controls.

This policy explains what data OpenReader processes, how it is used, and the controls available to you. It applies to the instance currently running at https://openreader.richardr.dev. Effective date: September 2, 2026.

No personal data salesAnalytics consent controlsAccount export + deletion toolsEncrypted document storage
US-only availability: this official instance is intended for users located in the United States, and requests outside the US may be blocked.

1. Information we collect

OpenReader collects data needed to operate the service and maintain your reading state. Categories include account identifiers and uploaded content. Optional product usage analytics is collected only after you consent.

  • Identifiers: Email, session-related identifiers, account name, and IP metadata for authentication and security.
  • Reader content: Uploaded documents, reading progress, bookmarks, and playback settings required for core functionality.
  • Optional usage events: After you consent, page views and related referrer, browser, device, and approximate location information used to understand and improve the product.

2. How we use your data

  • Deliver and personalize document reading and text-to-speech playback.
  • Process uploaded files for parsing, synchronization, and optional audiobook export.
  • Keep the platform secure and prevent abuse.
  • Diagnose issues and improve performance of existing functionality.

3. Service providers and analytics

OpenReader does not sell personal information. We use service providers only to run product infrastructure and user-initiated features.

Optional analytics does not load or send events unless you explicitly accept it. Declining leaves it disabled, and Global Privacy Control (GPC) signals are always treated as an opt-out.
  • Hosting: Vercel for application hosting and edge runtime, plus optional analytics only after you consent.
  • Database: Neon PostgreSQL for account and document metadata storage.
  • File storage: Railway S3-compatible object storage for encrypted uploaded documents and audio artifacts.
  • TTS processing: User-initiated TTS is handled by shared providers: Kitten TTS FastAPI (self-hosted on a local Pi cluster) and Replicate.

4. Your privacy rights

Depending on your jurisdiction, rights may include access, correction, deletion, and opt-out controls. OpenReader includes in-product controls for exporting and deleting account data.

  • Right to know: request details about data categories and usage.
  • Right to delete: delete your account and associated records in Settings.
  • Right to correct: update account data where applicable.
  • Right to opt out: disable non-essential analytics through consent controls.
  • Right to non-discrimination: exercising privacy rights does not reduce service access.
In-app controls: Use Export My Data in Settings to download account metadata plus object-storage-backed files, or use Delete Account for permanent account removal.

5. Retention and security

Account data and uploaded files are retained while your account remains active. Data is encrypted at rest in storage. OpenReader does not currently provide end-to-end encryption.

The owner of this instance may be able to access stored metadata and uploaded files needed to operate the service.

Passwords are not stored as readable plaintext; the authentication system stores credential values as non-plaintext verification data.

Account deletion triggers removal of active account records and associated storage artifacts as part of the deletion flow.

6. Processing location

For the official instance, access is restricted to users in the United States. Processing location depends on the configured infrastructure and providers used by this deployment.

7. Contact and open source

Questions or concerns can be raised through the project repository. Self-hosting is available if you want full infrastructure control.