Qovox OCRZero uploads · GDPR by design

OCR that never leaves the browser.

Point a camera at a document. Qovox finds the page, straightens it, removes shadows, reads it in 100+ languages and returns clean JSON, Markdown and a PDF. All of it runs on your visitor's device, so no document is ever sent to a server.

0 bytes of your documents uploadedPNG · JPG · WEBP · scanned PDFArabic, English + 100 more languagesCamera scanner + OCR in one SDKOne <script> tag
Live demo · scan, clean and read in one call

Photograph a document. Get clean data.

The real SDK is running in this tab. It finds the page in a photo, straightens it, removes shadows, reads it in any language and pulls out the fields. Open the Network tab: your document never leaves the device.

Drop a photo of a document, or clickPhone photos, scans, screenshots and PDFs
  1. Find page
  2. Straighten and clean
  3. Read
  4. Extract fields

The first scan downloads the OCR engine (about 10 MB, then cached by your browser).

Results appear here.
Bytes uploaded0 bytes
Total time–
Confidence–
PDF pages0
Features

Everything you need to read documents, nothing you have to trust.

Private by architecture

Pages are decoded, enhanced and recognised inside the browser. Only a license check and a page counter reach our server, never the document.

JSON, Markdown, text

One call returns all three: positioned text blocks with confidence, readable Markdown, and a plain string.

IDs, passports, invoices

Built-in extractors return named fields: passport MRZ, ID number and dates, invoice totals, tax and line items.

No per-page bill

The compute is your visitor's CPU. A flat license replaces the per-page pricing of cloud OCR APIs.

Multi-language

English by default; add Arabic, French, German, Spanish and 100+ more with a single option.

Scanner and OCR in one call

smartScan() finds the page in a photo, straightens it, cleans it, reads it and extracts the fields. Photos of tilted passports and ID cards that fail raw read correctly.

Never blocks your users

The license check fails open: if our server is unreachable, scanning keeps working. Only an explicit rejection stops it.

Drop-in SDK

A script tag or npm i qovox-ocr. Works with plain JS, React, Vue and any bundler. Domain-locked licenses.

Savings calculator

What are you paying cloud OCR for?

1,000 to 1,000,000 pages

Cloud prices are published list prices for the first pricing tier and change over time, so check your own bill. Qovox uses the Free, Pro or Enterprise plan that fits the volume.

Cloud OCR API$0per month
Qovox OCR $0flat per month
You keep$0
Pricing

Flat prices. Unlimited surprises: none.

Free

$0/mo

For trying it out and side projects.

  • 1 license key, 1 domain + localhost
  • 500 pages / month
  • Scanner: 5 pages per PDF
  • Text, Markdown and JSON
  • Community support
  • Priority support
Start free
Most popular

Pro

$29/mo

For products with real users.

  • 5 license keys, 10 domains each
  • 25,000 pages / month
  • Scanner: 50 pages per PDF
  • ID, passport and invoice extraction
  • Wildcard domains (*.yourapp.com)
  • Email support
Choose Pro

Enterprise

$89/mo

For platforms and high volume.

  • 50 license keys, 200 domains each
  • Unlimited pages
  • Scanner: unlimited pages per PDF
  • Everything in Pro
  • Priority support
  • Invoice billing
Choose Enterprise
FAQ

Questions, answered straight.

Is anything really not uploaded?

Correct. The image or PDF is read with the browser's File API, drawn to a canvas and recognised by a WebAssembly engine on the visitor's device. The SDK only calls our server with your license key, the page origin and a page count. You can verify this in the browser's Network tab.

Does it work offline?

After the first scan the engine and language data are cached by the browser. The license check fails open: if our server is unreachable, scanning keeps working. For a fully air-gapped deployment, self-host the engine files and pass workerPath, corePath and langPath to init().

How accurate is it compared with cloud services?

On clean, well-lit scans of printed text accuracy is high; photos taken at a steep angle, handwriting and very low resolution are harder and every result includes a confidence score so you can route weak pages to a human. We do not claim parity with the large cloud models on difficult documents.

What stops someone copying my license key?

Keys are locked to the domains you list. A key used from another domain is rejected, and localhost is always allowed for development. Keys can be rotated or revoked any time from the dashboard.

Which files can I scan?

PNG, JPG, WEBP, BMP and GIF images, plus scanned or digital PDFs (the first 10 pages by default, configurable with maxPages).

Is it GDPR compliant?

Because documents never reach us we do not process the personal data inside them, which removes most of the data-processing obligations. You remain responsible for how your own application stores the extracted results.