> Source: https://txtfetch.com/pricing > Plain-text twin — every page on txtfetch.com has one. https://txtfetch.com/text --- # Priced per document, not per surprise. Metered on one honest unit: a document extracted. No per-page arithmetic, no per-megabyte fine print. ## Hobby $0/month Free, permanently — for side projects and trying it out. - 500 documents / month - 10 MB max file size - All 615 supported formats - Community support [Get started](https://app.txtfetch.com/signup) most popular ## Developer $19/month For production pipelines that stay lean. - 10,000 documents / month - 50 MB max file size - OCR for scans & images - Priority support [Get started](https://app.txtfetch.com/signup) ## Scale $99/month For ingestion at serious volume. - 100,000 documents / month - 200 MB max file size - Priority OCR queue - Uptime SLA (planned) [Talk to us](https://txtfetch.com/contact?topic=scale) **Billing:** Hobby is free, forever, with no card required. Developer and Scale are billed monthly via Stripe. Upgrade, downgrade, or cancel anytime from your dashboard. Coming from a per-page vendor? [See how per-document pricing changes the math](https://txtfetch.com/compare/per-page-pricing). Every plan includes every response mode and quality tier: `format=markdown`, `format=json`, and `quality=premium`. A document is one document, whatever shape it comes back in. See [what comes back →](https://txtfetch.com/output). faq ## Questions we'd ask too. **What counts as a document?**: One extraction request: one URL fetched or one file uploaded. A 300-page PDF is still one document. **Which file formats are supported?**: Apache Tika detects 1,683 media types and has a real parser behind 615 of them, checked against the exact build txtfetch runs (see txtfetch.com/formats/coverage). Supported formats include PDF, DOCX, PPTX, XLSX, ODF, HTML, EPUB, EML/MSG email, RTF, and plain-text families. Scanned documents and images go through OCR. **Do you keep my documents?**: No. Documents are processed in memory and discarded when the response is returned. We store request metadata (timestamps, sizes, status) for metering. We never store content. **How do I get an API key?**: Sign up at app.txtfetch.com. The free Hobby plan gets you a key instantly, no card required. **What happens if extraction fails?**: You get an explicit error response with a machine-readable reason (unsupported format, encrypted file, fetch failure). It's never a silent empty string. Failed extractions don't count against your quota. **What happens when I hit a rate limit or my monthly quota?**: You get a typed 429. It's rate_limited if you've exceeded your API key's per-minute request rate, or quota_exceeded if you've used up your plan's monthly document allowance. Both codes are disambiguated by error.code, and both carry a Retry-After header telling you exactly when to retry. Failed extractions never count against your monthly quota, only successful ones. Need a larger plan? Upgrade in your dashboard. ## Stop parsing. Start shipping. Create an account and get an API key in minutes. The free Hobby plan needs no card. [Get started →](https://app.txtfetch.com/signup)