Read documents, get structured data back.

Upload a stack, or point us at your own S3 bucket. You get Markdown with real tables, every region typed and boxed, and key/value fields by name — checked against the page in a review screen built for it.

In bucket mode your documents never leave your own storage: we read from your prefix, write the results back beside the source, and drop your credentials the moment the job ends. No hosted OCR API can offer that at any price.

Sign in with GitHub See pricing

Two things we do

Upload one page and see for yourself, or read the pricing.

Document parsing — layout

Markdown, real <table> HTML with rowspan and colspan intact, and every region typed with its pixel box. Measured at 0.912 TEDS on OmniDocBench — level with the published state of the art.

Field extraction — fields

Name the fields you want and get them back as key/value pairs: 1 as lastname, [due date] as due, or if it is a driver license: …. Included on every plan.

Your storage, not ours

Read from your prefix, write results beside the source. We hold nothing after the job finishes — credentials are dropped the moment it ends.

First come, first served

A queue with per-key fairness, so one large job cannot starve a small one behind it.

Whole documents

PDFs are rasterised a page at a time, so a 500-page file does not need 500 pages of memory.

How it works

  1. Sign in and create an API key.
  2. Give us a bucket, region and prefix, plus read/write credentials scoped to it.
  3. We queue every page, OCR it, and write _ocr/<key>.md and _ocr/<key>.json back to your bucket.

Access is currently invite-only while capacity is limited.