Vendor Concentration Risk · for procurement + CTOs

What happens if your #1 AI vendor goes down?

Herfindahl concentration score + single-point-of-failure cost + diversification plan. Run it before signing a multi-year commit.

HHI index · 0-10,000 scale Enterprise procurement standard
What this calculator does

How locked-in are you to a single AI vendor? What would migration cost?

Why use it
  • Single-vendor risk becomes business risk above certain spend thresholds
  • Models the cost + disruption of a forced migration

New to this calculator? Start with the ⚡ Playground — a few sliders, instant ballpark. Then switch to the 🧮 Calculator for your exact number.

Two ways to use this: visualize in the Playground, then get your number in the Calculator.

Vendor Concentration Risk Playground
Drag the sliders for an instant estimate.
How much spend is at risk from vendor lock-in?

Concentrating spend with one vendor exposes you to price shocks and painful switching. Price-shock magnitude fixed at default.

Monthly spend at risk
Change the input sliders below to see new estimates.

How we got this estimate

💡At-risk = exposed spend × price-shock risk + a switching-cost penalty scaled by how long migration takes.

Leaning on a single AI vendor is a hidden risk. Enter your stack below to see your concentration and what an outage would cost.

Vendor Concentration Risk Calculator

Enter your exact numbers for a precise result.
📊 Not sure of a value? Fields with a ▾ Typical pill offer broad industry ballparks (sourced typical ranges; Enterprise LLM spend concentration is real: top provider held ~40% of enterprise API spend in 2025 (Menlo). Model-deprecation waves make switching-time the key variable.) so you can move forward now — your result gets more accurate as you replace them with your own measured numbers. Values marked * are rough estimates.
💰 Your current AI spendList each AI vendor and your monthly spend with them.How to choose: Add every vendor with its monthly dollar spend; concentration (HHI) is computed from each vendor share of the total.Read the full guide →
Hint: List your AI vendors and monthly spend; we flag over-reliance on one.

Monthly spend per vendor. Ballpark OK - we just need the ratios.

Load preset
About HHI: The Herfindahl-Hirschman Index is the procurement-industry standard for concentration. Scores: <1,500 = competitive, 1,500-2,500 = moderately concentrated, >2,500 = highly concentrated (regulatory concern in many industries).

Results

-
- / 10,000
-
-
Total monthly spend
-
Top vendor share
-
-
Vendor count
-
If top vendor fails
-
monthly at risk

Spend distribution

⚠ Scenario analysis
💡 Diversification plan
    Re-plan your budget → Find alternative vendors → Risk + procurement audit →

    Go deeper

    Our playbooks on cutting this number.

    💰
    Budget Planner
    Allocate across vendors
    🔍
    Model Finder
    Identify backup vendors
    📉
    Token Volatility
    Single-vendor pricing risk
    🏗
    Self-Host Break-even
    The ultimate de-risk option

    Need help using this calculator for your workloads?

    AICost.ai has 50+ calculators and playbooks. Schedule an AvatarVA meeting and we'll work through your real cost scenarios across AI & Cloud: visibility, cost reduction, optimization, forecasting and capacity planning, without sacrificing accuracy or performance.

    📅 Schedule an AvatarVA meeting →
    📖 Data sources & methodology 163 text models · 9 embeddings · 37 vision · 55 audio · 8 vector DBs across 10 vendor pages · last verified 2026-07-28

    Methodology

    • All prices are USD per 1 million tokens, current as of 2026-07-28.
    • 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-28
    https://www.anthropic.com/pricing
    Daily snapshot since Sep 2023 · 631 days captured
    Anthropic Docs
    2026-07-28
    https://platform.claude.com/docs/en/about-claude/pricing
    Daily snapshot since Sep 2023 · 631 days captured
    OpenAI
    2026-07-28
    https://openai.com/api/pricing/
    Daily snapshot since Sep 2023 · 632 days captured
    Google AI
    2026-07-28
    https://ai.google.dev/gemini-api/docs/pricing
    Daily snapshot since Dec 2023 · 607 days captured
    Google Vertex
    2026-07-28
    https://cloud.google.com/vertex-ai/generative-ai/pricing
    Daily snapshot since Dec 2023 · 607 days captured
    DeepSeek
    2026-07-28
    https://api-docs.deepseek.com/quick_start/pricing
    Daily snapshot since May 2024 · 546 days captured
    xAI
    2026-07-28
    https://x.ai/api
    Daily snapshot since Nov 2024 · 464 days captured
    Mistral
    2026-07-28
    https://mistral.ai/pricing
    Daily snapshot since Dec 2023 · 605 days captured
    Cohere
    2026-07-28
    https://cohere.com/pricing
    Daily snapshot since Sep 2023 · 631 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 →