StoryAloud — Privacy Policy
Last updated: 2026-11-04
StoryAloud turns PDF documents and text you paste into audiobooks. This policy describes what the app collects, why, and how to get it deleted.
What we collect
- Account identity — when you sign in with Apple or Google, we receive a Cognito user ID (
sub) and, if you grant permission, your email address from the identity provider. Sign in with Apple also passes the name you choose to share, which is stored with your account. This links your library, credits, and purchases to your account. - Connected accounts — you may optionally link Apple and Google to the same profile from Settings. Linking requires your explicit confirmation; we do not automatically merge accounts by email.
- App-generated device ID — the app creates a random identifier on your device. After your first sign-in it is sent once, automatically, so that anything created on this device before account sign-in existed is merged into your account; we keep the link between that identifier and your account so the merge never runs twice.
- PDF files and pasted text — a PDF you upload is stored in AWS S3, and Amazon Bedrock, an AI service, reads it to extract the text to be read aloud; the model it runs is Anthropic's Claude, hosted by AWS in the EU. Text you paste (Quick text) needs no extraction, so it skips Bedrock; from there both take the same path. Amazon Comprehend detects the language, Amazon Bedrock (Anthropic's Claude) translates the text if you chose another language — with Amazon Translate as a backup — and our text-to-speech provider (Runpod) synthesizes the audio, so the text leaves AWS for Runpod. The text is kept with the audiobook as its transcript. We send your content to these services only to make your audio.
- Voice samples — if you choose to clone a voice, the recording you supply is stored in AWS S3 and sent to Runpod, as a short-lived link, so the synthesized audio can imitate it. If you save it as one of your voices, the recording is kept in your account so you can reuse it for later audiobooks, and each audiobook made with it keeps its own copy. A saved voice is used only to read your own documents and texts, never to train a model or for anyone else. It is deleted when you delete the voice in My voices, its copies are deleted with each audiobook, and everything is deleted when you delete your account.
- Purchase data — your subscription and credit-purchase state, managed for us by RevenueCat and keyed to your Cognito user ID. Apple and Google process the payment itself; we never receive or store your payment card details.
- Analytics — only if you turn on Share usage analytics in Settings. It is off until you do, and while it is off the app sends no analytics at all. When on, the app sends product events (app opens, paywall views, purchases, job creation) tied to your Cognito user ID, never the contents of your documents. PostHog also records, with every event, a random identifier its SDK creates, and the device context it collects by default: device model, manufacturer and name, operating system and version, app version and build, language setting (locale), time zone and screen size. PostHog receives your device's IP address with each request; the app asks PostHog not to derive a location from it, and the project is set to discard the IP address on arrival, so no location is stored. You can turn it off again in Settings at any time, and from then on nothing more is sent.
- Crash reports — when error monitoring is enabled in a production build, a crash sends the error message, the stack trace, the app version and your Cognito user ID to Sentry. Email addresses, document filenames and titles, and the signed links to your files are stripped from the report before it leaves the device.
- Push token — the Expo push token for your device, stored on job records so we can tell you when a conversion finishes.
How we use data
- Provide PDF- and text-to-audiobook conversion
- Manage the free tier, credits, and paid subscriptions
- Authenticate API requests via JWT tokens issued by AWS Cognito
- Improve the product via aggregated analytics, with your consent
Where data is processed
Our infrastructure runs in AWS in the eu-west-1 (Ireland) region. Some subprocessors listed below process data outside the EU under their own standard contractual clauses.
Retention
- Uploaded PDFs are deleted automatically 7 days after upload.
- Generated audio, transcripts and job metadata are kept while your account is active, until you delete the audiobook.
- Saved voices are kept until you delete them in My voices.
- Entitlements and credit balances are kept while your account is active.
- Deleting your account deletes: your Cognito account and sign-in; every audiobook with its audio, transcript, uploaded document or pasted text and the voice recording used for it; your saved voices; your credit balance, plan and purchase status, including your customer record at RevenueCat; the push tokens stored on your jobs; the link between your app-generated device ID and your account; and pending account-linking requests.
- Kept without your identity: our credit history (purchases and use of credits) is kept for accounting, with your user ID replaced by a random code derived from it that we cannot turn back into your user ID. We also keep the store's transaction identifier of each credit pack you bought, without your user ID, so one purchase can never be credited twice; and, for about two months, each subscription's transaction identifier with a code derived from your user ID, so a month's credits are given once.
- Not deleted automatically: analytics in PostHog and crash reports in Sentry, which are keyed to your user ID, are deleted on request by emailing privacy@storyaloud.com. Apple and Google keep their own purchase records under their policies. Operational logs and database backups that contain your user ID expire on their own within 90 days.
- See Delete your account for how to delete your account in the app or by email.
Subprocessors
- Amazon Web Services — S3, Lambda, DynamoDB, Cognito, Bedrock, Translate, Comprehend, Step Functions. Bedrock, Translate and Comprehend are AI services; Bedrock runs Anthropic's Claude model to extract text from your PDFs and translate it
- Apple and Google — sign-in identity providers, and payment processing for purchases
- RevenueCat — subscription and credit-purchase management, keyed to your Cognito user ID
- Runpod — GPU text-to-speech; receives the text to be read and, if you use voice cloning, your voice sample
- Expo — push notifications and application builds
- PostHog — product analytics, only if you have turned them on; hosted in the European Union; receives your events, device context and IP address
- Sentry — crash and error reports, when enabled; receives the error, the stack trace and your Cognito user ID, never your email or your document contents
Your rights
You can delete your account and its data yourself in the app, under Settings → Delete account; see Delete your account. You can also request access to, correction of, or deletion of your personal data, and you can withdraw consent for analytics at any time by turning off Share usage analytics in Settings. For everything else, email privacy@storyaloud.com and we will respond within 30 days.
Children
StoryAloud is not directed at children under 13, and we do not knowingly collect data from them.
Changes
If this policy changes materially we will update the date at the top of this page and, where the change affects how we use your data, notify you in the app.