AI model pricing data,
free for everyone
A community-friendly JSON API exposing the same pricing data that powers the calculator. LiteLLM-verified, monthly-refreshed, CDN-cached. Build cost estimators, comparison tools, internal dashboards — no signup required.
Just fetch it.
No API key, no rate limits for normal use, no signup. Hit any endpoint with a GET request.
# Get all models
curl https://aicostcalc.net/api/v1/models
# Get a single model
curl https://aicostcalc.net/api/v1/models/gpt-5-5
# Get just pricing (lighter payload)
curl https://aicostcalc.net/api/v1/pricing?provider=anthropicAll responses are JSON, all CORS-enabled, all aggressively CDN-cached (1 hour browser, 24 hour edge).
Three endpoints. Zero ceremony.
/api/v1/modelsList all 10 supported AI models with full data (pricing, limits, capabilities, lifecycle). Supports filter query params.
GET /api/v1/models
GET /api/v1/models?provider=anthropic
GET /api/v1/models?category=flagship
GET /api/v1/models?capability=caching
GET /api/v1/models?status=activeprovider / category / capability / status. Filters compose with AND./api/v1/models/{id}Full data for a single model. Returns 404 with availableIds list if id is unknown.
GET /api/v1/models/gpt-5-5
GET /api/v1/models/claude-opus-4-7
GET /api/v1/models/deepseek-v3-2/api/v1/pricingLightweight pricing-only response. Skip the metadata, keep just the prices. Same filter support as /models.
GET /api/v1/pricing
GET /api/v1/pricing?provider=openaiWhat you get back
Full schema reference is in our TypeScript types file. The shape of a model entry:
{
"id": "gpt-5-5",
"name": "GPT-5.5",
"shortName": "GPT-5.5",
"provider": "OpenAI",
"providerId": "openai",
"category": "flagship", // flagship | small | reasoning | balanced
"useCase": ["general", "vision", "reasoning", "coding"],
"releaseDate": "2026-04-23",
"status": "active", // active | deprecated | preview | legacy
"deprecatedAt": null,
"successorId": null,
"pricing": {
"currency": "USD",
"unit": "per_1m_tokens",
"input": 5.00,
"output": 30.00,
"cachedInput": 0.50, // null if not supported
"cacheWrite": null, // null if not supported
"batchInput": 2.50, // null if not supported
"batchOutput": 15.00,
"imagePerImage": null, // null until image pricing added (V1.1)
"reasoningOutput": null,
"fineTunedInput": null,
"fineTunedOutput": null
},
"limits": {
"contextWindow": 1050000,
"maxOutput": 128000,
"maxImagesPerRequest": null,
"knowledgeCutoff": "2026-02"
},
"tokenization": {
"encoder": "o200k_base", // tiktoken encoder, or "approximate"
"approximationRatio": { "english": 4, "chinese": 1.5, "code": 3 }
},
"supports": {
"vision": true, "audio": false, "tools": true, "streaming": true,
"caching": true, "batch": true, "fineTuning": false, "structuredOutput": true
},
"lastVerified": "2026-05-12",
"sources": [
{ "type": "community", "url": "...", "fetchedAt": "..." },
{ "type": "official", "url": "...", "fetchedAt": "..." }
],
"priceHistory": [
{ "date": "2026-04-23", "input": 5.00, "output": 30.00, "note": "Initial release" }
],
"i18n": {
"en": { "tagline": "...", "description": "..." },
"zh": { "tagline": "...", "description": "..." }
}
}Where the numbers come from
- ✓Primary source: LiteLLM's public model registry — the de facto industry standard, used by millions of LangChain and LiteLLM installations. Errors get caught and PR'd by the community within hours.
- ✓Secondary source: Each provider's official pricing page (links in every model's
sourcesfield). - ✓Refresh cadence: Monthly (1st of every month) against both sources, with diff review before publication.
- ⚠Disclaimer: This is informational data. For final billing accuracy, always verify against the provider's own pricing page. Spotted an error? Open a GitHub issue — corrections typically deploy within 24 hours.
Some ideas
MIT
The data is free to use commercially, embed in products, redistribute. Attribution appreciated but not required. The same license applies to the source code.
None for normal use
Vercel CDN handles the load. Cached at edge for 24 hours, so most requests never even hit the origin. If you're planning 10K+ requests/hour, please say hi so we can size accordingly.