OpenRouter
One endpoint for hundreds of models. The openrouter/free alias costs $0 in and $0 out.
OpenRouter is a router, not a lab. One key, one /api/v1 URL, and it fans the request out to whoever actually serves the model. Anything whose id ends in :free is $0 in and $0 out; the same model without the suffix bills you. The openrouter/free alias picks a free model that matches the request.
The free pool is 18 models right now — Nemotron 3 Ultra, MiniMax M3, Laguna and GLM 5.2 among them — with up to 1M of context. DeepSeek and Qwen no longer have a :free endpoint. New accounts get 20 requests a minute and 50 a day; a $10 top-up lifts the daily cap to 1,000. Set the HTTP-Referer and X-Title headers if you want to show up on their public leaderboards.
- Free models
- 18
- Max context
- 1M
- Free tier
- 18 models at zero cost
- Requirement
- Email account, no card
Endpoint
Base URL
https://openrouter.ai/api/v1Env var
OPENROUTER_API_KEYRate limit
20 requests/minute, 50 requests/day; a $10 top-up raises the day to 1,000- OpenAI-compatible
- text
- image
- audio
- video
- speech
- embeddings
- rerank
- reasoning
Code examples
npm install openaiimport OpenAI from 'openai'
const client = new OpenAI({
baseURL: 'https://openrouter.ai/api/v1',
apiKey: process.env.OPENROUTER_API_KEY
})
const response = await client.chat.completions.create({
model: 'openrouter/free',
messages: [{ role: 'user', content: 'Explain closures in one paragraph.' }]
})
console.log(response.choices[0].message.content)pip install openaiimport os
from openai import OpenAI
client = OpenAI(
base_url="https://openrouter.ai/api/v1",
api_key=os.environ["OPENROUTER_API_KEY"],
)
response = client.chat.completions.create(
model="openrouter/free",
messages=[{"role": "user", "content": "Explain closures in one paragraph."}],
)
print(response.choices[0].message.content)curl https://openrouter.ai/api/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OPENROUTER_API_KEY" \
-d '{
"model": "openrouter/free",
"messages": [{"role": "user", "content": "Explain closures in one paragraph."}]
}'Worth knowing
- Model ids ending in :free are the zero-cost ones; the same model without the suffix bills you.
- Set the HTTP-Referer and X-Title headers to appear on the public leaderboards.
Models you get for free19
- Ling 3.0 Flash Fin
inclusionai/ling-3.0-flash-fin:free - Dots 3 Note Preview
dots-studio/dots-3-note-preview:free - LFM 2.5 2.6B
liquid/lfm-2.5-2.6b:free - Nemotron 3.5 Lightning
nvidia/nemotron-3.5-lightning:free - Inkling Small
thinkingmachines/inkling-small:free - Laguna S 2.1
poolside/laguna-s-2.1:free - Inkling
thinkingmachines/inkling:free - Laguna XS 2.1
poolside/laguna-xs-2.1:free - North Mini Code
cohere/north-mini-code:free - GLM 5.2
z-ai/glm-5.2:free - Nemotron 3.5 Content Safety
nvidia/nemotron-3.5-content-safety:free - Nemotron 3 Ultra
nvidia/nemotron-3-ultra-550b-a55b:free - MiniMax M3
minimax/minimax-m3:free - Nemotron 3 Nano Omni
nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:free - Gemma 4 26B A4B
google/gemma-4-26b-a4b-it:free - Gemma 4 31B
google/gemma-4-31b-it:free - MiniMax M2.7
minimax/minimax-m2.7:free - Nemotron 3 Super
nvidia/nemotron-3-super-120b-a12b:free - Free Models Router
openrouter/free