The fine print
Privacy Policy
Effective May 22, 2026
At a glance
- No accounts, no logins. You use LineRunner without creating an account or giving us an email address (except the optional waitlist form on this website).
- Scripts are processed, not retained. Your PDF is sent to our servers and to a third-party AI provider only long enough to extract the dialogue, and is not kept after parsing completes. Parsed scripts live on your device.
- We do not sell or share your personal information for advertising, and we do not use your scripts to train AI models.
- We collect a device identifier (Android ID) to prevent abuse and count usage — not to identify you personally or to show you ads.
- LineRunner is not intended for children under 13.
1. Who we are
This policy is provided by Optimize Overseas LLC, a Texas limited liability company doing business as Optimized Software Solutions ("LineRunner", "we", "our", or "us"), the developer and controller of the LineRunner mobile application and the website at linerunner.app.
For privacy questions, requests, or complaints, contact us at support@linerunner.app. Postal mail may be sent to the address below; please include "Privacy" in the subject line so we can route your request.
Optimize Overseas LLC
2303 Ranch Rd 620 S, Ste 160-309
Lakeway, TX 78734
United States
2. Information we collect
2.1 Information you provide to us
- PDF scripts you upload. When you upload a PDF, we receive the file's contents so we can extract its dialogue structure.
- Waitlist submissions. On this website, you can optionally submit your email address (and name, if you choose) to be notified when the iOS app launches or when significant updates ship.
- Correspondence. If you email us, we keep the message, your address, and our reply.
2.2 Information collected automatically
- Device identifier. The app reads Android's built-in
Settings.Secure.ANDROID_IDand sends it with each request to our backend in anX-Device-Idheader. This identifier is specific to your device and our app's signing key; it survives reinstalls but is reset on factory reset. We use it solely to enforce rate limits and detect abuse — never to associate your activity with your real identity or to show you advertising. - Usage and cost telemetry. Each time the app parses a script or synthesizes audio, we log an event to our internal analytics with the device identifier, a timestamp, the number of tokens processed, and the estimated processing cost. This is how we monitor service health and capacity.
- Request logs. Our backend logs standard information about incoming HTTP requests (IP address, timestamps, user-agent, response codes) for security and debugging. These logs are rotated on a short cycle.
- Crash diagnostics. If the app crashes or throws an unhandled error, we send a stack trace plus standard device information (OS version, device model, app version, locale, available memory) to Google's Firebase Crashlytics service so we can diagnose and fix the bug. Crashlytics generates its own per-install identifier, separate from the Android ID described above, which resets when the app is uninstalled. Crash reports do not include the contents of your scripts.
- Android Auto Backup. If you have Android Auto Backup enabled on your device (the default for most Android phones), your phone uploads an encrypted copy of the app's parsed-script database and your in-app preferences to your own Google Drive backup, up to Android's 25 MB Auto Backup quota. We do not have access to this backup; only Google and you do. Synthesized audio (TTS cache), crash diagnostics queues, and other on-device caches are excluded from this backup. You can disable Android Auto Backup for LineRunner under Settings → Google → Backup → App data on your device, or delete an existing backup at drive.google.com under Backups.
2.3 Information we do not collect
- We do not ask for your name, phone number, or address.
- We do not access your contacts, location, microphone, or camera.
- We do not track you across other apps or websites.
- We do not use cookies on the LineRunner app; the website uses only essential cookies.
3. How we use your information
We use the information described above to:
- Provide the core features of the app (parsing, voice playback, progress tracking).
- Prevent abuse of our AI processing infrastructure, including enforcing a rolling per-device rate limit.
- Send administrative alerts to our operations team when a device exceeds unusual usage thresholds.
- Understand aggregate usage patterns and costs, so we can improve the product and keep it affordable.
- Communicate with you if you've joined our waitlist or contacted us directly.
- Comply with applicable law.
4. Legal bases for processing (for users in the EU, UK, or Switzerland)
Where the General Data Protection Regulation or UK GDPR applies, we rely on the following legal bases:
- Performance of a contract — to provide the app's core features when you use them.
- Legitimate interests — to prevent abuse, monitor service health, keep the product running, and communicate about material changes to the service. Our legitimate interests are narrowly tailored and do not override your fundamental rights.
- Consent — for the optional waitlist signup on this website. You can withdraw consent by unsubscribing or emailing us.
- Compliance with law — where we are required to retain data to meet a legal obligation.
5. Who we share information with
We do not sell personal information. We do not share your information for cross-context behavioral advertising. We do share limited data with the following categories of service providers, each of which is contractually bound to use the data only to provide services to us:
5.1 AI processing providers
To parse your PDF scripts into structured dialogue, we transmit the PDF's content to Anthropic, PBC via the Anthropic API. To produce spoken audio for dialogue lines, we transmit the corresponding text to OpenAI, Inc. via the OpenAI API. Both companies are commercial AI providers operating under written agreements that:
- Prohibit use of our API content to train their models.
- Limit retention of submitted content to a short abuse-monitoring window (generally up to 30 days).
- Provide the contractual commitments required for international data transfers under GDPR.
Their privacy practices are described in their own policies, at anthropic.com/legal/privacy and openai.com/policies/privacy-policy. In very limited circumstances (for example, if content is flagged for a serious violation of their usage policies), these providers may retain content longer than 30 days for investigation.
5.2 Cloud infrastructure
Our backend runs on Google Cloud Platform (Cloud Run, Cloud Storage, and BigQuery). Google processes your data on our behalf as a sub-processor under the Google Cloud Data Processing Addendum.
To avoid reparsing duplicate uploads, we store parsed results in a content-addressed cache in Cloud Storage, keyed by a one-way cryptographic hash (SHA-256) of the PDF content plus a prompt version. The raw PDF is not retained once parsing completes; only the parsed structured output is cached, and only structured output derived from an identical future upload could retrieve it.
5.3 App distribution
The app is distributed through the Google Play Store. Google Play receives standard distribution metrics (downloads, crashes) independent of what the app itself collects. See Google Play's own privacy disclosures for details.
5.4 Crash diagnostics
To detect and fix bugs after release, the app integrates Firebase Crashlytics, a crash-reporting SDK provided by Google LLC. When the app crashes or throws an unhandled error, Crashlytics transmits a stack trace, the app version, device model, OS version, locale, available memory, and a Crashlytics-generated per-install identifier to Google. Crash reports do not include the contents of your scripts, your Android device ID, or any text you have typed into the app. Google processes this data on our behalf as a sub-processor under the Firebase Data Processing and Security Terms. See firebase.google.com/support/privacy for Google's Firebase privacy documentation.
5.5 Email and operational tools
Rate-limit and capacity alerts are delivered to our operations email address via standard SMTP using a Google Workspace mailbox. If we add a transactional email provider to send waitlist confirmations, we will update this policy before switching.
5.6 Legal and safety
We may disclose information if required to do so by law, valid legal process, or in response to a good-faith belief that disclosure is necessary to protect our rights, the safety of users, or the security of our services.
5.7 Business transfers
If Optimize Overseas LLC is involved in a merger, acquisition, or sale of all or part of its assets, information held by LineRunner may be transferred to the successor. We will notify users of any such transfer that would materially change how their data is handled.
6. International transfers
LineRunner's backend is hosted in the United States (Google Cloud, region us-central1). Anthropic and OpenAI are US companies. Accordingly, if you use LineRunner from outside the United States — including from the European Economic Area, the United Kingdom, Switzerland, Canada, or elsewhere — your data will be transferred to and processed in the United States.
For EEA/UK/Swiss users, these transfers rely on Standard Contractual Clauses (SCCs) executed with our sub-processors, together with any supplementary measures required by the laws of your country.
7. How long we keep information
We keep information only as long as we need it for the purposes listed above. Specific retention periods:
| Category | Where | Retention |
|---|---|---|
| Uploaded PDF scripts | In-memory on our backend during parsing | Discarded immediately after the parse completes |
| Parsed script cache | Google Cloud Storage (content-addressed; keyed by file hash, not by user) | Indefinite unless invalidated; purged on request |
| Parsed scripts on your device | Local SQLite database inside the app, and (if Android Auto Backup is enabled) an encrypted copy in your personal Google Drive backup | Until you delete the script from the app. If you uninstall the app, Google Drive retains your backup until you delete it manually (drive.google.com → Backups) or it expires per Android's Auto Backup policy (typically 60 days after the app is last used). |
| Synthesized audio (TTS) | Local file cache inside the app (excluded from Android Auto Backup; does not leave your device) | Up to 180 days, then automatically cleaned up |
| Parse / TTS usage events and device identifier | Google BigQuery | 24 months, then aggregated and deidentified |
| Rate-limit counters | Backend memory and BigQuery | Rolling 24-hour window |
| Server request logs | Google Cloud Logging | 30 days |
| Crash diagnostics (stack traces, device info) | Google Firebase Crashlytics | 90 days from the date of the report |
| Waitlist email address | Our backend database (or equivalent) | Until iOS launch notification is sent plus 30 days, unless you ask us to keep you on our list |
| Support correspondence | Google Workspace inbox | Up to 24 months |
8. Your rights and choices
8.1 Everyone
Regardless of where you live, you can:
- Uninstall the app, which removes the locally cached audio from your device. If you have Android Auto Backup enabled, your parsed-script database may persist in your personal Google Drive backup; to remove that copy, visit drive.google.com → Backups, tap your LineRunner backup, and choose Delete.
- Email support@linerunner.app to request deletion of any server-side cache entries or usage records associated with your device identifier, to request a copy of data we hold about you, or to ask us to correct it.
- Unsubscribe from any waitlist email with one click.
Because we don't ask for your name or email in the app itself, we identify your server-side records by device identifier only. To exercise a deletion request, we'll ask you to send us the device identifier (visible in the app's About screen) so we can match and remove the correct records.
8.2 Residents of the European Economic Area, the United Kingdom, and Switzerland
Under the GDPR and analogous laws, you have the right to:
- Access the personal data we hold about you.
- Rectify inaccurate or incomplete data.
- Erase your data ("right to be forgotten").
- Restrict processing in certain circumstances.
- Data portability — receive a machine-readable copy of the data you provided to us.
- Object to processing based on legitimate interests.
- Withdraw consent where processing is based on consent.
- Lodge a complaint with your local data protection authority.
8.3 Residents of California and other US states with consumer privacy laws
Residents of California, Virginia, Colorado, Connecticut, Texas, Utah, Oregon, Montana, Iowa, Delaware, Indiana, Tennessee, New Hampshire, New Jersey, Minnesota, Maryland, Rhode Island, or Kentucky may have the right, under their respective state laws, to:
- Know what personal information we collect and how we use it.
- Request deletion of your personal information.
- Request correction of inaccurate personal information.
- Opt out of the sale or sharing of your personal information for cross-context behavioral advertising.
- Limit the use and disclosure of sensitive personal information.
- Not be discriminated against for exercising these rights.
We do not sell personal information, and we do not share personal information for cross-context behavioral advertising. We do not use sensitive personal information for purposes that require a right-to-limit disclosure.
To exercise any of these rights, email support@linerunner.app. We will respond within the timeframe required by your state's law (typically 45 days). You may designate an authorized agent to make a request on your behalf; we will verify the agent's authorization and your identity before acting on the request.
If your browser sends a Global Privacy Control signal, we will treat it as a valid opt-out of sale or sharing, even though we do not currently sell or share data in that sense.
9. Children's privacy
LineRunner is intended for actors and performers aged 13 and older. We do not knowingly collect personal information from children under 13. If we learn that we have collected information from a child under 13, we will delete it.
If you are a parent or guardian and believe your child under 13 has used LineRunner or provided us with information, please email support@linerunner.app and we will promptly delete the information and remove the child's access.
10. Automated decisions about you
Our rate limiter automatically rejects parse requests from a single device after it exceeds a defined threshold within a rolling 24-hour window. We do not use automated decision-making for purposes that have legal or similarly significant effects on you. If you believe a rate-limit decision has been made in error, email support@linerunner.app and we will review it.
11. Security
We protect your information with a layered set of measures, including:
- Transport-layer encryption (HTTPS) on all connections between the app and our backend, and between our backend and our sub-processors.
- Encryption at rest for data stored in Google Cloud Storage and BigQuery.
- Least-privilege access controls and audit logging for administrator actions.
- Isolation of the landing-page, dashboard, and backend services so that a compromise of one does not grant access to the others.
- Regular rotation of API keys and credentials.
No system is perfectly secure. If you believe your information has been exposed, please contact us immediately.
12. Changes to this policy
We may update this Privacy Policy from time to time. The "Effective" date at the top of this page indicates when the current version took effect. For material changes — for example, adding a new category of data we collect or a new third-party recipient — we will provide at least 30 days' advance notice through the app, through the landing page, or via email to waitlist subscribers, whichever channels are appropriate.
13. Contact us
If you have any questions, concerns, or requests relating to this policy or your personal information, email support@linerunner.app or write to Optimize Overseas LLC, 2303 Ranch Rd 620 S, Ste 160-309, Lakeway, TX 78734. We aim to respond within three business days.
14. Purchases
When you purchase a script parse credit, Google Play processes your payment. We do not receive your payment-card data. We do receive a Google Play purchase token and product identifier, which we send to Google's Play Developer API to validate the purchase, and we keep an audit record of the validation in BigQuery (linked to your Android device ID) for fraud prevention and customer support.
15. Bypass Codes & Entitlements
If you redeem a bypass code, we record the code, your Android device ID, and the timestamp in BigQuery so the server can verify your free-upload entitlement on subsequent requests. Codes are not user-identifiable on their own; the device-ID linkage is purely for entitlement enforcement.
16. Script Library Analytics
When you add a Library script to your Repertoire, we log the library slug and your Android device ID so we can understand which titles are most useful and improve curation.
Questions? support@linerunner.app