OCR Citation Chunker
Pricing
from $1.20 / 1,000 useful ocr page processeds
OCR Citation Chunker
Extract text from scanned or image-only PDFs into page-aware JSON chunks for RAG and vector database ingestion, with OCR confidence, page citations, provenance, and stable chunk IDs.
Pricing
from $1.20 / 1,000 useful ocr page processeds
Rating
0.0
(0)
Developer
EchoEmpire LLC
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
Give this Actor a scanned or image-only PDF and it returns deterministic, page-aware citation-ready JSON chunks with OCR confidence, quality signals, source provenance, and stable citation identifiers.
Use it to turn archival scans, printed reports, forms, and image-based research PDFs into retrieval-ready records for RAG, search, and agent workflows. It is intentionally narrow: it processes PDFs, does not interpret their meaning, and never invents text.
Input
Provide either a single url or a batch in urls. The Actor downloads each PDF, runs Tesseract OCR page by page, and groups usable text into chunks without crossing document boundaries. chunkSize controls the approximate maximum characters per chunk; overlap retains trailing context in the next chunk. ocrWorkers requests 1–8 parallel Tesseract workers, with the effective count capped by available memory. ocrDpi controls page rasterization from 100–300 DPI. If omitted, chunkSize defaults to 3000, overlap to 300, ocrWorkers to 4 and ocrDpi to 200. Invalid input fails fast before any download or charge, with the reason in the run status message and in SUMMARY (status: "invalid_input", error).
{"url": "https://example.com/scanned-report.pdf","chunkSize": 3000,"overlap": 300,"ocrWorkers": 4,"ocrDpi": 200}
PDF URLs must be publicly reachable. Password-protected, malformed, or unreachable inputs are reported in the final SUMMARY; a failed document does not discard usable output from other documents in the same run.
Output
The default dataset contains one JSON record per citation-ready chunk. Important fields include:
text,pageStart, andpageEndfor grounding a citation.documentId(SHA-256 of source bytes) and deterministicchunkIdfor idempotent downstream indexing.sourceUrl,resolvedUrl,sourceByteSize, anddocumentSha256for provenance.ocrConfidenceplusocrQualityScore,ocrQualityTier(high,usable, orlow), andocrQualityFlagsfor filtering uncertain extraction.characterCountandestimatedTokensto help size vector-store or LLM work.
The key-value store record SUMMARY reports totals, per-document outcomes, failed URLs, and average OCR quality. A useful OCR page is one that produces usable text and saved citation-ready output. Blank or non-readable pages are not emitted as chunks, are not charged as useful OCR pages, and are reflected in document outcomes.
Example record
{"documentId": "sha256:...","chunkId": "sha256:...","pageStart": 4,"pageEnd": 4,"ocrConfidence": 92.4,"ocrQualityScore": 94.1,"ocrQualityTier": "high","ocrQualityFlags": [],"text": "Extracted source text..."}
Limits and quality
OCR is best for clear, reasonably upright scans. Handwriting, complex tables, faint pages, unusual scripts, and heavily compressed imagery may produce incomplete text. Use ocrQualityTier and ocrQualityFlags as deterministic review signals before relying on a chunk. The Actor currently targets English OCR.
The default run configuration is 1024 MB memory and a 3600-second timeout, with OMP_THREAD_LIMIT=1 set in the image (512 MB is the minimum allowed memory). Run time varies with page count, image resolution, and source quality.
Limits
- Up to 10 PDF URLs per run (more fails fast as invalid input).
- Up to 100 pages per PDF. A longer PDF is recorded as a
faileddocument outcome and is not processed or charged. - Up to 50 MB per PDF. A larger file is recorded as a
faileddocument outcome and is not charged. - The downloaded file must be a PDF (bytes starting with
%PDF).
Pricing
The Actor uses pay-per-event pricing. It charges once for each useful OCR page only after that page's citation-ready output is saved. Blank pages that produce no useful output are not charged as page-processed events. Platform usage costs are included.
| Subscription tier | Useful OCR page price |
|---|---|
| Free / Bronze | $1.50 per 1,000 pages |
| Silver | $1.35 per 1,000 pages |
| Gold and higher | $1.20 per 1,000 pages |
Actor start (apify-actor-start) is $0.00005 per GB of run memory (minimum one event), charged once per run: $0.00005 at the default 1024 MB, $0.0002 at 4096 MB.
Integration
Consume the dataset through the Apify API, webhook, Make, Zapier, or an agent workflow. Store chunkId to deduplicate re-runs, cite sourceUrl with pageStart/pageEnd, and retain documentId to trace every chunk back to its exact source bytes.
For AI agents and MCP
Contract: public scanned or image-only PDF URL → OCR-backed, page-aware citation-ready JSON chunks.
Use this Actor for scanned PDF OCR, image-only PDFs, OCR to JSON, citation-ready OCR, and scanned-document RAG ingestion. For PDFs with an embedded text layer, use PDF Citation Chunker instead.