Models.dev is a comprehensive open-source database of AI model specifications, pricing, and capabilities.
There's no single database with information about all the available AI models. We started Models.dev as a community-contributed project to address this. We also use it internally in opencode.
You can access this data through an API.
curl https://models.dev/api.jsonUse the Model ID field to do a lookup on any model; it's the identifier used by AI SDK.
The data is stored in the repo as TOML files; organized by provider and model. This is used to generate this page and power the API.
We need your help keeping the data up to date.
To add a new model, start by checking if the provider already exists in the providers/ directory. If not, then:
If the AI provider doesn't already exist in the providers/ directory:
-
Create a new folder in
providers/with the provider's ID. For example,providers/newprovider/. -
Add a
provider.tomlfile with the provider information:name = "Provider Name"
Create a new TOML file in the provider's models/ directory where the filename is the model ID:
name = "Model Display Name"
attachment = true # or false - supports file attachments
reasoning = false # or true - supports reasoning/chain-of-thought
temperature = true # or false - supports temperature parameter
[cost]
input = 3.00 # Cost per million input tokens (USD)
output = 15.00 # Cost per million output tokens (USD)
inputCached = 0.30 # Cost per million cached input tokens (USD)
outputCached = 0.30 # Cost per million cached output tokens (USD)
[limit]
context = 200_000 # Maximum context window (tokens)
output = 8_192 # Maximum output tokens- Fork this repo
- Create a new branch with your changes
- Add your provider and/or model files
- Open a PR with a clear description
There's a GitHub Action that will automatically validate your submission against our schema to ensure:
- All required fields are present
- Data types are correct
- Values are within acceptable ranges
- TOML syntax is valid
Models must conform to the following schema, as defined in app/schemas.ts.
Provider Schema:
name: String - Display name of the provider
Model Schema:
name: String - Display name of the modelattachment: Boolean - Whether the model supports file attachmentsreasoning: Boolean - Whether the model supports reasoning capabilitiestemperature: Boolean - Whether the model supports temperature controlcost.input: Number - Cost per million input tokens (USD)cost.output: Number - Cost per million output tokens (USD)cost.inputCached: Number - Cost per million cached input tokens (USD)cost.outputCached: Number - Cost per million cached output tokens (USD)limit.context: Number - Maximum context window in tokenslimit.output: Number - Maximum output tokens
See existing providers in the providers/ directory for reference:
providers/anthropic/- Anthropic Claude modelsproviders/openai/- OpenAI GPT modelsproviders/google/- Google Gemini models
Make sure you have Bun installed.
$ bun install
$ cd packages/web
$ bun run devAnd it'll open the frontend at http://localhost:3000
Open an issue if you need help or have questions about contributing.
Models.dev is created by the maintainers of SST.