per 1M tokens
OpenAI: GPT-5.4
openai/gpt-5.4
GPT-5.4 is OpenAI’s latest frontier model, unifying the Codex and GPT lines into a single system. It features a 1M+ token context window (922K input, 128K output) with support for...
Price
per 1M tokens
Providers
Each row is one seller. Prices are the published rate from that source. A dash means that source did not publish the amount. Sorted by a 3:1 blend of input and output.
| Provider | Tag | Quant | Input | Output | Context | Uptime | Status | Source |
|---|---|---|---|---|---|---|---|---|
| OpenAI | openai/flex | — | $1.25/1M | $7.5/1M | 1.1M | — | Live | openrouter-endpoints |
| Azure | azure | — | $2.5/1M | $15/1M | 1.1M | 100% | Live | openrouter-endpoints |
| Inference.net | — | — | $2.5/1M | $15/1M | 1.1M | — | Listed | inferencenet |
| NEAR AI | — | — | $2.5/1M | $15/1M | 1.1M | — | Listed | nearai |
| OpenAI | openai | — | $2.5/1M | $15/1M | 1.1M | 100% | Live | openrouter-endpoints |
| Phala | — | — | $2.5/1M | $15/1M | 1.1M | — | Listed | phala |
| Amazon Bedrock | amazon-bedrock/us-east-1 | — | $2.75/1M | $16.5/1M | 1.1M | — | Live | openrouter-endpoints |
| Azure | azure/eu | — | $2.75/1M | $16.5/1M | 1.1M | 100% | Live | openrouter-endpoints |
| Azure | azure/us | — | $2.75/1M | $16.5/1M | 1.1M | — | Live | openrouter-endpoints |
| OpenAI | openai/fast | — | $5/1M | $30/1M | 1.1M | — | Live | openrouter-endpoints |
Monthly bill
Token models use the token counts. Image, video, and audio models use units times the flat rate.
$17.50 at list price for this workload
Cache
per 1M tokens
Tiers
- Web search
- $0.01 per request
- Above 272,000 prompt tokens
- in $5 · out $22.5 · cache read $0.5
Every rate
| Unit | Input | Output | Flat | Confidence |
|---|---|---|---|---|
| token | $2.5/1M | $15/1M | Not published— | official |
Price history
input or flat output
Daily snapshots
| UTC date | Unit | Input | Output | Flat |
|---|---|---|---|---|
| 2026-09-15 | token | $2.5 | $15 | Not published— |
| 2026-09-16 | token | $2.5 | $15 | Not published— |
| 2026-09-17 | token | $2.5 | $15 | Not published— |
| 2026-09-18 | token | $2.5 | $15 | Not published— |
| 2026-09-19 | token | $2.5 | $15 | Not published— |
| 2026-09-20 | token | $2.5 | $15 | Not published— |
| 2026-09-21 | token | $2.5 | $15 | Not published— |
| 2026-09-22 | token | $2.5 | $15 | Not published— |
| 2026-09-23 | token | $2.5 | $15 | Not published— |
| 2026-09-24 | token | $2.5 | $15 | Not published— |
| 2026-09-25 | token | $2.5 | $15 | Not published— |
| 2026-09-26 | token | $2.5 | $15 | Not published— |
| 2026-09-27 | token | $2.5 | $15 | Not published— |
| 2026-09-28 | token | $2.5 | $15 | Not published— |
| 2026-09-29 | token | $2.5 | $15 | Not published— |
| 2026-09-30 | token | $2.5 | $15 | Not published— |
| 2026-10-01 | token | $2.5 | $15 | Not published— |
| 2026-10-02 | token | $2.5 | $15 | Not published— |
| 2026-10-03 | token | $2.5 | $15 | Not published— |
| 2026-10-04 | token | $2.5 | $15 | Not published— |
| 2026-10-05 | token | $2.5 | $15 | Not published— |
| 2026-10-06 | token | $2.5 | $15 | Not published— |
| 2026-10-07 | token | $2.5 | $15 | Not published— |
| 2026-10-08 | token | $2.5 | $15 | Not published— |
| 2026-10-09 | token | $2.5 | $15 | Not published— |
| 2026-10-10 | token | $2.5 | $15 | Not published— |
| 2026-10-11 | token | $2.5 | $15 | Not published— |
| 2026-10-12 | token | $2.5 | $15 | Not published— |
| 2026-10-13 | token | $2.5 | $15 | Not published— |
| 2026-10-14 | token | $2.5 | $15 | Not published— |
| 2026-10-15 | token | $2.5 | $15 | Not published— |
| 2026-10-16 | token | $2.5 | $15 | Not published— |
| 2026-10-17 | token | $2.5 | $15 | Not published— |
| 2026-10-18 | token | $2.5 | $15 | Not published— |
| 2026-10-19 | token | $2.5 | $15 | Not published— |
| 2026-10-20 | token | $2.5 | $15 | Not published— |
| 2026-10-21 | token | $2.5 | $15 | Not published— |
| 2026-10-22 | token | $2.5 | $15 | Not published— |
| 2026-10-23 | token | $2.5 | $15 | Not published— |
| 2026-10-24 | token | $2.5 | $15 | Not published— |
| 2026-10-25 | token | $2.5 | $15 | Not published— |
| 2026-10-26 | token | $2.5 | $15 | Not published— |
| 2026-10-27 | token | $2.5 | $15 | Not published— |
| 2026-10-28 | token | $2.5 | $15 | Not published— |
| 2026-10-29 | token | $2.5 | $15 | Not published— |
| 2026-10-30 | token | $2.5 | $15 | Not published— |
Alternatives
- Amazon: Nova Premier 1.0$2.5/1M · Compare
- Anthropic: Claude Opus 4.5 (batch)$2.5/1M · Compare
- Anthropic: Claude Opus 4.6 (batch)$2.5/1M · Compare
- Anthropic: Claude Opus 4.7 (batch)$2.5/1M · Compare
- Anthropic: Claude Opus 4.8 (batch)$2.5/1M · Compare
- Anthropic: Claude Opus 5 (batch)$2.5/1M · Compare
Parameters (11)
include_reasoningmax_completion_tokensmax_tokensreasoningreasoning_effortresponse_formatseedstructured_outputstool_choicetoolsverbosity
Call this model
OpenRouter id openai/gpt-5.4. InferenceList does not send the request.
curl
curl https://openrouter.ai/api/v1/chat/completions \
-H "Authorization: Bearer $OPENROUTER_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"openai/gpt-5.4","messages":[{"role":"user","content":"Hello"}]}'
JavaScript
await fetch("https://openrouter.ai/api/v1/chat/completions", {
method: "POST",
headers: {
Authorization: "Bearer " + process.env.OPENROUTER_API_KEY,
"Content-Type": "application/json",
},
body: JSON.stringify({
model: "openai/gpt-5.4",
messages: [{ role: "user", content: "Hello" }],
}),
});
Python
import os, json, urllib.request
req = urllib.request.Request(
"https://openrouter.ai/api/v1/chat/completions",
data=json.dumps({"model": "openai/gpt-5.4", "messages": [{"role": "user", "content": "Hello"}]}).encode(),
headers={"Authorization": "Bearer " + os.environ["OPENROUTER_API_KEY"], "Content-Type": "application/json"},
)
print(urllib.request.urlopen(req).read().decode())