OCR Citation Chunker avatar

OCR Citation Chunker

Pricing

from $1.20 / 1,000 useful ocr page processeds

Go to Apify Store
OCR Citation Chunker

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

EchoEmpire LLC

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

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, and pageEnd for grounding a citation.
  • documentId (SHA-256 of source bytes) and deterministic chunkId for idempotent downstream indexing.
  • sourceUrl, resolvedUrl, sourceByteSize, and documentSha256 for provenance.
  • ocrConfidence plus ocrQualityScore, ocrQualityTier (high, usable, or low), and ocrQualityFlags for filtering uncertain extraction.
  • characterCount and estimatedTokens to 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 failed document outcome and is not processed or charged.
  • Up to 50 MB per PDF. A larger file is recorded as a failed document 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 tierUseful 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.