API & Developers

Free, read-only JSON endpoints for live LLM and GenAI pricing data — no API key, no signup.

No API key · No signup

Base URL

https://www.llmrates.ai

Endpoints

List and filter models with their current prices, paginated.

Parameters: provider, modality, minContext, maxInputPrice, hasCaching, hasBatch, sort, order, page, pageSize, currency

GET/api/models/{slug}

Full detail for one model, including recent price history and related models. A slug can be carried by several providers; pass ?provider= to pick one, otherwise the first-party listing is returned.

Parameters: provider

All active providers with their model counts.

GET/api/providers/{slug}

One provider and its active model lineup with headline prices.

Compare up to 5 models side by side by their stable ids (sid).

Parameters: models (comma-separated sids, max 5), currency

Full dataset export — every model and provider with all price tiers. Add ?type=models|providers and ?format=csv.

Parameters: type, format

Plain-text summary of the catalog, formatted for LLMs and AI agents.

The homepage price leaderboard as markdown — curated flagship text models ranked by blended price, with methodology and citation line.

All query parameters are optional.

AI Builders Digest

A daily summary of what AI researchers, founders, and engineers are saying, as structured JSON and LLM-ready markdown. Same no-auth, CORS-enabled surface as above.

The most recent digest as markdown — the whole integration surface for an agent: fetch, read, done.

Parameters: locale

The most recent published digest as structured JSON.

Parameters: locale

Every item carries a stable id that is also the page anchor and the RSS guid, so the same identifier works across JSON, markdown, HTML, and the feed. Add ?locale= to any endpoint: en (default), zh-Hans, zh-Hant, es, ja.

{
  "date": string,                 // YYYY-MM-DD (UTC)
  "locale": string,
  "intro": string,
  "item_count": number,
  "items": [
    {
      "id": string,               // stable; also the page anchor and RSS guid
      "date": string,
      "kind": "tweet" | "podcast" | "blog",
      "source": string,
      "author": string | null,
      "role": string | null,      // only when the source bio supports it
      "headline": string,
      "summary": string,
      "topics": string[],
      "url": string,
      "urls": string[],
      "permalink": string
    }
  ],
  "source": {                     // upstream attribution (MIT)
    "name": "follow-builders",
    "url": string,
    "author": "zarazhangrui",
    "license": "MIT"
  },
  "links": { "html": string, "markdown": string, "raw": string }
}

Quick start

curl "https://www.llmrates.ai/api/models?provider=openai&sort=inputPrice&order=asc"

Model response shape

{
  "models": [
    {
      "id": number,
      "name": string,
      "slug": string,
      "family": string | null,
      "contextWindow": number | null,
      "maxOutput": number | null,
      "supportsTools": boolean,
      "supportsBatch": boolean,
      "supportsCaching": boolean,
      "deprecatedAt": string | null,        // ISO 8601
      // providerType is the primary type; providerTypes lists every type the
      // provider belongs to (direct | aggregator | cloud | coding_tool).
      "provider": { "name": string, "slug": string, "providerType": string, "providerTypes": string[], "baseUrl": string | null },
      "modalities": string[],               // e.g. ["text", "image"]
      "price": PriceRow | null,             // headline price in the requested currency
      "prices": PriceRow[]                  // every tier / region
    }
  ],
  "pagination": { "page": number, "pageSize": number, "total": number, "totalPages": number }
}

// PriceRow (per 1M tokens unless the field name says otherwise)
{
  "inputPricePerMillion": number | null,
  "outputPricePerMillion": number | null,
  "cachedInputPricePerMillion": number | null,
  "processingTier": "standard" | "batch" | "fast" | "off_peak",
  "region": string | null,
  "priceUnit": string,                      // currency the row was sourced in
  "sourceUrl": string | null,
  "verifiedAt": string | null               // ISO 8601
}

Caching & freshness

Endpoints are edge-cached and refreshed frequently, so responses can be up to a few minutes old. Every response includes Cache-Control headers.

Free usage

The public API is free for light usage, research, prototypes, internal tools, and open-source projects. Attribution is appreciated.

For high-volume usage, commercial redistribution, production integrations, SLA, historical data, or custom monitoring, please for a commercial plan.

Polling the full export on a schedule? Take the daily JSON and CSV from GitHub instead — same data, one file, and it does not hit the database at all.

No warranty

The API is provided as is, without warranty of accuracy, completeness or availability. Every price here is a copy of something a vendor published, so it can be stale or misread — confirm against the vendor's own page before you bill or budget on it. Full terms.

Attribution

If the data helps your project, a link back to LLMRates.ai is appreciated — it keeps the data open and updated.

<a href="https://www.llmrates.ai" target="_blank" rel="noopener">
  LLM &amp; GenAI pricing data by LLMRates.ai
</a>

Open dataset

Prefer files over an API? The same data is published daily as JSON and CSV in our open, CC BY 4.0 dataset on GitHub.