Guides → Playground & Guide → Corpus Onboarding Cost - One-Time + Monthly to Make Documents AI-Ready

Corpus Onboarding Cost - One-Time + Monthly to Make Documents AI-Ready

Meet Priya Nair. Head of AI at a hospital network onboarding 1.2M pages for clinical RAG. "Before we promise a RAG assistant, what does it cost just to get our documents in - OCR, embeddings, the vector DB - one-time and monthly?"

🔥 Half the corpus is scanned. Leadership keeps asking for 'the number' and every estimate we get is a single line item, not the whole pipeline.

The story

The model is the cheap part. Getting a proprietary corpus AI-ready is a pipeline - OCR, parsing, chunking, embedding, indexing - and the cost is front-loaded long before a single answer is generated.

OCR dominates the one-time bill whenever documents are scanned: plain-text OCR is cheap, but forms/handwriting cost far more per page. Embedding is usually a rounding error by comparison. The monthly bill is mostly the vector index (often a flat minimum) plus storage.

Priya's 1.2M-page archive (half scanned): the one-time onboarding lands in the low five figures, with a modest flat monthly index. Swapping a cheaper embedding model barely moves it - reducing the scanned share does.

🎮 Playground

Corpus Onboarding Cost Playground

Here are the inputs that move the result the most. Play with the sliders and check it out. The number updates live.

What will onboarding a corpus cost?

A one-time cost to OCR, chunk, embed and index your documents. Provider / embedding / vector store default in the teaser; the full form exposes them.

Estimated one-time ingest

💡Pages drive OCR + embedding tokens; the scanned share decides how much OCR you pay for. This is a one-time ingest, not a monthly bill.

Ready to run the numbers?

Open the full calculator. Pick a model, enter your tokens, see per-call, daily, monthly, and annual cost.

🚀 Open the full calculator →

Embedding models by price per million tokens

Verified 13 hours ago
  1. 1
    GPT-5 Mini
    $0.250 in · $2.00 out ·
  2. 2
    gpt-5.1-codex-mini
    $0.250 in · $2.00 out ·
  3. 3
    Command
    $1.00 in · $2.00 out ·

About this calculator: Corpus Onboarding Cost - One-Time + Monthly to Make Documents AI-Ready

Price the full pipeline to turn a document corpus into an AI-ready knowledge base: OCR, chunking, embedding, and vector indexing - one-time cost plus the monthly index/storage bill.

🎛 Inputs you control

Each input shapes the cost. Click an input on the calculator to set it. The explanations below match the live calculator field by field.

Documents: Total documents to ingest into the knowledge base.
How to choose: Count what you will actually index now; cost scales close to linearly with this.
Avg pages / doc: Average page count per document.
How to choose: Pages drive OCR volume and embedding tokens — use your real average, not the longest doc.
% scanned (need OCR): Share of pages that are scanned images and must be OCR-ed.
How to choose: Born-digital PDFs/Word need no OCR; set the share that is truly image-only.
% handwritten/forms: Share needing the pricier handwriting/forms OCR path.
How to choose: Keep low unless you process forms or handwritten notes at scale.
Tokens / page: Average tokens extracted per page, driving embedding cost.
How to choose: Dense text ~650 to 800; sparse/forms lower. ~750 words is about 1,000 tokens.
Re-embed % / month: Share of the corpus re-embedded each month as content changes.
How to choose: Static corpora are near 0; high-churn knowledge bases run higher.
OCR provider: Which document-AI service OCRs your scanned pages.
How to choose: Managed (Textract / Document AI / Doc Intelligence) for accuracy; Tesseract self-host trades the per-page fee for your own compute.
Embedding model: Model that turns chunks into vectors; priced per million tokens.
How to choose: Cheaper embeddings cut ingest cost; larger ones can improve retrieval quality.
Vector store: Where the embeddings are indexed and served for retrieval.
How to choose: Serverless / cloud for low ops; self-hosted trades SaaS fees for your own compute.
Object storage: Where the source documents are stored.
How to choose: Match your cloud; storage is a minor line versus OCR + embedding.
📋 Typical values & starting points Don’t know a value yet? Start with these broad, sourced ballparks — the calculator’s ▾ Typical menus pre-load the same options.

Context: Dense page ~260-520 tokens (default 650 covers layout overhead); OCR basic ~$1.50/1K pages; enterprise IDP $0.50-2.00/doc.

Input Default Typical ballparks
docCount moves the needle 50,000 Small KB · 1K docs = 1,000 · Departmental · 50K docs = 50,000 · Enterprise archive · 500K docs = 500,000
avgPages moves the needle 8 Short docs / tickets · 2 pp = 2 · Typical business doc · 8 pp = 8 · Reports / contracts · 30 pp = 30
scannedPct moves the needle 40 Born-digital corpus · ~10% = 10 · Typical mixed · ~40% = 40 · Paper-heavy archive · ~80% = 80
reembedPctMonth 5 Slow-moving · ~1%/mo = 1 · Typical · ~5%/mo = 5 · Fast-moving · ~15%/mo = 15
tokensPerPage 650 Sparse/forms · 400 = 400 · Typical page · 650 = 650 · Dense text · 900 = 900
chunkTokens 512 Fine-grained · 256 = 256 · Production standard · 512 = 512 · Long-context · 1024 = 1,024
handwrittenPct 5
ocrProvider aws:textract
embedSlug openai-text-embedding-3-small
vectorSlug pinecone-serverless
storageKey aws:s3

Ballparks are broad industry starting points (sourced ranges; * = rough estimate) — your result gets more accurate as you replace them with measured numbers. Try them live in the calculator; API & agent users get the same data from the MCP resource aicost://input-reference/corpus-onboarding-cost.

Most popular

Everything above is the 80% case. The last 20% is where the money is.

The gaps we just listed are real, and they are the expensive ones: your actual prompts, your switching cost, your MLOps overhead. An AICost expert spends the hour on your AI and cloud costs, not a generic playbook. You leave with a written report: the way forward, in 30 days of concrete steps.

  • An hour with the people who built the engines
  • Report the same day
  • The fee credits toward any AICost plan
  • Two slots a week
Book a Solution Session: $299 → or $99 for small business →

Not sure yet? The $39 AICost Blueprint credits toward a Session, and the Session fee credits toward any plan. You never pay twice for the same ground. See all pricing →

Ready to run your own numbers?

You have seen the shape of it. Open the calculator with your model, your tokens, your volume.

🚀 Open the full calculator →

Methodology

Editorial gate
8-layer defense, see aicost.ai/ai-cost-economics
Last verified
7/20/2026, 8:00:00 PM

Author: Subu Vdaygiri, Founder & CEO of CloudIntelligence.ai. 17 years Fortune 100 (Ingram Micro, Siemens). Wharton CTO program · Kellogg CPO program · 10× AWS+Azure certified.

3 years of pricing history

Why this matters: pricing for major vendors has dropped 40-90% in the last 24 months. A budget set 12 months ago is probably wrong by 30%+.

View 3-year history for →
📖 Data sources & methodology 158 text models · 9 embeddings · 37 vision · 55 audio · 8 vector DBs across 10 vendor pages · last verified 2026-07-21

Methodology

  • All prices are USD per 1 million tokens, current as of 2026-07-21.
  • Vendor-published values have no mark. Inferred/extrapolated values are marked with * and listed below.
  • Batch API discounts are 50% off standard rates across providers that offer Batch mode.
  • Prompt caching discounts vary by provider (typically 80-90% off cached input tokens).
  • Regional data-residency surcharges (Anthropic 1.1x, OpenAI 1.1x, Google regional tiers) are NOT included in base rates.
  • Long-context pricing tiers apply when input exceeds model threshold.
  • Embedding prices are input-only (no output tokens generated).

Primary sources

Last-verified date is the most recent successful daily snapshot (aicost_pricing_snapshots) or, when no snapshot exists yet, the latest successful crawler run (aicost_crawler_runs). 10 of 10 vendors are currently verified. Aggregator services (TokenCost, AI Pricing Guru, etc.) are not listed.

Anthropic
2026-07-21
https://www.anthropic.com/pricing
Daily snapshot since Sep 2023 · 624 days captured
Anthropic Docs
2026-07-21
https://platform.claude.com/docs/en/about-claude/pricing
Daily snapshot since Sep 2023 · 624 days captured
OpenAI
2026-07-21
https://openai.com/api/pricing/
Daily snapshot since Sep 2023 · 625 days captured
Google AI
2026-07-21
https://ai.google.dev/gemini-api/docs/pricing
Daily snapshot since Dec 2023 · 600 days captured
Google Vertex
2026-07-21
https://cloud.google.com/vertex-ai/generative-ai/pricing
Daily snapshot since Dec 2023 · 600 days captured
DeepSeek
2026-07-21
https://api-docs.deepseek.com/quick_start/pricing
Daily snapshot since May 2024 · 539 days captured
xAI
2026-07-21
https://x.ai/api
Daily snapshot since Nov 2024 · 457 days captured
Mistral
2026-07-21
https://mistral.ai/pricing
Daily snapshot since Dec 2023 · 598 days captured
Cohere
2026-07-21
https://cohere.com/pricing
Daily snapshot since Sep 2023 · 624 days captured

Inferred values (marked with * in calculator tables)

Derived from industry conventions, not directly published by the vendor. Typical conventions: cached input = 10% of base (90% off), Batch API = 50% of base (50% off).

Vendor / Model Field Why it’s inferred
Anthropic — Claude Sonnet 4.6 cachedInput Derived at 10% of input rate — Anthropic publishes 90% cache-hit discount on this tier.
Anthropic — Claude Sonnet 4.5 cachedInput Derived at 10% of input rate; same 90% cache-hit convention as Sonnet 4.6.
Anthropic — Claude Sonnet 4.5 batchInput Derived at 50% of standard input — Anthropic documents uniform 50% Batch discount.
Anthropic — Claude Sonnet 4.5 batchOutput Derived at 50% of standard output — Anthropic documents uniform 50% Batch discount.
Anthropic — Claude Haiku 4.5 cachedInput Derived at 10% of input rate — Anthropic 90% cache-hit discount convention.
OpenAI — GPT-5.4 Mini cachedInput Derived at 10% of input — OpenAI documents automatic 90% discount on cache hits across GPT-5.x tier.
OpenAI — GPT-5.4 Nano cachedInput Derived at 10% of input — OpenAI 90% cache-hit convention.
OpenAI — GPT-5.4 Nano batchInput Derived at 50% of input — OpenAI Batch API uniform 50% discount.
OpenAI — GPT-5.4 Nano batchOutput Derived at 50% of output — OpenAI Batch API uniform 50% discount.
OpenAI — GPT-5.4 Pro cachedInput Derived at 10% of input — OpenAI 90% cache-hit convention.
OpenAI — GPT-5.4 Pro batchInput Derived at 50% of input — OpenAI Batch API uniform 50% discount.
OpenAI — GPT-5.4 Pro batchOutput Derived at 50% of output — OpenAI Batch API uniform 50% discount.
OpenAI — GPT-5.2 cachedInput Derived at 10% of input; no residency uplift.
OpenAI — GPT-5.2 batchInput Derived at 50% of input.
OpenAI — GPT-5.2 batchOutput Derived at 50% of output.
OpenAI — GPT-5 cachedInput Derived at 10% of input.
OpenAI — GPT-5 batchInput Derived at 50% of input.
OpenAI — GPT-5 batchOutput Derived at 50% of output.
OpenAI — GPT-5.5 Pro cachedInput Derived at 10% of input — OpenAI does not publish a cached rate for *-pro models; using the family convention.
OpenAI — GPT-5.5 Pro batchInput Derived at 50% of input.
OpenAI — GPT-5.5 Pro batchOutput Derived at 50% of output.
OpenAI — GPT-5.2 Pro cachedInput Derived at 10% of input — pro-tier convention.
OpenAI — GPT-5.2 Pro batchInput Derived at 50% of input.
OpenAI — GPT-5.2 Pro batchOutput Derived at 50% of output.
OpenAI — GPT-5.1 batchInput Derived at 50% of input.
OpenAI — GPT-5.1 batchOutput Derived at 50% of output.
OpenAI — GPT-5 Pro batchInput Derived at 50% of input.
OpenAI — GPT-5 Pro batchOutput Derived at 50% of output.
OpenAI — GPT-5 Nano cachedInput Derived at 10% of input.
OpenAI — GPT-5 Nano batchInput Derived at 50% of input.
OpenAI — GPT-5 Nano batchOutput Derived at 50% of output.
Google — Gemini 3 Flash cachedInput Derived at 10% of input — Google caching discount convention ~90%.
Google — Gemini 3.1 Flash-Lite cachedInput Derived at 10% of input — Google caching convention.
Google — Gemini 3.1 Flash-Lite batchInput Derived at 50% of input — Google Batch API uniform 50% discount.
Google — Gemini 3.1 Flash-Lite batchOutput Derived at 50% of output — Google Batch API uniform 50% discount.
Google — Gemini 2.5 Pro cachedInput Derived at 10% of input.
Google — Gemini 2.5 Flash cachedInput Derived at 10% of input.
Google — Gemini 2.5 Flash-Lite cachedInput Derived at 10% of input — Google caching convention.
Google — Gemini 2.5 Flash-Lite batchInput Derived at 50% of input — Google Batch API uniform 50% discount.
Google — Gemini 2.5 Flash-Lite batchOutput Derived at 50% of output — Google Batch API uniform 50% discount.
Google — Gemini 2.0 Flash cachedInput Derived at 25% of input per Google 2.0 family caching rates.
Google — Gemini 2.0 Flash batchInput Derived at 50% of input — Google Batch API uniform 50% discount.
Google — Gemini 2.0 Flash batchOutput Derived at 50% of output — Google Batch API uniform 50% discount.
Google — Gemini 2.0 Flash-Lite cachedInput Derived at 10% of input — Google caching convention.
Google — Gemini 2.0 Flash-Lite batchInput Derived at 50% of input — Google Batch API uniform 50% discount.
Google — Gemini 2.0 Flash-Lite batchOutput Derived at 50% of output — Google Batch API uniform 50% discount.
xAI — Grok 4 (legacy) cachedInput Extrapolated at 25% of base.

Pricing is cross-verified against the LiteLLM community registry when available. Daily snapshots are kept in aicost_pricing_snapshots; every change is logged to aicost_price_changelog with old & new values for full audit trail. Read the full methodology →