A Thai PDF that prints perfectly can still give up broken text. Its text layer may drop the vowels and tone marks above and below a consonant, or store them out of order, and a scan has no text layer at all. Most Thai document work starts with OCR for that reason. The Thai PDF guide shows each failure with the string it produces.
What comes after OCR depends on the job. A language model wants Markdown, and an accounting system wants typed fields. The output shape, the languages on the page, and where the service may run decide which vendors stay on the list.
Every vendor fact below links that vendor's own documentation, as our comparison pages verified it in October 2026. No vendor is scored or ranked. Published rates for each one are on the OCR API comparison, re-checked every month.
Check that Thai is on the list#
Amazon Textract detects text in English, French, German, Italian, Portuguese, and Spanish, and reads handwriting in English only. Thai is not on its list.
Azure Document Intelligence lists Thai for printed text and for handwriting on its Read and Layout models, and the language code is optional. Mistral's language list places Thai under Southeast Asia. LlamaParse's OCR takes an optional list of expected languages, and its API reference includes th.
Paxa OCR Lite reads Thai first, with other languages read as printed, including pages that mix Thai and English or Thai and Arabic digits.
For Thai PDFs going into an LLM or a search index#
A language model reads text, and a table flattened into a run of words loses its rows. Markdown keeps headings, lists, and tables in plain characters.
Paxa OCR Lite returns each page as GitHub-flavored Markdown in reading order, with headings, lists, and tables, or as typed blocks of the same reading. One request reads up to 50 pages and 10 MiB of PDF, PNG, JPEG, or WebP.
Mistral OCR returns Markdown per page, with tables inline or as separate Markdown or HTML, and extracts the page's images beside the text. LlamaParse returns Markdown with headings and tables on every tier except Fast, which returns text without Markdown. Azure Document Intelligence's Layout model can return Markdown, with tables written as HTML in v4.0.
Feeding Thai documents to an LLM and the search index guide take the Markdown from there, and the knowledge bases page shows the workflow.
For fields you define#
Document extraction returns named values, such as a seller's tax ID or an invoice total, ready for a database row.
Paxa Document Extraction fills a typed schema of up to 100 leaf fields over up to 20 pages, in one response. Each value is text printed in the document, or null with the reason. It returns no confidence score.
Mistral's annotations fill a Pydantic, Zod, or JSON schema for the whole document or for each image region, with nested objects, arrays, and enums. LlamaParse Extract fills a JSON schema of up to 5,000 properties as a job you poll, and can attach citations and a confidence score to each field.
Write the same fields into each vendor's schema and run one real document through all three. Then compare which fields came back empty or wrong, and why. The Document Extraction page shows one Thai tax invoice filled in.
For Thai invoices, receipts, and ID numbers#
Azure Document Intelligence's prebuilt invoice model lists Thai among its languages, with THB among its currencies, and its receipt model lists Thai too. Amazon Textract's FAQs state that it processes invoices, receipts, and identity documents in English only.
Paxa Document Extraction has built-in types for Thai documents. A 13-digit Thai identifier is verified by its check digit, and provinces, banks, insurers, and legal forms resolve against tables the service ships. Dates read in either the Buddhist or the Common Era.
Whichever service reads the card or the invoice, keep a person on the fields that move money, such as the payee, the amount, and the account number. The invoices, identity documents, and contracts pages show each workflow.
For handwritten forms#
Azure Document Intelligence's v4.0 handwriting table lists twelve languages, Thai among them, for its Read and Layout models. Amazon Textract reads handwriting in English only.
Test with forms filled in by several people, photographed the way your users will photograph them.
For Office files and very long documents#
Azure Document Intelligence's Read and Layout models accept DOCX, PPTX, and XLS beside PDFs and images, and its Standard tier analyzes documents of up to 2,000 pages and 500 MB. Mistral OCR accepts PPTX and DOCX, up to 50 MB and 1,000 pages.
LlamaParse reads more than 130 file types, and Parse takes files of up to 512 MB with no page cap.
Paxa OCR Lite reads PDF, PNG, JPEG, and WebP, up to 50 pages and 10 MiB per request. Export an Office file to PDF first, and split a longer document into parts.
For running on your own infrastructure#
Some teams must read documents inside their own network. Azure Document Intelligence's container guide runs the Read and Layout models, and the invoice, receipt, and ID document models, as Docker containers on premises.
LlamaIndex's self-hosting page runs Parse and Extract on your own Kubernetes cluster through Helm charts, on Enterprise plans. Mistral's OCR 4 announcement describes a single-container deployment for self-hosting, available to enterprise customers.
Jobs and vendors at a glance#
| Job | Vendors whose documentation states the fit |
|---|---|
| Thai PDFs to Markdown | Azure Document Intelligence, LlamaParse, Mistral OCR, Paxa OCR Lite |
| A schema you write | LlamaParse Extract, Mistral annotations, Paxa Document Extraction |
| Thai invoices, receipts, and ID numbers | Azure Document Intelligence, Paxa Document Extraction |
| Thai handwriting | Azure Document Intelligence |
| Office files and long documents | Azure Document Intelligence, LlamaParse, Mistral OCR |
| Your own infrastructure | Azure Document Intelligence, LlamaParse, Mistral OCR |
Test on your own documents#
- Collect real pages, such as a clean digital PDF, a phone photo, a faxed form, and a page with a table.
- Run the same pages through each vendor listed under your job.
- Check the Thai marks first, meaning the vowels and tone marks above and below each consonant and the order they come back in.
- Check Thai digits, Buddhist Era years, and amounts against the printed page.
- For extraction, list the fields that came back empty or wrong, and read why.
- See a Thai tax invoice read into Markdown and into fields on the OCR page.
Common questions#
Which Thai OCR is best?#
The one that fits your job. Match your documents and the output you need to a job above, then run your own files through the vendors it names.
What is the difference between OCR and document extraction?#
OCR returns the text of each page, as Markdown or as structured blocks. Document extraction fills named fields, such as an invoice number or a date, from the same file. Paxa OCR Lite does the first and Paxa Document Extraction the second.
Can one pipeline use more than one of these services?#
Yes. Route each document by its job, for example slide decks to one service and scanned Thai forms to another. Your code then reads one response shape per service.
Where are the prices?#
On the OCR API comparison, which lists each vendor's published rate per 1,000 pages, re-checked every month.
Do you publish accuracy comparisons?#
No. We publish no accuracy, quality, or speed figures for any model. Run the same documents through each service you are considering and compare the output.