usage-tab 1.1.0 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -6
- package/dist/index.cjs +473 -178
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +473 -178
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -265,7 +265,7 @@ function selectPricingPeriod(periods, at, identity) {
|
|
|
265
265
|
}
|
|
266
266
|
|
|
267
267
|
// ../../internal/model-registry/src/generated/registry.ts
|
|
268
|
-
var REGISTRY_VERSION = "registry-
|
|
268
|
+
var REGISTRY_VERSION = "registry-e5f4ec7eb681a235";
|
|
269
269
|
var MODEL_REGISTRY = [
|
|
270
270
|
{
|
|
271
271
|
canonicalId: "claude-fable-5",
|
|
@@ -274,9 +274,30 @@ var MODEL_REGISTRY = [
|
|
|
274
274
|
family: "fable",
|
|
275
275
|
contextWindow: 1e6,
|
|
276
276
|
pricing: [
|
|
277
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "10.00", "output": "50.00", "cachedInput": "1.00", "cacheWrite": "12.50", "batchMultiplier": "0.5", "sourceUrl": "https://platform.claude.com/docs/en/about-claude/
|
|
277
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "10.00", "output": "50.00", "cachedInput": "1.00", "cacheWrite": "12.50", "batchMultiplier": "0.5", "sourceUrl": "https://platform.claude.com/docs/en/about-claude/pricing", "observedAt": "2026-09-07", "notes": ["Anthropic did not publish an explicit effective date for this rate as observed; effectiveFrom is set conservatively to 2026-01-01 pending confirmation of the true rollout date.", "cacheWrite reflects the 5-minute cache TTL (1.25x input). The 1-hour TTL write multiplier is 2x input and is not separately modeled by this schema (a single cacheWrite field)."] }
|
|
278
278
|
],
|
|
279
|
-
source: { "url": "https://platform.claude.com/docs/en/about-claude/
|
|
279
|
+
source: { "url": "https://platform.claude.com/docs/en/about-claude/pricing", "observedAt": "2026-09-07" }
|
|
280
|
+
},
|
|
281
|
+
{
|
|
282
|
+
canonicalId: "claude-fable-5-1",
|
|
283
|
+
provider: "anthropic",
|
|
284
|
+
aliases: [],
|
|
285
|
+
family: "fable",
|
|
286
|
+
contextWindow: 1e6,
|
|
287
|
+
pricing: [
|
|
288
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "10.00", "output": "50.00", "cachedInput": "0.25", "cacheWrite": "12.50", "batchMultiplier": "0.5", "sourceUrl": "https://platform.claude.com/docs/en/about-claude/pricing", "observedAt": "2026-09-07", "notes": ["Anthropic did not publish an explicit effective date for this rate as observed; effectiveFrom is set conservatively to 2026-01-01 pending confirmation of the true rollout date.", "Cache hits are priced at 0.025x base input on this model (page footnote 1), not the 0.1x every other model uses - cachedInput is read from the table, not derived.", "cacheWrite reflects the 5-minute cache TTL (1.25x input). The 1-hour TTL write multiplier is 2x input and is not separately modeled by this schema (a single cacheWrite field)."] }
|
|
289
|
+
],
|
|
290
|
+
source: { "url": "https://platform.claude.com/docs/en/about-claude/pricing", "observedAt": "2026-09-07" }
|
|
291
|
+
},
|
|
292
|
+
{
|
|
293
|
+
canonicalId: "claude-haiku-3-5",
|
|
294
|
+
provider: "anthropic",
|
|
295
|
+
aliases: [],
|
|
296
|
+
family: "haiku",
|
|
297
|
+
pricing: [
|
|
298
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.80", "output": "4.00", "cachedInput": "0.08", "cacheWrite": "1.00", "batchMultiplier": "0.5", "sourceUrl": "https://platform.claude.com/docs/en/about-claude/pricing", "observedAt": "2026-09-07", "notes": ["Anthropic did not publish an explicit effective date for this rate as observed; effectiveFrom is set conservatively to 2026-01-01 pending confirmation of the true rollout date.", "Retired on Anthropic-operated platforms; the pricing page still publishes its rate and notes it remains available on Amazon Bedrock and Google Cloud. Included so historical usage can still be priced.", "This model predates 2026, so the conservative 2026-01-01 effectiveFrom cannot price usage from its actual lifetime; no rollout date was published on the source page. A future pass should source real dates before relying on historical lookups for it.", "cacheWrite reflects the 5-minute cache TTL (1.25x input). The 1-hour TTL write multiplier is 2x input and is not separately modeled by this schema (a single cacheWrite field)."] }
|
|
299
|
+
],
|
|
300
|
+
source: { "url": "https://platform.claude.com/docs/en/about-claude/pricing", "observedAt": "2026-09-07" }
|
|
280
301
|
},
|
|
281
302
|
{
|
|
282
303
|
canonicalId: "claude-haiku-4-5-20251001",
|
|
@@ -285,9 +306,59 @@ var MODEL_REGISTRY = [
|
|
|
285
306
|
family: "haiku",
|
|
286
307
|
contextWindow: 2e5,
|
|
287
308
|
pricing: [
|
|
288
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "1.00", "output": "5.00", "cachedInput": "0.10", "cacheWrite": "1.25", "batchMultiplier": "0.5", "sourceUrl": "https://platform.claude.com/docs/en/about-claude/
|
|
309
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "1.00", "output": "5.00", "cachedInput": "0.10", "cacheWrite": "1.25", "batchMultiplier": "0.5", "sourceUrl": "https://platform.claude.com/docs/en/about-claude/pricing", "observedAt": "2026-09-07", "notes": ["Anthropic did not publish an explicit effective date for this rate as observed; effectiveFrom is set conservatively to 2026-01-01 pending confirmation of the true rollout date.", "cacheWrite reflects the 5-minute cache TTL (1.25x input). The 1-hour TTL write multiplier is 2x input and is not separately modeled by this schema (a single cacheWrite field)."] }
|
|
289
310
|
],
|
|
290
|
-
source: { "url": "https://platform.claude.com/docs/en/about-claude/
|
|
311
|
+
source: { "url": "https://platform.claude.com/docs/en/about-claude/pricing", "observedAt": "2026-09-07", "notes": ["canonicalId is the dated snapshot id published on the models overview page; claude-haiku-4-5 is the alias that resolves to it."] }
|
|
312
|
+
},
|
|
313
|
+
{
|
|
314
|
+
canonicalId: "claude-mythos-5",
|
|
315
|
+
provider: "anthropic",
|
|
316
|
+
aliases: [],
|
|
317
|
+
family: "mythos",
|
|
318
|
+
pricing: [
|
|
319
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "10.00", "output": "50.00", "cachedInput": "1.00", "cacheWrite": "12.50", "batchMultiplier": "0.5", "sourceUrl": "https://platform.claude.com/docs/en/about-claude/pricing", "observedAt": "2026-09-07", "notes": ["Anthropic did not publish an explicit effective date for this rate as observed; effectiveFrom is set conservatively to 2026-01-01 pending confirmation of the true rollout date.", "Limited availability model (page links it to anthropic.com/glasswing); its published rate is recorded as-is.", "cacheWrite reflects the 5-minute cache TTL (1.25x input). The 1-hour TTL write multiplier is 2x input and is not separately modeled by this schema (a single cacheWrite field)."] }
|
|
320
|
+
],
|
|
321
|
+
source: { "url": "https://platform.claude.com/docs/en/about-claude/pricing", "observedAt": "2026-09-07" }
|
|
322
|
+
},
|
|
323
|
+
{
|
|
324
|
+
canonicalId: "claude-mythos-5-1",
|
|
325
|
+
provider: "anthropic",
|
|
326
|
+
aliases: [],
|
|
327
|
+
family: "mythos",
|
|
328
|
+
pricing: [
|
|
329
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "10.00", "output": "50.00", "cachedInput": "0.25", "cacheWrite": "12.50", "batchMultiplier": "0.5", "sourceUrl": "https://platform.claude.com/docs/en/about-claude/pricing", "observedAt": "2026-09-07", "notes": ["Anthropic did not publish an explicit effective date for this rate as observed; effectiveFrom is set conservatively to 2026-01-01 pending confirmation of the true rollout date.", "Limited availability model (page links it to anthropic.com/glasswing); its published rate is recorded as-is.", "Cache hits are priced at 0.025x base input on this model (page footnote 1), not the 0.1x every other model uses - cachedInput is read from the table, not derived.", "cacheWrite reflects the 5-minute cache TTL (1.25x input). The 1-hour TTL write multiplier is 2x input and is not separately modeled by this schema (a single cacheWrite field)."] }
|
|
330
|
+
],
|
|
331
|
+
source: { "url": "https://platform.claude.com/docs/en/about-claude/pricing", "observedAt": "2026-09-07" }
|
|
332
|
+
},
|
|
333
|
+
{
|
|
334
|
+
canonicalId: "claude-opus-4",
|
|
335
|
+
provider: "anthropic",
|
|
336
|
+
aliases: [],
|
|
337
|
+
family: "opus",
|
|
338
|
+
pricing: [
|
|
339
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "15.00", "output": "75.00", "cachedInput": "1.50", "cacheWrite": "18.75", "batchMultiplier": "0.5", "sourceUrl": "https://platform.claude.com/docs/en/about-claude/pricing", "observedAt": "2026-09-07", "notes": ["Anthropic did not publish an explicit effective date for this rate as observed; effectiveFrom is set conservatively to 2026-01-01 pending confirmation of the true rollout date.", "Retired on Anthropic-operated platforms; the pricing page still publishes its rate and notes it remains available on Google Cloud. Included so historical usage can still be priced.", "This model predates 2026, so the conservative 2026-01-01 effectiveFrom cannot price usage from its actual lifetime; no rollout date was published on the source page. A future pass should source real dates before relying on historical lookups for it.", "cacheWrite reflects the 5-minute cache TTL (1.25x input). The 1-hour TTL write multiplier is 2x input and is not separately modeled by this schema (a single cacheWrite field)."] }
|
|
340
|
+
],
|
|
341
|
+
source: { "url": "https://platform.claude.com/docs/en/about-claude/pricing", "observedAt": "2026-09-07" }
|
|
342
|
+
},
|
|
343
|
+
{
|
|
344
|
+
canonicalId: "claude-opus-4-1",
|
|
345
|
+
provider: "anthropic",
|
|
346
|
+
aliases: [],
|
|
347
|
+
family: "opus",
|
|
348
|
+
pricing: [
|
|
349
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "15.00", "output": "75.00", "cachedInput": "1.50", "cacheWrite": "18.75", "batchMultiplier": "0.5", "sourceUrl": "https://platform.claude.com/docs/en/about-claude/pricing", "observedAt": "2026-09-07", "notes": ["Anthropic did not publish an explicit effective date for this rate as observed; effectiveFrom is set conservatively to 2026-01-01 pending confirmation of the true rollout date.", "Retired on Anthropic-operated platforms; the pricing page still publishes its rate and notes it remains available on Amazon Bedrock and Google Cloud. Included so historical usage can still be priced.", "This model predates 2026, so the conservative 2026-01-01 effectiveFrom cannot price usage from its actual lifetime; no rollout date was published on the source page. A future pass should source real dates before relying on historical lookups for it.", "cacheWrite reflects the 5-minute cache TTL (1.25x input). The 1-hour TTL write multiplier is 2x input and is not separately modeled by this schema (a single cacheWrite field)."] }
|
|
350
|
+
],
|
|
351
|
+
source: { "url": "https://platform.claude.com/docs/en/about-claude/pricing", "observedAt": "2026-09-07" }
|
|
352
|
+
},
|
|
353
|
+
{
|
|
354
|
+
canonicalId: "claude-opus-4-5",
|
|
355
|
+
provider: "anthropic",
|
|
356
|
+
aliases: [],
|
|
357
|
+
family: "opus",
|
|
358
|
+
pricing: [
|
|
359
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "5.00", "output": "25.00", "cachedInput": "0.50", "cacheWrite": "6.25", "batchMultiplier": "0.5", "sourceUrl": "https://platform.claude.com/docs/en/about-claude/pricing", "observedAt": "2026-09-07", "notes": ["Anthropic did not publish an explicit effective date for this rate as observed; effectiveFrom is set conservatively to 2026-01-01 pending confirmation of the true rollout date.", "cacheWrite reflects the 5-minute cache TTL (1.25x input). The 1-hour TTL write multiplier is 2x input and is not separately modeled by this schema (a single cacheWrite field)."] }
|
|
360
|
+
],
|
|
361
|
+
source: { "url": "https://platform.claude.com/docs/en/about-claude/pricing", "observedAt": "2026-09-07" }
|
|
291
362
|
},
|
|
292
363
|
{
|
|
293
364
|
canonicalId: "claude-opus-4-6",
|
|
@@ -296,9 +367,9 @@ var MODEL_REGISTRY = [
|
|
|
296
367
|
family: "opus",
|
|
297
368
|
contextWindow: 1e6,
|
|
298
369
|
pricing: [
|
|
299
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "5.00", "output": "25.00", "cachedInput": "0.50", "cacheWrite": "6.25", "batchMultiplier": "0.5", "sourceUrl": "https://platform.claude.com/docs/en/about-claude/
|
|
370
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "5.00", "output": "25.00", "cachedInput": "0.50", "cacheWrite": "6.25", "batchMultiplier": "0.5", "sourceUrl": "https://platform.claude.com/docs/en/about-claude/pricing", "observedAt": "2026-09-07", "notes": ["Anthropic did not publish an explicit effective date for this rate as observed; effectiveFrom is set conservatively to 2026-01-01 pending confirmation of the true rollout date.", "cacheWrite reflects the 5-minute cache TTL (1.25x input). The 1-hour TTL write multiplier is 2x input and is not separately modeled by this schema (a single cacheWrite field)."] }
|
|
300
371
|
],
|
|
301
|
-
source: { "url": "https://platform.claude.com/docs/en/about-claude/
|
|
372
|
+
source: { "url": "https://platform.claude.com/docs/en/about-claude/pricing", "observedAt": "2026-09-07" }
|
|
302
373
|
},
|
|
303
374
|
{
|
|
304
375
|
canonicalId: "claude-opus-4-7",
|
|
@@ -307,9 +378,9 @@ var MODEL_REGISTRY = [
|
|
|
307
378
|
family: "opus",
|
|
308
379
|
contextWindow: 1e6,
|
|
309
380
|
pricing: [
|
|
310
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "5.00", "output": "25.00", "cachedInput": "0.50", "cacheWrite": "6.25", "batchMultiplier": "0.5", "sourceUrl": "https://platform.claude.com/docs/en/about-claude/
|
|
381
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "5.00", "output": "25.00", "cachedInput": "0.50", "cacheWrite": "6.25", "batchMultiplier": "0.5", "sourceUrl": "https://platform.claude.com/docs/en/about-claude/pricing", "observedAt": "2026-09-07", "notes": ["Anthropic did not publish an explicit effective date for this rate as observed; effectiveFrom is set conservatively to 2026-01-01 pending confirmation of the true rollout date.", "cacheWrite reflects the 5-minute cache TTL (1.25x input). The 1-hour TTL write multiplier is 2x input and is not separately modeled by this schema (a single cacheWrite field)."] }
|
|
311
382
|
],
|
|
312
|
-
source: { "url": "https://platform.claude.com/docs/en/about-claude/
|
|
383
|
+
source: { "url": "https://platform.claude.com/docs/en/about-claude/pricing", "observedAt": "2026-09-07" }
|
|
313
384
|
},
|
|
314
385
|
{
|
|
315
386
|
canonicalId: "claude-opus-4-8",
|
|
@@ -318,9 +389,9 @@ var MODEL_REGISTRY = [
|
|
|
318
389
|
family: "opus",
|
|
319
390
|
contextWindow: 1e6,
|
|
320
391
|
pricing: [
|
|
321
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "5.00", "output": "25.00", "cachedInput": "0.50", "cacheWrite": "6.25", "batchMultiplier": "0.5", "sourceUrl": "https://platform.claude.com/docs/en/about-claude/
|
|
392
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "5.00", "output": "25.00", "cachedInput": "0.50", "cacheWrite": "6.25", "batchMultiplier": "0.5", "sourceUrl": "https://platform.claude.com/docs/en/about-claude/pricing", "observedAt": "2026-09-07", "notes": ["Anthropic did not publish an explicit effective date for this rate as observed; effectiveFrom is set conservatively to 2026-01-01 pending confirmation of the true rollout date.", "cacheWrite reflects the 5-minute cache TTL (1.25x input). The 1-hour TTL write multiplier is 2x input and is not separately modeled by this schema (a single cacheWrite field)."] }
|
|
322
393
|
],
|
|
323
|
-
source: { "url": "https://platform.claude.com/docs/en/about-claude/
|
|
394
|
+
source: { "url": "https://platform.claude.com/docs/en/about-claude/pricing", "observedAt": "2026-09-07" }
|
|
324
395
|
},
|
|
325
396
|
{
|
|
326
397
|
canonicalId: "claude-opus-5",
|
|
@@ -329,9 +400,29 @@ var MODEL_REGISTRY = [
|
|
|
329
400
|
family: "opus",
|
|
330
401
|
contextWindow: 1e6,
|
|
331
402
|
pricing: [
|
|
332
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "5.00", "output": "25.00", "cachedInput": "0.50", "cacheWrite": "6.25", "batchMultiplier": "0.5", "sourceUrl": "https://platform.claude.com/docs/en/about-claude/
|
|
403
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "5.00", "output": "25.00", "cachedInput": "0.50", "cacheWrite": "6.25", "batchMultiplier": "0.5", "sourceUrl": "https://platform.claude.com/docs/en/about-claude/pricing", "observedAt": "2026-09-07", "notes": ["Anthropic did not publish an explicit effective date for this rate as observed; effectiveFrom is set conservatively to 2026-01-01 pending confirmation of the true rollout date.", "cacheWrite reflects the 5-minute cache TTL (1.25x input). The 1-hour TTL write multiplier is 2x input and is not separately modeled by this schema (a single cacheWrite field)."] }
|
|
404
|
+
],
|
|
405
|
+
source: { "url": "https://platform.claude.com/docs/en/about-claude/pricing", "observedAt": "2026-09-07" }
|
|
406
|
+
},
|
|
407
|
+
{
|
|
408
|
+
canonicalId: "claude-sonnet-4",
|
|
409
|
+
provider: "anthropic",
|
|
410
|
+
aliases: [],
|
|
411
|
+
family: "sonnet",
|
|
412
|
+
pricing: [
|
|
413
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "3.00", "output": "15.00", "cachedInput": "0.30", "cacheWrite": "3.75", "batchMultiplier": "0.5", "sourceUrl": "https://platform.claude.com/docs/en/about-claude/pricing", "observedAt": "2026-09-07", "notes": ["Anthropic did not publish an explicit effective date for this rate as observed; effectiveFrom is set conservatively to 2026-01-01 pending confirmation of the true rollout date.", "Retired on Anthropic-operated platforms; the pricing page still publishes its rate and notes it remains available on Amazon Bedrock and Google Cloud. Included so historical usage can still be priced.", "This model predates 2026, so the conservative 2026-01-01 effectiveFrom cannot price usage from its actual lifetime; no rollout date was published on the source page. A future pass should source real dates before relying on historical lookups for it.", "cacheWrite reflects the 5-minute cache TTL (1.25x input). The 1-hour TTL write multiplier is 2x input and is not separately modeled by this schema (a single cacheWrite field)."] }
|
|
333
414
|
],
|
|
334
|
-
source: { "url": "https://platform.claude.com/docs/en/about-claude/
|
|
415
|
+
source: { "url": "https://platform.claude.com/docs/en/about-claude/pricing", "observedAt": "2026-09-07" }
|
|
416
|
+
},
|
|
417
|
+
{
|
|
418
|
+
canonicalId: "claude-sonnet-4-5",
|
|
419
|
+
provider: "anthropic",
|
|
420
|
+
aliases: [],
|
|
421
|
+
family: "sonnet",
|
|
422
|
+
pricing: [
|
|
423
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "3.00", "output": "15.00", "cachedInput": "0.30", "cacheWrite": "3.75", "batchMultiplier": "0.5", "sourceUrl": "https://platform.claude.com/docs/en/about-claude/pricing", "observedAt": "2026-09-07", "notes": ["Anthropic did not publish an explicit effective date for this rate as observed; effectiveFrom is set conservatively to 2026-01-01 pending confirmation of the true rollout date.", "cacheWrite reflects the 5-minute cache TTL (1.25x input). The 1-hour TTL write multiplier is 2x input and is not separately modeled by this schema (a single cacheWrite field)."] }
|
|
424
|
+
],
|
|
425
|
+
source: { "url": "https://platform.claude.com/docs/en/about-claude/pricing", "observedAt": "2026-09-07" }
|
|
335
426
|
},
|
|
336
427
|
{
|
|
337
428
|
canonicalId: "claude-sonnet-4-6",
|
|
@@ -340,9 +431,9 @@ var MODEL_REGISTRY = [
|
|
|
340
431
|
family: "sonnet",
|
|
341
432
|
contextWindow: 1e6,
|
|
342
433
|
pricing: [
|
|
343
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "3.00", "output": "15.00", "cachedInput": "0.30", "cacheWrite": "3.75", "batchMultiplier": "0.5", "sourceUrl": "https://platform.claude.com/docs/en/about-claude/
|
|
434
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "3.00", "output": "15.00", "cachedInput": "0.30", "cacheWrite": "3.75", "batchMultiplier": "0.5", "sourceUrl": "https://platform.claude.com/docs/en/about-claude/pricing", "observedAt": "2026-09-07", "notes": ["Anthropic did not publish an explicit effective date for this rate as observed; effectiveFrom is set conservatively to 2026-01-01 pending confirmation of the true rollout date.", "cacheWrite reflects the 5-minute cache TTL (1.25x input). The 1-hour TTL write multiplier is 2x input and is not separately modeled by this schema (a single cacheWrite field)."] }
|
|
344
435
|
],
|
|
345
|
-
source: { "url": "https://platform.claude.com/docs/en/about-claude/
|
|
436
|
+
source: { "url": "https://platform.claude.com/docs/en/about-claude/pricing", "observedAt": "2026-09-07" }
|
|
346
437
|
},
|
|
347
438
|
{
|
|
348
439
|
canonicalId: "claude-sonnet-5",
|
|
@@ -351,10 +442,9 @@ var MODEL_REGISTRY = [
|
|
|
351
442
|
family: "sonnet",
|
|
352
443
|
contextWindow: 1e6,
|
|
353
444
|
pricing: [
|
|
354
|
-
{ "effectiveFrom": "2026-01-01", "
|
|
355
|
-
{ "effectiveFrom": "2026-09-01", "currency": "USD", "unit": "per-million-tokens", "input": "3.00", "output": "15.00", "cachedInput": "0.30", "cacheWrite": "3.75", "batchMultiplier": "0.5", "sourceUrl": "https://platform.claude.com/docs/en/about-claude/models/overview", "observedAt": "2026-08-05", "notes": ["Standard rate, effective 2026-09-01 immediately after the introductory-rate window (through 2026-08-31) ends. A lookup dated 2026-09-15 must select this period.", "cacheWrite reflects the 5-minute cache TTL (1.25x input). The 1-hour TTL write multiplier is 2x input and is not separately modeled by this schema (a single cacheWrite field)."] }
|
|
445
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "2.00", "output": "10.00", "cachedInput": "0.20", "cacheWrite": "2.50", "batchMultiplier": "0.5", "sourceUrl": "https://platform.claude.com/docs/en/about-claude/pricing", "observedAt": "2026-09-07", "notes": ['$2.00/$10.00 launched as an introductory rate through 2026-08-31. On 2026-09-07 the pricing page states it "is now the standard price" and that "the previously scheduled increase to $3/$15 per million input/output tokens on September 1, 2026 will not occur", so the rate continues open-ended rather than ending 2026-08-31.', "Supersedes the two-period shape recorded on 2026-08-05 (introductory $2.00/$10.00 to 2026-09-01, then standard $3.00/$15.00). That second period was removed, not closed: the higher rate never took effect, so no date range may report it.", "Anthropic did not publish an explicit effective date for this rate as observed; effectiveFrom is set conservatively to 2026-01-01 pending confirmation of the true rollout date.", "cacheWrite reflects the 5-minute cache TTL (1.25x input). The 1-hour TTL write multiplier is 2x input and is not separately modeled by this schema (a single cacheWrite field)."] }
|
|
356
446
|
],
|
|
357
|
-
source: { "url": "https://platform.claude.com/docs/en/about-claude/
|
|
447
|
+
source: { "url": "https://platform.claude.com/docs/en/about-claude/pricing", "observedAt": "2026-09-07" }
|
|
358
448
|
},
|
|
359
449
|
{
|
|
360
450
|
canonicalId: "amazon-nova-lite",
|
|
@@ -362,7 +452,7 @@ var MODEL_REGISTRY = [
|
|
|
362
452
|
aliases: [],
|
|
363
453
|
family: "amazon-nova",
|
|
364
454
|
pricing: [
|
|
365
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.60", "output": "2.40", "sourceUrl": "https://aws.amazon.com/bedrock/pricing/", "observedAt": "2026-08-05", "notes": ["No explicit effective date published for this rate; effectiveFrom is set conservatively to 2026-01-01.", "Same cross-region/in-region caveat as amazon-nova-micro."] }
|
|
455
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.60", "output": "2.40", "sourceUrl": "https://aws.amazon.com/bedrock/pricing/", "observedAt": "2026-08-05", "notes": ["No explicit effective date published for this rate; effectiveFrom is set conservatively to 2026-01-01.", "Same cross-region/in-region caveat as amazon-nova-micro.", "Not surfaced by the 2026-09-07 fetch of the same page, whose accessible sections did not include this model. observedAt is deliberately left at 2026-08-05: the rate was not re-observed, and an absence in one page fetch is not evidence of a withdrawal."] }
|
|
366
456
|
],
|
|
367
457
|
source: { "url": "https://aws.amazon.com/bedrock/pricing/", "observedAt": "2026-08-05" }
|
|
368
458
|
},
|
|
@@ -372,7 +462,7 @@ var MODEL_REGISTRY = [
|
|
|
372
462
|
aliases: [],
|
|
373
463
|
family: "amazon-nova",
|
|
374
464
|
pricing: [
|
|
375
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.30", "output": "1.20", "sourceUrl": "https://aws.amazon.com/bedrock/pricing/", "observedAt": "2026-08-05", "notes": [`AWS's own first-party model (Amazon publishes both Bedrock and Nova), so "aws-bedrock" is effectively first-party pricing here, unlike the resold third-party models in this file.`, "No explicit effective date published for this specific rate (unlike the Claude 3.5 Sonnet rows above, which do carry a stated Dec 2025 date); effectiveFrom is set conservatively to 2026-01-01.", `Bedrock's pricing page also distinguishes "Global cross-region" vs "in-region" inference pricing for Nova; this rate was not confirmed to be specifically the in-region (vs cross-region) figure \u2014 treat as the headline on-demand rate observed
|
|
465
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.30", "output": "1.20", "sourceUrl": "https://aws.amazon.com/bedrock/pricing/", "observedAt": "2026-08-05", "notes": [`AWS's own first-party model (Amazon publishes both Bedrock and Nova), so "aws-bedrock" is effectively first-party pricing here, unlike the resold third-party models in this file.`, "No explicit effective date published for this specific rate (unlike the Claude 3.5 Sonnet rows above, which do carry a stated Dec 2025 date); effectiveFrom is set conservatively to 2026-01-01.", `Bedrock's pricing page also distinguishes "Global cross-region" vs "in-region" inference pricing for Nova; this rate was not confirmed to be specifically the in-region (vs cross-region) figure \u2014 treat as the headline on-demand rate observed.`, "Not surfaced by the 2026-09-07 fetch of the same page, whose accessible sections did not include this model. observedAt is deliberately left at 2026-08-05: the rate was not re-observed, and an absence in one page fetch is not evidence of a withdrawal."] }
|
|
376
466
|
],
|
|
377
467
|
source: { "url": "https://aws.amazon.com/bedrock/pricing/", "observedAt": "2026-08-05" }
|
|
378
468
|
},
|
|
@@ -382,7 +472,7 @@ var MODEL_REGISTRY = [
|
|
|
382
472
|
aliases: [],
|
|
383
473
|
family: "amazon-nova",
|
|
384
474
|
pricing: [
|
|
385
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "1.20", "output": "4.80", "sourceUrl": "https://aws.amazon.com/bedrock/pricing/", "observedAt": "2026-08-05", "notes": ["No explicit effective date published for this rate; effectiveFrom is set conservatively to 2026-01-01.", "Same cross-region/in-region caveat as amazon-nova-micro."] }
|
|
475
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "1.20", "output": "4.80", "sourceUrl": "https://aws.amazon.com/bedrock/pricing/", "observedAt": "2026-08-05", "notes": ["No explicit effective date published for this rate; effectiveFrom is set conservatively to 2026-01-01.", "Same cross-region/in-region caveat as amazon-nova-micro.", "Not surfaced by the 2026-09-07 fetch of the same page, whose accessible sections did not include this model. observedAt is deliberately left at 2026-08-05: the rate was not re-observed, and an absence in one page fetch is not evidence of a withdrawal."] }
|
|
386
476
|
],
|
|
387
477
|
source: { "url": "https://aws.amazon.com/bedrock/pricing/", "observedAt": "2026-08-05" }
|
|
388
478
|
},
|
|
@@ -392,9 +482,9 @@ var MODEL_REGISTRY = [
|
|
|
392
482
|
aliases: [],
|
|
393
483
|
family: "anthropic-claude",
|
|
394
484
|
pricing: [
|
|
395
|
-
{ "effectiveFrom": "2025-12-01", "currency": "USD", "unit": "per-million-tokens", "input": "6.00", "output": "30.00", "batchMultiplier": "0.5", "sourceUrl": "https://aws.amazon.com/bedrock/pricing/", "observedAt": "2026-
|
|
485
|
+
{ "effectiveFrom": "2025-12-01", "currency": "USD", "unit": "per-million-tokens", "input": "6.00", "output": "30.00", "batchMultiplier": "0.5", "sourceUrl": "https://aws.amazon.com/bedrock/pricing/", "observedAt": "2026-09-07", "notes": [`AWS Bedrock's own rate card for this Anthropic model, explicitly labeled "Effective 1 Dec 2025" on the pricing page \u2014 a real, confirmed effective date, not the conservative default used elsewhere in this file.`, "Batch: $3.00/$15.00 (confirmed 0.5x standard) as observed on the same page.", "This is Bedrock's own price for an older Claude generation (3.5 Sonnet), not the current claude-sonnet-5 model in anthropic.json \u2014 no comparable first-party entry exists in this registry for the same model, so no direct parity claim is possible or intended. Bedrock and Azure resell other vendors' models under their own rate cards, so a first-party price is never a safe proxy for theirs.", "Re-confirmed unchanged on 2026-09-07 against the same page."] }
|
|
396
486
|
],
|
|
397
|
-
source: { "url": "https://aws.amazon.com/bedrock/pricing/", "observedAt": "2026-
|
|
487
|
+
source: { "url": "https://aws.amazon.com/bedrock/pricing/", "observedAt": "2026-09-07" }
|
|
398
488
|
},
|
|
399
489
|
{
|
|
400
490
|
canonicalId: "claude-3.5-sonnet-v2",
|
|
@@ -402,9 +492,29 @@ var MODEL_REGISTRY = [
|
|
|
402
492
|
aliases: [],
|
|
403
493
|
family: "anthropic-claude",
|
|
404
494
|
pricing: [
|
|
405
|
-
{ "effectiveFrom": "2025-12-01", "currency": "USD", "unit": "per-million-tokens", "input": "6.00", "output": "30.00", "cachedInput": "0.60", "cacheWrite": "7.50", "batchMultiplier": "0.5", "sourceUrl": "https://aws.amazon.com/bedrock/pricing/", "observedAt": "2026-
|
|
495
|
+
{ "effectiveFrom": "2025-12-01", "currency": "USD", "unit": "per-million-tokens", "input": "6.00", "output": "30.00", "cachedInput": "0.60", "cacheWrite": "7.50", "batchMultiplier": "0.5", "sourceUrl": "https://aws.amazon.com/bedrock/pricing/", "observedAt": "2026-09-07", "notes": [`AWS Bedrock's own rate card, explicitly labeled "Effective 1 Dec 2025" on the pricing page.`, "Batch: $3.00/$15.00 (confirmed 0.5x standard) as observed on the same page.", "Bedrock's own price for an older Claude generation; not comparable to any first-party entry currently in anthropic.json (which covers 4.x/5.x models only).", "Re-confirmed unchanged on 2026-09-07 against the same page."] }
|
|
406
496
|
],
|
|
407
|
-
source: { "url": "https://aws.amazon.com/bedrock/pricing/", "observedAt": "2026-
|
|
497
|
+
source: { "url": "https://aws.amazon.com/bedrock/pricing/", "observedAt": "2026-09-07" }
|
|
498
|
+
},
|
|
499
|
+
{
|
|
500
|
+
canonicalId: "gemma-3-12b",
|
|
501
|
+
provider: "aws-bedrock",
|
|
502
|
+
aliases: [],
|
|
503
|
+
family: "gemma",
|
|
504
|
+
pricing: [
|
|
505
|
+
{ "effectiveFrom": "2026-09-07", "currency": "USD", "unit": "per-million-tokens", "input": "0.09", "output": "0.29", "sourceUrl": "https://aws.amazon.com/bedrock/pricing/", "observedAt": "2026-09-07", "notes": ["Bedrock's own resale rate for this google model, read from Bedrock's pricing page - never copied from that vendor's first-party file.", "Added from the 2026-09-07 fetch; effectiveFrom is the observation date, since the 2026-08-05 fetch of the same page did not surface it.", "US East on-demand rate as printed; Bedrock prices some models per region and this schema has no region dimension."] }
|
|
506
|
+
],
|
|
507
|
+
source: { "url": "https://aws.amazon.com/bedrock/pricing/", "observedAt": "2026-09-07" }
|
|
508
|
+
},
|
|
509
|
+
{
|
|
510
|
+
canonicalId: "gemma-3-27b",
|
|
511
|
+
provider: "aws-bedrock",
|
|
512
|
+
aliases: [],
|
|
513
|
+
family: "gemma",
|
|
514
|
+
pricing: [
|
|
515
|
+
{ "effectiveFrom": "2026-09-07", "currency": "USD", "unit": "per-million-tokens", "input": "0.23", "output": "0.38", "sourceUrl": "https://aws.amazon.com/bedrock/pricing/", "observedAt": "2026-09-07", "notes": ["Bedrock's own resale rate for this google model, read from Bedrock's pricing page - never copied from that vendor's first-party file.", "Added from the 2026-09-07 fetch; effectiveFrom is the observation date, since the 2026-08-05 fetch of the same page did not surface it.", "US East on-demand rate as printed; Bedrock prices some models per region and this schema has no region dimension."] }
|
|
516
|
+
],
|
|
517
|
+
source: { "url": "https://aws.amazon.com/bedrock/pricing/", "observedAt": "2026-09-07" }
|
|
408
518
|
},
|
|
409
519
|
{
|
|
410
520
|
canonicalId: "gemma-4-31b",
|
|
@@ -412,9 +522,9 @@ var MODEL_REGISTRY = [
|
|
|
412
522
|
aliases: [],
|
|
413
523
|
family: "google-gemma",
|
|
414
524
|
pricing: [
|
|
415
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.14", "output": "0.40", "sourceUrl": "https://aws.amazon.com/bedrock/pricing/", "observedAt": "2026-
|
|
525
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.14", "output": "0.40", "sourceUrl": "https://aws.amazon.com/bedrock/pricing/", "observedAt": "2026-09-07", "notes": ["No explicit effective date published for this rate; effectiveFrom is set conservatively to 2026-01-01.", 'Cross-provider alias/canonicalId collision (allowed, not an error): Together AI also lists "Gemma 4 31B" (together.json: gemma-4-31b) at a different, higher rate ($0.39/$0.97 as observed) \u2014 same underlying Google open-weight model, independently priced by each reseller; do not assume parity.', "Re-confirmed unchanged on 2026-09-07 against the same page."] }
|
|
416
526
|
],
|
|
417
|
-
source: { "url": "https://aws.amazon.com/bedrock/pricing/", "observedAt": "2026-
|
|
527
|
+
source: { "url": "https://aws.amazon.com/bedrock/pricing/", "observedAt": "2026-09-07" }
|
|
418
528
|
},
|
|
419
529
|
{
|
|
420
530
|
canonicalId: "mistral-large-3",
|
|
@@ -422,9 +532,19 @@ var MODEL_REGISTRY = [
|
|
|
422
532
|
aliases: [],
|
|
423
533
|
family: "mistral",
|
|
424
534
|
pricing: [
|
|
425
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.50", "output": "1.50", "sourceUrl": "https://aws.amazon.com/bedrock/pricing/", "observedAt": "2026-
|
|
535
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.50", "output": "1.50", "sourceUrl": "https://aws.amazon.com/bedrock/pricing/", "observedAt": "2026-09-07", "notes": ["No explicit effective date published for this rate; effectiveFrom is set conservatively to 2026-01-01.", "Cross-provider alias/canonicalId collision (allowed, not an error): Mistral's own first-party pricing (mistral.json: mistral-large-3) shows the identical $0.50/$1.50 figure as independently observed \u2014 coincidental agreement between the two independently fetched sources, not assumed; both were confirmed directly.", "Re-confirmed unchanged on 2026-09-07 against the same page."] }
|
|
426
536
|
],
|
|
427
|
-
source: { "url": "https://aws.amazon.com/bedrock/pricing/", "observedAt": "2026-
|
|
537
|
+
source: { "url": "https://aws.amazon.com/bedrock/pricing/", "observedAt": "2026-09-07" }
|
|
538
|
+
},
|
|
539
|
+
{
|
|
540
|
+
canonicalId: "nemotron-3-super-120b",
|
|
541
|
+
provider: "aws-bedrock",
|
|
542
|
+
aliases: [],
|
|
543
|
+
family: "nemotron",
|
|
544
|
+
pricing: [
|
|
545
|
+
{ "effectiveFrom": "2026-09-07", "currency": "USD", "unit": "per-million-tokens", "input": "0.15", "output": "0.65", "sourceUrl": "https://aws.amazon.com/bedrock/pricing/", "observedAt": "2026-09-07", "notes": ["Bedrock's own resale rate for this nvidia model, read from Bedrock's pricing page - never copied from that vendor's first-party file.", "Added from the 2026-09-07 fetch; effectiveFrom is the observation date, since the 2026-08-05 fetch of the same page did not surface it.", "US East on-demand rate as printed; Bedrock prices some models per region and this schema has no region dimension."] }
|
|
546
|
+
],
|
|
547
|
+
source: { "url": "https://aws.amazon.com/bedrock/pricing/", "observedAt": "2026-09-07" }
|
|
428
548
|
},
|
|
429
549
|
{
|
|
430
550
|
canonicalId: "nemotron-nano-2",
|
|
@@ -432,7 +552,7 @@ var MODEL_REGISTRY = [
|
|
|
432
552
|
aliases: [],
|
|
433
553
|
family: "nvidia-nemotron",
|
|
434
554
|
pricing: [
|
|
435
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.06", "output": "0.23", "sourceUrl": "https://aws.amazon.com/bedrock/pricing/", "observedAt": "2026-08-05", "notes": ["No explicit effective date published for this rate; effectiveFrom is set conservatively to 2026-01-01."] }
|
|
555
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.06", "output": "0.23", "sourceUrl": "https://aws.amazon.com/bedrock/pricing/", "observedAt": "2026-08-05", "notes": ["No explicit effective date published for this rate; effectiveFrom is set conservatively to 2026-01-01.", "Not surfaced by the 2026-09-07 fetch of the same page, whose accessible sections did not include this model. observedAt is deliberately left at 2026-08-05: the rate was not re-observed, and an absence in one page fetch is not evidence of a withdrawal."] }
|
|
436
556
|
],
|
|
437
557
|
source: { "url": "https://aws.amazon.com/bedrock/pricing/", "observedAt": "2026-08-05" }
|
|
438
558
|
},
|
|
@@ -662,9 +782,9 @@ var MODEL_REGISTRY = [
|
|
|
662
782
|
aliases: [],
|
|
663
783
|
family: "gpt-5.6",
|
|
664
784
|
pricing: [
|
|
665
|
-
{ "effectiveFrom": "2026-07-01", "currency": "USD", "unit": "per-million-tokens", "input": "5.00", "output": "30.00", "cachedInput": "0.50", "cacheWrite": "6.25", "cheapestTier": true, "sourceUrl": "https://prices.azure.com/api/retail/prices?currencyCode='USD'&$filter=contains(productName,%20%27OpenAI%27)", "observedAt": "2026-
|
|
785
|
+
{ "effectiveFrom": "2026-07-01", "currency": "USD", "unit": "per-million-tokens", "input": "5.00", "output": "30.00", "cachedInput": "0.50", "cacheWrite": "6.25", "cheapestTier": true, "sourceUrl": "https://prices.azure.com/api/retail/prices?currencyCode='USD'&$filter=contains(productName,%20%27OpenAI%27)", "observedAt": "2026-09-07", "notes": ["retailPrice confirmed identical across all 24 Azure regions returned for this Global-deployment SKU (spot-checked programmatically, not just a couple of regions) \u2014 no regional price variation observed for the Global tier.", "No Batch API meter was found for this model/SKU in the Retail Prices API response; batchMultiplier is intentionally omitted rather than assumed.", `canonicalId "gpt-5.6-sol" is deliberately identical to the same model's entry in openai.json \u2014 Azure genuinely resells the identical first-party OpenAI model, unlike AWS Bedrock's or OpenRouter's differently-branded catalogues. Following the aws-bedrock.json precedent (e.g. its "mistral-large-3" and "gemma-4-31b" entries) rather than OpenRouter's provider-prefixed-slug convention: this is an intentional cross-provider canonicalId collision, not an error. A bare lookup of this id without a provider qualifier is ambiguous by design and must fail, exactly as already documented for the aws-bedrock.json collisions, since a lookup with a duplicated canonicalId requires a provider qualifier to resolve unambiguously. Per this task's ownership boundary, openai.json itself was not modified to cross-reference this note; a follow-up pass should add a mirroring note there.`, `Re-observed 2026-09-07 via the Retail Prices API filtered to this model's meters ("5.6 sol ShortCo Inp Std Gl" $5.00, "5.6 sol ShortCo Opt Std Gl" $30.00, "5.6 sol ShortCo Cd Inp Std Gl" $0.50): unchanged.`, `NOW DIFFERS from OpenAI's own first-party rate in openai.json for the same canonicalId "gpt-5.6-sol". Both files recorded $5.00/$30.00/$0.50 on 2026-08-05; on 2026-09-07 OpenAI's pricing page published $4.00/$20.00/$0.40 while Azure's meters stayed at $5.00/$30.00/$0.50. Azure did not follow the first-party cut, so this joins gpt-5.6-terra and gpt-5.6-luna as a confirmed same-id price divergence rather than a transcription error.`, `The API also exposes "LongCo" (long-context) meters for this model at $10.00 input / $45.00 output Global Standard, alongside the "ShortCo" rates recorded here - the same context tiering OpenAI's page labels "<272K". This schema has no context-length dimension, so only the ShortCo tier is recorded.`] }
|
|
666
786
|
],
|
|
667
|
-
source: { "url": "https://prices.azure.com/api/retail/prices?currencyCode='USD'&$filter=contains(productName,%20%27OpenAI%27)", "observedAt": "2026-
|
|
787
|
+
source: { "url": "https://prices.azure.com/api/retail/prices?currencyCode='USD'&$filter=contains(productName,%20%27OpenAI%27)", "observedAt": "2026-09-07" }
|
|
668
788
|
},
|
|
669
789
|
{
|
|
670
790
|
canonicalId: "gpt-5.6-terra",
|
|
@@ -762,9 +882,9 @@ var MODEL_REGISTRY = [
|
|
|
762
882
|
aliases: [],
|
|
763
883
|
family: "aya-expanse",
|
|
764
884
|
pricing: [
|
|
765
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.50", "output": "1.50", "sourceUrl": "https://cohere.com/pricing", "observedAt": "2026-
|
|
885
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.50", "output": "1.50", "sourceUrl": "https://cohere.com/pricing", "observedAt": "2026-09-07", "notes": ["Cohere's pricing page publishes an identical $0.50/$1.50 rate for both the 8B and 32B Aya Expanse sizes (confirmed by two independent re-fetches of the same page); this was double-checked rather than assumed to be an extraction error.", "effectiveFrom set conservatively to 2026-01-01; exact rate-effective date not published.", "Re-confirmed unchanged on 2026-09-07 against the same page."] }
|
|
766
886
|
],
|
|
767
|
-
source: { "url": "https://cohere.com/pricing", "observedAt": "2026-
|
|
887
|
+
source: { "url": "https://cohere.com/pricing", "observedAt": "2026-09-07" }
|
|
768
888
|
},
|
|
769
889
|
{
|
|
770
890
|
canonicalId: "aya-expanse-8b",
|
|
@@ -772,9 +892,9 @@ var MODEL_REGISTRY = [
|
|
|
772
892
|
aliases: [],
|
|
773
893
|
family: "aya-expanse",
|
|
774
894
|
pricing: [
|
|
775
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.50", "output": "1.50", "sourceUrl": "https://cohere.com/pricing", "observedAt": "2026-
|
|
895
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.50", "output": "1.50", "sourceUrl": "https://cohere.com/pricing", "observedAt": "2026-09-07", "notes": ["Cohere's pricing page publishes an identical $0.50/$1.50 rate for both the 8B and 32B Aya Expanse sizes (confirmed by two independent re-fetches of the same page); this was double-checked rather than assumed to be an extraction error.", "effectiveFrom set conservatively to 2026-01-01; exact rate-effective date not published.", "Re-confirmed unchanged on 2026-09-07 against the same page."] }
|
|
776
896
|
],
|
|
777
|
-
source: { "url": "https://cohere.com/pricing", "observedAt": "2026-
|
|
897
|
+
source: { "url": "https://cohere.com/pricing", "observedAt": "2026-09-07" }
|
|
778
898
|
},
|
|
779
899
|
{
|
|
780
900
|
canonicalId: "command",
|
|
@@ -782,9 +902,9 @@ var MODEL_REGISTRY = [
|
|
|
782
902
|
aliases: [],
|
|
783
903
|
family: "command",
|
|
784
904
|
pricing: [
|
|
785
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "1.00", "output": "2.00", "sourceUrl": "https://cohere.com/pricing", "observedAt": "2026-
|
|
905
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "1.00", "output": "2.00", "sourceUrl": "https://cohere.com/pricing", "observedAt": "2026-09-07", "notes": ["Cohere's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01.", "This rate appears in the pricing page's FAQ/legacy-rates section, not a headline pricing table; it is nonetheless the only per-token price Cohere currently publishes for this model.", "Re-confirmed unchanged on 2026-09-07 against the same page."] }
|
|
786
906
|
],
|
|
787
|
-
source: { "url": "https://cohere.com/pricing", "observedAt": "2026-
|
|
907
|
+
source: { "url": "https://cohere.com/pricing", "observedAt": "2026-09-07" }
|
|
788
908
|
},
|
|
789
909
|
{
|
|
790
910
|
canonicalId: "command-light",
|
|
@@ -792,9 +912,9 @@ var MODEL_REGISTRY = [
|
|
|
792
912
|
aliases: [],
|
|
793
913
|
family: "command",
|
|
794
914
|
pricing: [
|
|
795
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.30", "output": "0.60", "sourceUrl": "https://cohere.com/pricing", "observedAt": "2026-
|
|
915
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.30", "output": "0.60", "sourceUrl": "https://cohere.com/pricing", "observedAt": "2026-09-07", "notes": ["Cohere's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01.", 'FAQ/legacy-rates section pricing, per the same caveat as "command".', "Re-confirmed unchanged on 2026-09-07 against the same page."] }
|
|
796
916
|
],
|
|
797
|
-
source: { "url": "https://cohere.com/pricing", "observedAt": "2026-
|
|
917
|
+
source: { "url": "https://cohere.com/pricing", "observedAt": "2026-09-07" }
|
|
798
918
|
},
|
|
799
919
|
{
|
|
800
920
|
canonicalId: "command-r-03-2024",
|
|
@@ -802,9 +922,9 @@ var MODEL_REGISTRY = [
|
|
|
802
922
|
aliases: [],
|
|
803
923
|
family: "command-r",
|
|
804
924
|
pricing: [
|
|
805
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.50", "output": "1.50", "sourceUrl": "https://cohere.com/pricing", "observedAt": "2026-
|
|
925
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.50", "output": "1.50", "sourceUrl": "https://cohere.com/pricing", "observedAt": "2026-09-07", "notes": [`"03-2024" is Cohere's own dated-snapshot naming for this model, not a confirmed price-effective date; effectiveFrom is set conservatively to 2026-01-01 per this repository's convention (a too-early effectiveFrom is safe; the price could have applied earlier than 2026 but was not independently confirmed).`, "FAQ/legacy-rates section pricing.", "Re-confirmed unchanged on 2026-09-07 against the same page."] }
|
|
806
926
|
],
|
|
807
|
-
source: { "url": "https://cohere.com/pricing", "observedAt": "2026-
|
|
927
|
+
source: { "url": "https://cohere.com/pricing", "observedAt": "2026-09-07" }
|
|
808
928
|
},
|
|
809
929
|
{
|
|
810
930
|
canonicalId: "command-r-plus-04-2024",
|
|
@@ -812,9 +932,9 @@ var MODEL_REGISTRY = [
|
|
|
812
932
|
aliases: [],
|
|
813
933
|
family: "command-r-plus",
|
|
814
934
|
pricing: [
|
|
815
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "3.00", "output": "15.00", "sourceUrl": "https://cohere.com/pricing", "observedAt": "2026-
|
|
935
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "3.00", "output": "15.00", "sourceUrl": "https://cohere.com/pricing", "observedAt": "2026-09-07", "notes": [`"04-2024" is Cohere's own dated-snapshot naming for this model, not a confirmed price-effective date; effectiveFrom is set conservatively to 2026-01-01.`, `FAQ/legacy-rates section pricing. Superseded in Cohere's catalogue by "Command R+ 08-2024" (below), a distinct dated snapshot with its own price \u2014 the two are not the same PricingPeriod for one model, they are two different canonicalIds, matching how Cohere itself lists them.`, "Re-confirmed unchanged on 2026-09-07 against the same page."] }
|
|
816
936
|
],
|
|
817
|
-
source: { "url": "https://cohere.com/pricing", "observedAt": "2026-
|
|
937
|
+
source: { "url": "https://cohere.com/pricing", "observedAt": "2026-09-07" }
|
|
818
938
|
},
|
|
819
939
|
{
|
|
820
940
|
canonicalId: "command-r-plus-08-2024",
|
|
@@ -822,9 +942,9 @@ var MODEL_REGISTRY = [
|
|
|
822
942
|
aliases: [],
|
|
823
943
|
family: "command-r-plus",
|
|
824
944
|
pricing: [
|
|
825
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "2.50", "output": "10.00", "sourceUrl": "https://cohere.com/pricing", "observedAt": "2026-
|
|
945
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "2.50", "output": "10.00", "sourceUrl": "https://cohere.com/pricing", "observedAt": "2026-09-07", "notes": [`"08-2024" is Cohere's own dated-snapshot naming for this model, not a confirmed price-effective date; effectiveFrom is set conservatively to 2026-01-01.`, "FAQ/legacy-rates section pricing.", "Re-confirmed unchanged on 2026-09-07 against the same page."] }
|
|
826
946
|
],
|
|
827
|
-
source: { "url": "https://cohere.com/pricing", "observedAt": "2026-
|
|
947
|
+
source: { "url": "https://cohere.com/pricing", "observedAt": "2026-09-07" }
|
|
828
948
|
},
|
|
829
949
|
{
|
|
830
950
|
canonicalId: "gemini-2.5-flash",
|
|
@@ -832,9 +952,9 @@ var MODEL_REGISTRY = [
|
|
|
832
952
|
aliases: [],
|
|
833
953
|
family: "gemini-2.5",
|
|
834
954
|
pricing: [
|
|
835
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.30", "output": "2.50", "batchMultiplier": "0.5", "sourceUrl": "https://ai.google.dev/gemini-api/docs/pricing", "observedAt": "2026-
|
|
955
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.30", "output": "2.50", "cachedInput": "0.03", "batchMultiplier": "0.5", "sourceUrl": "https://ai.google.dev/gemini-api/docs/pricing", "observedAt": "2026-09-07", "notes": ["Google's page does not state when this rate took effect; effectiveFrom is set conservatively to 2026-01-01.", "Input and context-caching rates are the text/image/video rates. The page prices audio input separately ($1.00 input, $0.10 context caching); this schema has no per-modality dimension, so the audio rate is not recorded.", "batchMultiplier of 0.5 was verified from this model's own Batch rows ($0.15 / $1.25), not from a blanket statement.", "cachedInput is this model's own published context-caching rate. The page also charges a separate per-hour cache storage fee, which this per-token schema does not model."] }
|
|
836
956
|
],
|
|
837
|
-
source: { "url": "https://ai.google.dev/gemini-api/docs/pricing", "observedAt": "2026-
|
|
957
|
+
source: { "url": "https://ai.google.dev/gemini-api/docs/pricing", "observedAt": "2026-09-07" }
|
|
838
958
|
},
|
|
839
959
|
{
|
|
840
960
|
canonicalId: "gemini-2.5-flash-lite",
|
|
@@ -842,9 +962,9 @@ var MODEL_REGISTRY = [
|
|
|
842
962
|
aliases: [],
|
|
843
963
|
family: "gemini-2.5",
|
|
844
964
|
pricing: [
|
|
845
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.10", "output": "0.40", "batchMultiplier": "0.5", "sourceUrl": "https://ai.google.dev/gemini-api/docs/pricing", "observedAt": "2026-
|
|
965
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.10", "output": "0.40", "cachedInput": "0.01", "batchMultiplier": "0.5", "sourceUrl": "https://ai.google.dev/gemini-api/docs/pricing", "observedAt": "2026-09-07", "notes": ["Google's page does not state when this rate took effect; effectiveFrom is set conservatively to 2026-01-01.", "Input and context-caching rates are the text/image/video rates. The page prices audio input separately ($0.30 input, $0.03 context caching); this schema has no per-modality dimension, so the audio rate is not recorded.", "batchMultiplier of 0.5 was verified from this model's own Batch rows ($0.05 / $0.20), not from a blanket statement.", "cachedInput is this model's own published context-caching rate. The page also charges a separate per-hour cache storage fee, which this per-token schema does not model."] }
|
|
846
966
|
],
|
|
847
|
-
source: { "url": "https://ai.google.dev/gemini-api/docs/pricing", "observedAt": "2026-
|
|
967
|
+
source: { "url": "https://ai.google.dev/gemini-api/docs/pricing", "observedAt": "2026-09-07" }
|
|
848
968
|
},
|
|
849
969
|
{
|
|
850
970
|
canonicalId: "gemini-2.5-pro",
|
|
@@ -852,9 +972,19 @@ var MODEL_REGISTRY = [
|
|
|
852
972
|
aliases: [],
|
|
853
973
|
family: "gemini-2.5",
|
|
854
974
|
pricing: [
|
|
855
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "1.25", "output": "10.00", "cheapestTier": true, "sourceUrl": "https://ai.google.dev/gemini-api/docs/pricing", "observedAt": "2026-
|
|
975
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "1.25", "output": "10.00", "cachedInput": "0.125", "batchMultiplier": "0.5", "cheapestTier": true, "sourceUrl": "https://ai.google.dev/gemini-api/docs/pricing", "observedAt": "2026-09-07", "notes": ["Google's page does not state when this rate took effect; effectiveFrom is set conservatively to 2026-01-01.", "The page prices prompts >200k tokens higher ($2.50 input / $15.00 output / $0.25 context caching); only the <=200k tier is recorded, since this schema has no context-length dimension.", "batchMultiplier of 0.5 was verified from this model's own Batch rows ($0.625 / $5.00), not from a blanket statement.", "cachedInput is this model's own published context-caching rate. The page also charges a separate per-hour cache storage fee, which this per-token schema does not model.", "batchMultiplier and cachedInput added on 2026-09-07: the page now publishes this model's own Batch and context-caching rows, which were not confirmed per-model on 2026-08-05."] }
|
|
976
|
+
],
|
|
977
|
+
source: { "url": "https://ai.google.dev/gemini-api/docs/pricing", "observedAt": "2026-09-07" }
|
|
978
|
+
},
|
|
979
|
+
{
|
|
980
|
+
canonicalId: "gemini-3.1-flash-lite",
|
|
981
|
+
provider: "google",
|
|
982
|
+
aliases: [],
|
|
983
|
+
family: "gemini-3.1",
|
|
984
|
+
pricing: [
|
|
985
|
+
{ "effectiveFrom": "2026-09-07", "currency": "USD", "unit": "per-million-tokens", "input": "0.25", "output": "1.50", "cachedInput": "0.025", "batchMultiplier": "0.5", "sourceUrl": "https://ai.google.dev/gemini-api/docs/pricing", "observedAt": "2026-09-07", "notes": ["New model: absent from the pricing page on 2026-08-05, present on 2026-09-07. effectiveFrom is the observation date rather than a backdated guess.", "Input and context-caching rates are the text/image/video rates. The page prices audio input separately ($0.50 input, $0.05 context caching); this schema has no per-modality dimension, so the audio rate is not recorded.", "batchMultiplier of 0.5 was verified from this model's own Batch rows ($0.125 / $0.75), not from a blanket statement.", "cachedInput is this model's own published context-caching rate. The page also charges a separate per-hour cache storage fee, which this per-token schema does not model."] }
|
|
856
986
|
],
|
|
857
|
-
source: { "url": "https://ai.google.dev/gemini-api/docs/pricing", "observedAt": "2026-
|
|
987
|
+
source: { "url": "https://ai.google.dev/gemini-api/docs/pricing", "observedAt": "2026-09-07" }
|
|
858
988
|
},
|
|
859
989
|
{
|
|
860
990
|
canonicalId: "gemini-3.1-pro-preview",
|
|
@@ -862,9 +992,9 @@ var MODEL_REGISTRY = [
|
|
|
862
992
|
aliases: [],
|
|
863
993
|
family: "gemini-3.1",
|
|
864
994
|
pricing: [
|
|
865
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "2.00", "output": "12.00", "cheapestTier": true, "sourceUrl": "https://ai.google.dev/gemini-api/docs/pricing", "observedAt": "2026-
|
|
995
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "2.00", "output": "12.00", "cachedInput": "0.20", "batchMultiplier": "0.5", "cheapestTier": true, "sourceUrl": "https://ai.google.dev/gemini-api/docs/pricing", "observedAt": "2026-09-07", "notes": ["Google's page does not state when this rate took effect; effectiveFrom is set conservatively to 2026-01-01.", "The page prices prompts >200k tokens higher ($4.00 input / $18.00 output / $0.40 context caching); only the <=200k tier is recorded, since this schema has no context-length dimension.", "batchMultiplier of 0.5 was verified from this model's own Batch rows ($1.00 / $6.00), not from a blanket statement.", "cachedInput is this model's own published context-caching rate. The page also charges a separate per-hour cache storage fee, which this per-token schema does not model.", "batchMultiplier and cachedInput added on 2026-09-07: the page now publishes this model's own Batch and context-caching rows, which were not confirmed per-model on 2026-08-05."] }
|
|
866
996
|
],
|
|
867
|
-
source: { "url": "https://ai.google.dev/gemini-api/docs/pricing", "observedAt": "2026-
|
|
997
|
+
source: { "url": "https://ai.google.dev/gemini-api/docs/pricing", "observedAt": "2026-09-07" }
|
|
868
998
|
},
|
|
869
999
|
{
|
|
870
1000
|
canonicalId: "gemini-3.5-flash",
|
|
@@ -872,9 +1002,9 @@ var MODEL_REGISTRY = [
|
|
|
872
1002
|
aliases: [],
|
|
873
1003
|
family: "gemini-3.5",
|
|
874
1004
|
pricing: [
|
|
875
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "1.50", "output": "9.00", "batchMultiplier": "0.5", "sourceUrl": "https://ai.google.dev/gemini-api/docs/pricing", "observedAt": "2026-
|
|
1005
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "1.50", "output": "9.00", "cachedInput": "0.15", "batchMultiplier": "0.5", "sourceUrl": "https://ai.google.dev/gemini-api/docs/pricing", "observedAt": "2026-09-07", "notes": ["Google's page does not state when this rate took effect; effectiveFrom is set conservatively to 2026-01-01.", "batchMultiplier of 0.5 was verified from this model's own Batch rows ($0.75 / $4.50), not from a blanket statement.", "cachedInput is this model's own published context-caching rate. The page also charges a separate per-hour cache storage fee, which this per-token schema does not model.", "cachedInput added on 2026-09-07: the page now publishes a per-model context-caching rate, which it did not on 2026-08-05."] }
|
|
876
1006
|
],
|
|
877
|
-
source: { "url": "https://ai.google.dev/gemini-api/docs/pricing", "observedAt": "2026-
|
|
1007
|
+
source: { "url": "https://ai.google.dev/gemini-api/docs/pricing", "observedAt": "2026-09-07" }
|
|
878
1008
|
},
|
|
879
1009
|
{
|
|
880
1010
|
canonicalId: "gemini-3.5-flash-lite",
|
|
@@ -882,9 +1012,9 @@ var MODEL_REGISTRY = [
|
|
|
882
1012
|
aliases: [],
|
|
883
1013
|
family: "gemini-3.5",
|
|
884
1014
|
pricing: [
|
|
885
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.30", "output": "2.50", "batchMultiplier": "0.5", "sourceUrl": "https://ai.google.dev/gemini-api/docs/pricing", "observedAt": "2026-
|
|
1015
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.30", "output": "2.50", "batchMultiplier": "0.5", "sourceUrl": "https://ai.google.dev/gemini-api/docs/pricing", "observedAt": "2026-09-07", "notes": ["Google's page does not state when this rate took effect; effectiveFrom is set conservatively to 2026-01-01.", "batchMultiplier of 0.5 was verified from this model's own Batch rows ($0.15 / $1.25), not from a blanket statement.", "No context-caching rate is published for this model; cachedInput is omitted rather than inferred from a sibling model."] }
|
|
886
1016
|
],
|
|
887
|
-
source: { "url": "https://ai.google.dev/gemini-api/docs/pricing", "observedAt": "2026-
|
|
1017
|
+
source: { "url": "https://ai.google.dev/gemini-api/docs/pricing", "observedAt": "2026-09-07" }
|
|
888
1018
|
},
|
|
889
1019
|
{
|
|
890
1020
|
canonicalId: "gemini-3.6-flash",
|
|
@@ -892,9 +1022,33 @@ var MODEL_REGISTRY = [
|
|
|
892
1022
|
aliases: [],
|
|
893
1023
|
family: "gemini-3.6",
|
|
894
1024
|
pricing: [
|
|
895
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "1.50", "output": "7.50", "batchMultiplier": "0.5", "sourceUrl": "https://ai.google.dev/gemini-api/docs/pricing", "observedAt": "2026-
|
|
1025
|
+
{ "effectiveFrom": "2026-01-01", "effectiveTo": "2026-09-07", "currency": "USD", "unit": "per-million-tokens", "input": "1.50", "output": "7.50", "batchMultiplier": "0.5", "sourceUrl": "https://ai.google.dev/gemini-api/docs/pricing", "observedAt": "2026-09-07", "notes": ["Supersedes the single $1.50 / $7.50 period recorded on 2026-08-05. That rate was live then and is scheduled to return on 2027-01-01, so it is kept as a closed historical period rather than deleted.", "Recorded 2026-08-05 at $1.50 / $7.50 with no cachedInput; the page did not then publish a per-model context-caching rate. Closed at the 2026-09-07 observation date, the last date the promotional rate is known not to have applied being 2026-08-05.", "Google's page does not state when this rate took effect; effectiveFrom is set conservatively to 2026-01-01."] },
|
|
1026
|
+
{ "effectiveFrom": "2026-09-07", "effectiveTo": "2027-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.75", "output": "3.75", "cachedInput": "0.075", "batchMultiplier": "0.5", "sourceUrl": "https://ai.google.dev/gemini-api/docs/pricing", "observedAt": "2026-09-07", "notes": ["Promotional rate published as running through 2026-12-31, with the standard rate resuming 2027-01-01 - both dates are stated on the page, so this period's effectiveTo and the next period's effectiveFrom are sourced, not conservative placeholders.", "batchMultiplier of 0.5 was verified from this model's own Batch rows ($0.375 / $1.875 promo, $0.75 / $3.75 standard), not from a blanket statement.", "cachedInput is this model's own published context-caching rate. The page also charges a separate per-hour cache storage fee, which this per-token schema does not model."] },
|
|
1027
|
+
{ "effectiveFrom": "2027-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "1.50", "output": "7.50", "cachedInput": "0.15", "batchMultiplier": "0.5", "sourceUrl": "https://ai.google.dev/gemini-api/docs/pricing", "observedAt": "2026-09-07", "notes": ["Standard rate resuming 2027-01-01, the date the page publishes for the end of the promotional rate.", "batchMultiplier of 0.5 was verified from this model's own Batch rows ($0.375 / $1.875 promo, $0.75 / $3.75 standard), not from a blanket statement.", "cachedInput is this model's own published context-caching rate. The page also charges a separate per-hour cache storage fee, which this per-token schema does not model."] }
|
|
1028
|
+
],
|
|
1029
|
+
source: { "url": "https://ai.google.dev/gemini-api/docs/pricing", "observedAt": "2026-09-07", "notes": ["Three periods: the $1.50/$7.50 rate observed 2026-08-05, the $0.75/$3.75 promotional rate observed 2026-09-07 and published as running through 2026-12-31, then the standard rate resuming 2027-01-01."] }
|
|
1030
|
+
},
|
|
1031
|
+
{
|
|
1032
|
+
canonicalId: "gemini-3.7-flash",
|
|
1033
|
+
provider: "google",
|
|
1034
|
+
aliases: [],
|
|
1035
|
+
family: "gemini-3.7",
|
|
1036
|
+
pricing: [
|
|
1037
|
+
{ "effectiveFrom": "2026-09-07", "effectiveTo": "2027-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.75", "output": "3.75", "cachedInput": "0.075", "batchMultiplier": "0.5", "sourceUrl": "https://ai.google.dev/gemini-api/docs/pricing", "observedAt": "2026-09-07", "notes": ["New model: absent from the pricing page on 2026-08-05, present on 2026-09-07. effectiveFrom is the observation date rather than a backdated guess.", "Promotional rate published as running through 2026-12-31, with the standard rate resuming 2027-01-01 - both dates are stated on the page, so this period's effectiveTo and the next period's effectiveFrom are sourced, not conservative placeholders.", "batchMultiplier of 0.5 was verified from this model's own Batch rows ($0.375 / $1.875 promo, $0.75 / $3.75 standard), not from a blanket statement.", "cachedInput is this model's own published context-caching rate. The page also charges a separate per-hour cache storage fee, which this per-token schema does not model."] },
|
|
1038
|
+
{ "effectiveFrom": "2027-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "1.50", "output": "7.50", "cachedInput": "0.15", "batchMultiplier": "0.5", "sourceUrl": "https://ai.google.dev/gemini-api/docs/pricing", "observedAt": "2026-09-07", "notes": ["Standard rate resuming 2027-01-01, the date the page publishes for the end of the promotional rate.", "batchMultiplier of 0.5 was verified from this model's own Batch rows ($0.375 / $1.875 promo, $0.75 / $3.75 standard), not from a blanket statement.", "cachedInput is this model's own published context-caching rate. The page also charges a separate per-hour cache storage fee, which this per-token schema does not model."] }
|
|
1039
|
+
],
|
|
1040
|
+
source: { "url": "https://ai.google.dev/gemini-api/docs/pricing", "observedAt": "2026-09-07" }
|
|
1041
|
+
},
|
|
1042
|
+
{
|
|
1043
|
+
canonicalId: "gemini-3.8-flash",
|
|
1044
|
+
provider: "google",
|
|
1045
|
+
aliases: [],
|
|
1046
|
+
family: "gemini-3.8",
|
|
1047
|
+
pricing: [
|
|
1048
|
+
{ "effectiveFrom": "2026-09-07", "effectiveTo": "2027-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.75", "output": "3.75", "cachedInput": "0.075", "batchMultiplier": "0.5", "sourceUrl": "https://ai.google.dev/gemini-api/docs/pricing", "observedAt": "2026-09-07", "notes": ["New model: absent from the pricing page on 2026-08-05, present on 2026-09-07. effectiveFrom is the observation date rather than a backdated guess.", "Promotional rate published as running through 2026-12-31, with the standard rate resuming 2027-01-01 - both dates are stated on the page, so this period's effectiveTo and the next period's effectiveFrom are sourced, not conservative placeholders.", "batchMultiplier of 0.5 was verified from this model's own Batch rows ($0.375 / $1.875 promo, $0.75 / $3.75 standard), not from a blanket statement.", "cachedInput is this model's own published context-caching rate. The page also charges a separate per-hour cache storage fee, which this per-token schema does not model."] },
|
|
1049
|
+
{ "effectiveFrom": "2027-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "1.50", "output": "7.50", "cachedInput": "0.15", "batchMultiplier": "0.5", "sourceUrl": "https://ai.google.dev/gemini-api/docs/pricing", "observedAt": "2026-09-07", "notes": ["Standard rate resuming 2027-01-01, the date the page publishes for the end of the promotional rate.", "batchMultiplier of 0.5 was verified from this model's own Batch rows ($0.375 / $1.875 promo, $0.75 / $3.75 standard), not from a blanket statement.", "cachedInput is this model's own published context-caching rate. The page also charges a separate per-hour cache storage fee, which this per-token schema does not model."] }
|
|
896
1050
|
],
|
|
897
|
-
source: { "url": "https://ai.google.dev/gemini-api/docs/pricing", "observedAt": "2026-
|
|
1051
|
+
source: { "url": "https://ai.google.dev/gemini-api/docs/pricing", "observedAt": "2026-09-07" }
|
|
898
1052
|
},
|
|
899
1053
|
{
|
|
900
1054
|
canonicalId: "gpt-oss-120b",
|
|
@@ -902,9 +1056,9 @@ var MODEL_REGISTRY = [
|
|
|
902
1056
|
aliases: [],
|
|
903
1057
|
family: "gpt-oss",
|
|
904
1058
|
pricing: [
|
|
905
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.15", "output": "0.60", "sourceUrl": "https://console.groq.com/docs/models", "observedAt": "2026-
|
|
1059
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.15", "output": "0.60", "sourceUrl": "https://console.groq.com/docs/models", "observedAt": "2026-09-07", "notes": ["Groq's docs page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01.", "No prompt-caching or Batch API discount is documented for Groq in the fetched page.", "OpenAI's open-weight gpt-oss-120b model, hosted independently by Groq under Groq's own rate card (also hosted by Together AI, at the same $0.15/$0.60 rate as observed \u2014 coincidental agreement, not assumed parity).", "Re-confirmed unchanged on 2026-09-07 against the same page."] }
|
|
906
1060
|
],
|
|
907
|
-
source: { "url": "https://console.groq.com/docs/models", "observedAt": "2026-
|
|
1061
|
+
source: { "url": "https://console.groq.com/docs/models", "observedAt": "2026-09-07" }
|
|
908
1062
|
},
|
|
909
1063
|
{
|
|
910
1064
|
canonicalId: "gpt-oss-20b",
|
|
@@ -912,9 +1066,9 @@ var MODEL_REGISTRY = [
|
|
|
912
1066
|
aliases: [],
|
|
913
1067
|
family: "gpt-oss",
|
|
914
1068
|
pricing: [
|
|
915
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.075", "output": "0.30", "sourceUrl": "https://console.groq.com/docs/models", "observedAt": "2026-
|
|
1069
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.075", "output": "0.30", "sourceUrl": "https://console.groq.com/docs/models", "observedAt": "2026-09-07", "notes": ["Groq's docs page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01.", "No prompt-caching or Batch API discount is documented for Groq in the fetched page.", "Also hosted by Together AI at a different rate ($0.05/$0.20 as observed) \u2014 each host prices it independently; do not assume parity.", "Re-confirmed unchanged on 2026-09-07 against the same page."] }
|
|
916
1070
|
],
|
|
917
|
-
source: { "url": "https://console.groq.com/docs/models", "observedAt": "2026-
|
|
1071
|
+
source: { "url": "https://console.groq.com/docs/models", "observedAt": "2026-09-07" }
|
|
918
1072
|
},
|
|
919
1073
|
{
|
|
920
1074
|
canonicalId: "llama-3.1-8b-instant",
|
|
@@ -922,7 +1076,7 @@ var MODEL_REGISTRY = [
|
|
|
922
1076
|
aliases: ["llama-3.1-8b"],
|
|
923
1077
|
family: "llama-3.1",
|
|
924
1078
|
pricing: [
|
|
925
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.05", "output": "0.08", "sourceUrl": "https://console.groq.com/docs/models", "observedAt": "2026-08-05", "notes": ["Groq's docs page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01.", "No prompt-caching or Batch API discount is documented for Groq in the fetched page, so cachedInput and batchMultiplier are omitted rather than assumed."] }
|
|
1079
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.05", "output": "0.08", "sourceUrl": "https://console.groq.com/docs/models", "observedAt": "2026-08-05", "notes": ["Groq's docs page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01.", "No prompt-caching or Batch API discount is documented for Groq in the fetched page, so cachedInput and batchMultiplier are omitted rather than assumed.", "Not surfaced by the 2026-09-07 fetch of the same page, which listed only the gpt-oss and Qwen models with per-token prices. observedAt is deliberately left at 2026-08-05: the rate was not re-observed, and an absence in one page fetch is not evidence of a withdrawal. Re-check before relying on this entry."] }
|
|
926
1080
|
],
|
|
927
1081
|
source: { "url": "https://console.groq.com/docs/models", "observedAt": "2026-08-05" }
|
|
928
1082
|
},
|
|
@@ -932,7 +1086,7 @@ var MODEL_REGISTRY = [
|
|
|
932
1086
|
aliases: ["llama-3.3-70b"],
|
|
933
1087
|
family: "llama-3.3",
|
|
934
1088
|
pricing: [
|
|
935
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.59", "output": "0.79", "sourceUrl": "https://console.groq.com/docs/models", "observedAt": "2026-08-05", "notes": ["Groq's docs page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01.", "No prompt-caching or Batch API discount is documented for Groq in the fetched page, so cachedInput and batchMultiplier are omitted rather than assumed.", "This is Groq's own hosted rate for the same open-weight model Together AI also hosts (see together.json's llama-3.3-70b at a different, higher price) and AWS Bedrock resells \u2014 each host prices it independently; do not assume parity."] }
|
|
1089
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.59", "output": "0.79", "sourceUrl": "https://console.groq.com/docs/models", "observedAt": "2026-08-05", "notes": ["Groq's docs page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01.", "No prompt-caching or Batch API discount is documented for Groq in the fetched page, so cachedInput and batchMultiplier are omitted rather than assumed.", "This is Groq's own hosted rate for the same open-weight model Together AI also hosts (see together.json's llama-3.3-70b at a different, higher price) and AWS Bedrock resells \u2014 each host prices it independently; do not assume parity.", "Not surfaced by the 2026-09-07 fetch of the same page, which listed only the gpt-oss and Qwen models with per-token prices. observedAt is deliberately left at 2026-08-05: the rate was not re-observed, and an absence in one page fetch is not evidence of a withdrawal. Re-check before relying on this entry."] }
|
|
936
1090
|
],
|
|
937
1091
|
source: { "url": "https://console.groq.com/docs/models", "observedAt": "2026-08-05" }
|
|
938
1092
|
},
|
|
@@ -942,19 +1096,29 @@ var MODEL_REGISTRY = [
|
|
|
942
1096
|
aliases: [],
|
|
943
1097
|
family: "qwen",
|
|
944
1098
|
pricing: [
|
|
945
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.60", "output": "3.00", "sourceUrl": "https://console.groq.com/docs/models", "observedAt": "2026-
|
|
1099
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.60", "output": "3.00", "sourceUrl": "https://console.groq.com/docs/models", "observedAt": "2026-09-07", "notes": [`Listed under Groq's "Preview" models section, not "Production" \u2014 preview models on Groq are explicitly subject to change or removal without notice. Included because a real price was published, but treat this one as less stable than the production-tier entries in this file.`, "Groq's docs page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01.", "Re-confirmed unchanged on 2026-09-07 against the same page."] }
|
|
946
1100
|
],
|
|
947
|
-
source: { "url": "https://console.groq.com/docs/models", "observedAt": "2026-
|
|
1101
|
+
source: { "url": "https://console.groq.com/docs/models", "observedAt": "2026-09-07" }
|
|
1102
|
+
},
|
|
1103
|
+
{
|
|
1104
|
+
canonicalId: "qwen3.8-27b",
|
|
1105
|
+
provider: "groq",
|
|
1106
|
+
aliases: ["qwen/qwen3.8-27b"],
|
|
1107
|
+
family: "qwen3.8",
|
|
1108
|
+
pricing: [
|
|
1109
|
+
{ "effectiveFrom": "2026-09-07", "currency": "USD", "unit": "per-million-tokens", "input": "0.80", "output": "4.00", "sourceUrl": "https://console.groq.com/docs/models", "observedAt": "2026-09-07", "notes": ["New model: absent from this page on 2026-08-05, present on 2026-09-07. effectiveFrom is the observation date rather than this file's conservative 2026-01-01, since the earlier fetch proves it was not listed then.", "Marked Preview on Groq's page - less stable than a Production model, and its price may move accordingly.", "No cached-input rate and no batch discount are published for Groq models; both fields are omitted rather than guessed."] }
|
|
1110
|
+
],
|
|
1111
|
+
source: { "url": "https://console.groq.com/docs/models", "observedAt": "2026-09-07" }
|
|
948
1112
|
},
|
|
949
1113
|
{
|
|
950
1114
|
canonicalId: "codestral",
|
|
951
1115
|
provider: "mistral",
|
|
952
|
-
aliases: [],
|
|
1116
|
+
aliases: ["codestral-latest"],
|
|
953
1117
|
family: "codestral",
|
|
954
1118
|
pricing: [
|
|
955
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.30", "output": "0.90", "sourceUrl": "https://mistral.ai/pricing/api", "observedAt": "2026-
|
|
1119
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.30", "output": "0.90", "sourceUrl": "https://mistral.ai/pricing/api", "observedAt": "2026-09-07", "notes": ["Mistral's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01.", "Re-confirmed unchanged on 2026-09-07 against the same page, which prints the API id as 'codestral-latest' (recorded as an alias)."] }
|
|
956
1120
|
],
|
|
957
|
-
source: { "url": "https://mistral.ai/pricing/api", "observedAt": "2026-
|
|
1121
|
+
source: { "url": "https://mistral.ai/pricing/api", "observedAt": "2026-09-07" }
|
|
958
1122
|
},
|
|
959
1123
|
{
|
|
960
1124
|
canonicalId: "devstral-2",
|
|
@@ -962,7 +1126,7 @@ var MODEL_REGISTRY = [
|
|
|
962
1126
|
aliases: [],
|
|
963
1127
|
family: "devstral",
|
|
964
1128
|
pricing: [
|
|
965
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.40", "output": "2.00", "sourceUrl": "https://mistral.ai/pricing/api", "observedAt": "2026-08-05", "notes": ["Mistral's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01."] }
|
|
1129
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.40", "output": "2.00", "sourceUrl": "https://mistral.ai/pricing/api", "observedAt": "2026-08-05", "notes": ["Mistral's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01.", "Not surfaced by the 2026-09-07 fetch of the same page, which listed only the Medium/Small/Large, Ministral, Codestral, embedding and third-party GLM entries. observedAt is deliberately left at 2026-08-05: the rate was not re-observed, and an absence in one page fetch is not evidence of a withdrawal. Re-check before relying on this entry."] }
|
|
966
1130
|
],
|
|
967
1131
|
source: { "url": "https://mistral.ai/pricing/api", "observedAt": "2026-08-05" }
|
|
968
1132
|
},
|
|
@@ -972,7 +1136,7 @@ var MODEL_REGISTRY = [
|
|
|
972
1136
|
aliases: [],
|
|
973
1137
|
family: "devstral",
|
|
974
1138
|
pricing: [
|
|
975
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.10", "output": "0.30", "sourceUrl": "https://mistral.ai/pricing/api", "observedAt": "2026-08-05", "notes": ["Mistral's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01."] }
|
|
1139
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.10", "output": "0.30", "sourceUrl": "https://mistral.ai/pricing/api", "observedAt": "2026-08-05", "notes": ["Mistral's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01.", "Not surfaced by the 2026-09-07 fetch of the same page, which listed only the Medium/Small/Large, Ministral, Codestral, embedding and third-party GLM entries. observedAt is deliberately left at 2026-08-05: the rate was not re-observed, and an absence in one page fetch is not evidence of a withdrawal. Re-check before relying on this entry."] }
|
|
976
1140
|
],
|
|
977
1141
|
source: { "url": "https://mistral.ai/pricing/api", "observedAt": "2026-08-05" }
|
|
978
1142
|
},
|
|
@@ -982,7 +1146,7 @@ var MODEL_REGISTRY = [
|
|
|
982
1146
|
aliases: [],
|
|
983
1147
|
family: "magistral",
|
|
984
1148
|
pricing: [
|
|
985
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "2.00", "output": "5.00", "sourceUrl": "https://mistral.ai/pricing/api", "observedAt": "2026-08-05", "notes": ["Mistral's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01.", 'Listed as a reasoning model on the pricing page; no separate "reasoning" surcharge is published, so the reasoning field is omitted.'] }
|
|
1149
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "2.00", "output": "5.00", "sourceUrl": "https://mistral.ai/pricing/api", "observedAt": "2026-08-05", "notes": ["Mistral's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01.", 'Listed as a reasoning model on the pricing page; no separate "reasoning" surcharge is published, so the reasoning field is omitted.', "Not surfaced by the 2026-09-07 fetch of the same page, which listed only the Medium/Small/Large, Ministral, Codestral, embedding and third-party GLM entries. observedAt is deliberately left at 2026-08-05: the rate was not re-observed, and an absence in one page fetch is not evidence of a withdrawal. Re-check before relying on this entry."] }
|
|
986
1150
|
],
|
|
987
1151
|
source: { "url": "https://mistral.ai/pricing/api", "observedAt": "2026-08-05" }
|
|
988
1152
|
},
|
|
@@ -992,59 +1156,59 @@ var MODEL_REGISTRY = [
|
|
|
992
1156
|
aliases: [],
|
|
993
1157
|
family: "magistral",
|
|
994
1158
|
pricing: [
|
|
995
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.50", "output": "1.50", "sourceUrl": "https://mistral.ai/pricing/api", "observedAt": "2026-08-05", "notes": ["Mistral's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01."] }
|
|
1159
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.50", "output": "1.50", "sourceUrl": "https://mistral.ai/pricing/api", "observedAt": "2026-08-05", "notes": ["Mistral's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01.", "Not surfaced by the 2026-09-07 fetch of the same page, which listed only the Medium/Small/Large, Ministral, Codestral, embedding and third-party GLM entries. observedAt is deliberately left at 2026-08-05: the rate was not re-observed, and an absence in one page fetch is not evidence of a withdrawal. Re-check before relying on this entry."] }
|
|
996
1160
|
],
|
|
997
1161
|
source: { "url": "https://mistral.ai/pricing/api", "observedAt": "2026-08-05" }
|
|
998
1162
|
},
|
|
999
1163
|
{
|
|
1000
1164
|
canonicalId: "ministral-3-14b",
|
|
1001
1165
|
provider: "mistral",
|
|
1002
|
-
aliases: [],
|
|
1166
|
+
aliases: ["ministral-14b-latest"],
|
|
1003
1167
|
family: "ministral-3",
|
|
1004
1168
|
pricing: [
|
|
1005
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.20", "output": "0.20", "sourceUrl": "https://mistral.ai/pricing/api", "observedAt": "2026-
|
|
1169
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.20", "output": "0.20", "sourceUrl": "https://mistral.ai/pricing/api", "observedAt": "2026-09-07", "notes": ["Mistral's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01.", `AWS Bedrock resells a "Ministral 14B 3.0" at the same $0.20/$0.20 figure as independently observed on Bedrock's pricing page \u2014 likely the same model, coincidental agreement not assumed; Bedrock's variant was not added to aws-bedrock.json in this pass since the version suffix ("3.0") was not cross-checked against this "ministral-3-14b" naming.`, "Re-confirmed unchanged on 2026-09-07 against the same page, which prints the API id as 'ministral-14b-latest' (recorded as an alias)."] }
|
|
1006
1170
|
],
|
|
1007
|
-
source: { "url": "https://mistral.ai/pricing/api", "observedAt": "2026-
|
|
1171
|
+
source: { "url": "https://mistral.ai/pricing/api", "observedAt": "2026-09-07" }
|
|
1008
1172
|
},
|
|
1009
1173
|
{
|
|
1010
1174
|
canonicalId: "ministral-3-3b",
|
|
1011
1175
|
provider: "mistral",
|
|
1012
|
-
aliases: [],
|
|
1176
|
+
aliases: ["ministral-3b-latest"],
|
|
1013
1177
|
family: "ministral-3",
|
|
1014
1178
|
pricing: [
|
|
1015
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.10", "output": "0.10", "sourceUrl": "https://mistral.ai/pricing/api", "observedAt": "2026-
|
|
1179
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.10", "output": "0.10", "sourceUrl": "https://mistral.ai/pricing/api", "observedAt": "2026-09-07", "notes": ["Mistral's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01.", "Re-confirmed unchanged on 2026-09-07 against the same page, which prints the API id as 'ministral-3b-latest' (recorded as an alias)."] }
|
|
1016
1180
|
],
|
|
1017
|
-
source: { "url": "https://mistral.ai/pricing/api", "observedAt": "2026-
|
|
1181
|
+
source: { "url": "https://mistral.ai/pricing/api", "observedAt": "2026-09-07" }
|
|
1018
1182
|
},
|
|
1019
1183
|
{
|
|
1020
1184
|
canonicalId: "ministral-3-8b",
|
|
1021
1185
|
provider: "mistral",
|
|
1022
|
-
aliases: [],
|
|
1186
|
+
aliases: ["ministral-8b-latest"],
|
|
1023
1187
|
family: "ministral-3",
|
|
1024
1188
|
pricing: [
|
|
1025
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.15", "output": "0.15", "sourceUrl": "https://mistral.ai/pricing/api", "observedAt": "2026-
|
|
1189
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.15", "output": "0.15", "sourceUrl": "https://mistral.ai/pricing/api", "observedAt": "2026-09-07", "notes": ["Mistral's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01.", "Re-confirmed unchanged on 2026-09-07 against the same page, which prints the API id as 'ministral-8b-latest' (recorded as an alias)."] }
|
|
1026
1190
|
],
|
|
1027
|
-
source: { "url": "https://mistral.ai/pricing/api", "observedAt": "2026-
|
|
1191
|
+
source: { "url": "https://mistral.ai/pricing/api", "observedAt": "2026-09-07" }
|
|
1028
1192
|
},
|
|
1029
1193
|
{
|
|
1030
1194
|
canonicalId: "mistral-large-3",
|
|
1031
1195
|
provider: "mistral",
|
|
1032
|
-
aliases: [],
|
|
1196
|
+
aliases: ["mistral-large-latest"],
|
|
1033
1197
|
family: "mistral-large",
|
|
1034
1198
|
pricing: [
|
|
1035
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.50", "output": "1.50", "sourceUrl": "https://mistral.ai/pricing/api", "observedAt": "2026-
|
|
1199
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.50", "output": "1.50", "cachedInput": "0.05", "batchMultiplier": "0.5", "sourceUrl": "https://mistral.ai/pricing/api", "observedAt": "2026-09-07", "notes": ["Mistral's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01.", `This is Mistral's own first-party rate. AWS Bedrock also resells "Mistral Large 3" under its own rate card at the same $0.50/$1.50 figure as independently observed on Bedrock's pricing page \u2014 coincidental agreement between the two sources, not assumed; see aws-bedrock.json.`, "Re-confirmed unchanged on 2026-09-07 against the same page, which prints the API id as 'mistral-large-latest' (recorded as an alias).", `cachedInput and batchMultiplier added on 2026-09-07: the page publishes "Cached input: 90% discount" and "Batch: 50% discount" for this model, so cachedInput is 0.1x this model's own input rate (0.50 -> 0.05), computed as an exact decimal, and batchMultiplier is 0.5. Both come from this model's own row, not from a sibling's rate.`] }
|
|
1036
1200
|
],
|
|
1037
|
-
source: { "url": "https://mistral.ai/pricing/api", "observedAt": "2026-
|
|
1201
|
+
source: { "url": "https://mistral.ai/pricing/api", "observedAt": "2026-09-07" }
|
|
1038
1202
|
},
|
|
1039
1203
|
{
|
|
1040
1204
|
canonicalId: "mistral-medium-3.5",
|
|
1041
1205
|
provider: "mistral",
|
|
1042
|
-
aliases: [],
|
|
1206
|
+
aliases: ["mistral-medium-latest"],
|
|
1043
1207
|
family: "mistral-medium",
|
|
1044
1208
|
pricing: [
|
|
1045
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "1.50", "output": "7.50", "sourceUrl": "https://mistral.ai/pricing/api", "observedAt": "2026-
|
|
1209
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "1.50", "output": "7.50", "cachedInput": "0.15", "batchMultiplier": "0.5", "sourceUrl": "https://mistral.ai/pricing/api", "observedAt": "2026-09-07", "notes": ["Mistral's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01.", "No cachedInput or batchMultiplier is documented on the fetched page for this model; omitted rather than assumed.", "Re-confirmed unchanged on 2026-09-07 against the same page, which prints the API id as 'mistral-medium-latest' (recorded as an alias).", `cachedInput and batchMultiplier added on 2026-09-07: the page publishes "Cached input: 90% discount" and "Batch: 50% discount" for this model, so cachedInput is 0.1x this model's own input rate (1.50 -> 0.15), computed as an exact decimal, and batchMultiplier is 0.5. Both come from this model's own row, not from a sibling's rate.`] }
|
|
1046
1210
|
],
|
|
1047
|
-
source: { "url": "https://mistral.ai/pricing/api", "observedAt": "2026-
|
|
1211
|
+
source: { "url": "https://mistral.ai/pricing/api", "observedAt": "2026-09-07" }
|
|
1048
1212
|
},
|
|
1049
1213
|
{
|
|
1050
1214
|
canonicalId: "mistral-nemo",
|
|
@@ -1052,19 +1216,19 @@ var MODEL_REGISTRY = [
|
|
|
1052
1216
|
aliases: [],
|
|
1053
1217
|
family: "mistral-nemo",
|
|
1054
1218
|
pricing: [
|
|
1055
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.15", "output": "0.15", "sourceUrl": "https://mistral.ai/pricing/api", "observedAt": "2026-08-05", "notes": ["Mistral's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01.", "An older model generation still listed with a live price on the current pricing page as fetched; included because it is confidently sourced, not because it is a current flagship."] }
|
|
1219
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.15", "output": "0.15", "sourceUrl": "https://mistral.ai/pricing/api", "observedAt": "2026-08-05", "notes": ["Mistral's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01.", "An older model generation still listed with a live price on the current pricing page as fetched; included because it is confidently sourced, not because it is a current flagship.", "Not surfaced by the 2026-09-07 fetch of the same page, which listed only the Medium/Small/Large, Ministral, Codestral, embedding and third-party GLM entries. observedAt is deliberately left at 2026-08-05: the rate was not re-observed, and an absence in one page fetch is not evidence of a withdrawal. Re-check before relying on this entry."] }
|
|
1056
1220
|
],
|
|
1057
1221
|
source: { "url": "https://mistral.ai/pricing/api", "observedAt": "2026-08-05" }
|
|
1058
1222
|
},
|
|
1059
1223
|
{
|
|
1060
1224
|
canonicalId: "mistral-small-4",
|
|
1061
1225
|
provider: "mistral",
|
|
1062
|
-
aliases: [],
|
|
1226
|
+
aliases: ["mistral-small-latest"],
|
|
1063
1227
|
family: "mistral-small",
|
|
1064
1228
|
pricing: [
|
|
1065
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.15", "output": "0.60", "sourceUrl": "https://mistral.ai/pricing/api", "observedAt": "2026-
|
|
1229
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.15", "output": "0.60", "cachedInput": "0.015", "batchMultiplier": "0.5", "sourceUrl": "https://mistral.ai/pricing/api", "observedAt": "2026-09-07", "notes": ["Mistral's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01.", "Re-confirmed unchanged on 2026-09-07 against the same page, which prints the API id as 'mistral-small-latest' (recorded as an alias).", `cachedInput and batchMultiplier added on 2026-09-07: the page publishes "Cached input: 90% discount" and "Batch: 50% discount" for this model, so cachedInput is 0.1x this model's own input rate (0.15 -> 0.015), computed as an exact decimal, and batchMultiplier is 0.5. Both come from this model's own row, not from a sibling's rate.`] }
|
|
1066
1230
|
],
|
|
1067
|
-
source: { "url": "https://mistral.ai/pricing/api", "observedAt": "2026-
|
|
1231
|
+
source: { "url": "https://mistral.ai/pricing/api", "observedAt": "2026-09-07" }
|
|
1068
1232
|
},
|
|
1069
1233
|
{
|
|
1070
1234
|
canonicalId: "mixtral-8x22b",
|
|
@@ -1072,7 +1236,7 @@ var MODEL_REGISTRY = [
|
|
|
1072
1236
|
aliases: [],
|
|
1073
1237
|
family: "mixtral",
|
|
1074
1238
|
pricing: [
|
|
1075
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "2.00", "output": "6.00", "sourceUrl": "https://mistral.ai/pricing/api", "observedAt": "2026-08-05", "notes": ["Mistral's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01.", "An older model generation still listed with a live price on the current pricing page as fetched."] }
|
|
1239
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "2.00", "output": "6.00", "sourceUrl": "https://mistral.ai/pricing/api", "observedAt": "2026-08-05", "notes": ["Mistral's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01.", "An older model generation still listed with a live price on the current pricing page as fetched.", "Not surfaced by the 2026-09-07 fetch of the same page, which listed only the Medium/Small/Large, Ministral, Codestral, embedding and third-party GLM entries. observedAt is deliberately left at 2026-08-05: the rate was not re-observed, and an absence in one page fetch is not evidence of a withdrawal. Re-check before relying on this entry."] }
|
|
1076
1240
|
],
|
|
1077
1241
|
source: { "url": "https://mistral.ai/pricing/api", "observedAt": "2026-08-05" }
|
|
1078
1242
|
},
|
|
@@ -1082,19 +1246,29 @@ var MODEL_REGISTRY = [
|
|
|
1082
1246
|
aliases: [],
|
|
1083
1247
|
family: "mixtral",
|
|
1084
1248
|
pricing: [
|
|
1085
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.70", "output": "0.70", "sourceUrl": "https://mistral.ai/pricing/api", "observedAt": "2026-08-05", "notes": ["Mistral's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01.", "An older model generation still listed with a live price on the current pricing page as fetched."] }
|
|
1249
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.70", "output": "0.70", "sourceUrl": "https://mistral.ai/pricing/api", "observedAt": "2026-08-05", "notes": ["Mistral's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01.", "An older model generation still listed with a live price on the current pricing page as fetched.", "Not surfaced by the 2026-09-07 fetch of the same page, which listed only the Medium/Small/Large, Ministral, Codestral, embedding and third-party GLM entries. observedAt is deliberately left at 2026-08-05: the rate was not re-observed, and an absence in one page fetch is not evidence of a withdrawal. Re-check before relying on this entry."] }
|
|
1086
1250
|
],
|
|
1087
1251
|
source: { "url": "https://mistral.ai/pricing/api", "observedAt": "2026-08-05" }
|
|
1088
1252
|
},
|
|
1253
|
+
{
|
|
1254
|
+
canonicalId: "zai-glm-5-2",
|
|
1255
|
+
provider: "mistral",
|
|
1256
|
+
aliases: [],
|
|
1257
|
+
family: "glm",
|
|
1258
|
+
pricing: [
|
|
1259
|
+
{ "effectiveFrom": "2026-09-07", "currency": "USD", "unit": "per-million-tokens", "input": "1.40", "output": "4.40", "cachedInput": "0.14", "sourceUrl": "https://mistral.ai/pricing/api", "observedAt": "2026-09-07", "notes": ["New entry: absent from this page on 2026-08-05, present on 2026-09-07. effectiveFrom is the observation date rather than this file's conservative 2026-01-01.", `Listed under "Third-Party Models" on Mistral's own pricing page - a Z.ai GLM model resold through La Plateforme, so this is Mistral's resale rate, not Z.ai's first-party rate.`, "All three rates are printed per-model on the page. No batch discount is stated for the third-party section, so batchMultiplier is omitted rather than assumed from the first-party models' 50%."] }
|
|
1260
|
+
],
|
|
1261
|
+
source: { "url": "https://mistral.ai/pricing/api", "observedAt": "2026-09-07" }
|
|
1262
|
+
},
|
|
1089
1263
|
{
|
|
1090
1264
|
canonicalId: "gpt-3.5-turbo",
|
|
1091
1265
|
provider: "openai",
|
|
1092
1266
|
aliases: [],
|
|
1093
1267
|
family: "gpt-3.5",
|
|
1094
1268
|
pricing: [
|
|
1095
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.50", "output": "1.50", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1269
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.50", "output": "1.50", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07", "notes": ["Found on https://developers.openai.com/api/docs/pricing during a second confirmation pass.", "No cached-input rate is published for gpt-3.5-turbo on the current pricing page; cachedInput is intentionally omitted rather than guessed.", "OpenAI's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01 pending confirmation of the true rollout date.", `batchMultiplier is "0.5" per the pricing page's Batch API section, which states the 50% saving "applies to all text models listed above in the Standard table" - an explicit all-model statement, so the pro tiers are covered too.`] }
|
|
1096
1270
|
],
|
|
1097
|
-
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1271
|
+
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07" }
|
|
1098
1272
|
},
|
|
1099
1273
|
{
|
|
1100
1274
|
canonicalId: "gpt-4.1",
|
|
@@ -1102,9 +1276,9 @@ var MODEL_REGISTRY = [
|
|
|
1102
1276
|
aliases: [],
|
|
1103
1277
|
family: "gpt-4.1",
|
|
1104
1278
|
pricing: [
|
|
1105
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "2.00", "output": "8.00", "cachedInput": "0.50", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1279
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "2.00", "output": "8.00", "cachedInput": "0.50", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07", "notes": ["OpenAI's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01 pending confirmation of the true rollout date.", "batchMultiplier reflects OpenAI's general Batch API policy as stated on the pricing page; not independently confirmed per-model."] }
|
|
1106
1280
|
],
|
|
1107
|
-
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1281
|
+
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07" }
|
|
1108
1282
|
},
|
|
1109
1283
|
{
|
|
1110
1284
|
canonicalId: "gpt-4.1-mini",
|
|
@@ -1112,9 +1286,9 @@ var MODEL_REGISTRY = [
|
|
|
1112
1286
|
aliases: [],
|
|
1113
1287
|
family: "gpt-4.1",
|
|
1114
1288
|
pricing: [
|
|
1115
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.40", "output": "1.60", "cachedInput": "0.10", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1289
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.40", "output": "1.60", "cachedInput": "0.10", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07", "notes": ["OpenAI's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01 pending confirmation of the true rollout date.", "batchMultiplier reflects OpenAI's general Batch API policy as stated on the pricing page; not independently confirmed per-model."] }
|
|
1116
1290
|
],
|
|
1117
|
-
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1291
|
+
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07" }
|
|
1118
1292
|
},
|
|
1119
1293
|
{
|
|
1120
1294
|
canonicalId: "gpt-4.1-nano",
|
|
@@ -1122,9 +1296,9 @@ var MODEL_REGISTRY = [
|
|
|
1122
1296
|
aliases: [],
|
|
1123
1297
|
family: "gpt-4.1",
|
|
1124
1298
|
pricing: [
|
|
1125
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.10", "output": "0.40", "cachedInput": "0.025", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1299
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.10", "output": "0.40", "cachedInput": "0.025", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07", "notes": ["OpenAI's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01 pending confirmation of the true rollout date.", "batchMultiplier reflects OpenAI's general Batch API policy as stated on the pricing page; not independently confirmed per-model."] }
|
|
1126
1300
|
],
|
|
1127
|
-
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1301
|
+
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07" }
|
|
1128
1302
|
},
|
|
1129
1303
|
{
|
|
1130
1304
|
canonicalId: "gpt-4o",
|
|
@@ -1132,9 +1306,9 @@ var MODEL_REGISTRY = [
|
|
|
1132
1306
|
aliases: [],
|
|
1133
1307
|
family: "gpt-4o",
|
|
1134
1308
|
pricing: [
|
|
1135
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "2.50", "output": "10.00", "cachedInput": "1.25", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1309
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "2.50", "output": "10.00", "cachedInput": "1.25", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07", "notes": ["OpenAI's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01 pending confirmation of the true rollout date.", "batchMultiplier reflects OpenAI's general Batch API policy as stated on the pricing page; not independently confirmed per-model."] }
|
|
1136
1310
|
],
|
|
1137
|
-
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1311
|
+
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07" }
|
|
1138
1312
|
},
|
|
1139
1313
|
{
|
|
1140
1314
|
canonicalId: "gpt-4o-mini",
|
|
@@ -1142,9 +1316,9 @@ var MODEL_REGISTRY = [
|
|
|
1142
1316
|
aliases: [],
|
|
1143
1317
|
family: "gpt-4o",
|
|
1144
1318
|
pricing: [
|
|
1145
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.15", "output": "0.60", "cachedInput": "0.075", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1319
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.15", "output": "0.60", "cachedInput": "0.075", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07", "notes": ["OpenAI's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01 pending confirmation of the true rollout date.", "batchMultiplier reflects OpenAI's general Batch API policy as stated on the pricing page; not independently confirmed per-model."] }
|
|
1146
1320
|
],
|
|
1147
|
-
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1321
|
+
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07" }
|
|
1148
1322
|
},
|
|
1149
1323
|
{
|
|
1150
1324
|
canonicalId: "gpt-5",
|
|
@@ -1152,9 +1326,9 @@ var MODEL_REGISTRY = [
|
|
|
1152
1326
|
aliases: [],
|
|
1153
1327
|
family: "gpt-5",
|
|
1154
1328
|
pricing: [
|
|
1155
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "1.25", "output": "10.00", "cachedInput": "0.125", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1329
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "1.25", "output": "10.00", "cachedInput": "0.125", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07", "notes": ["OpenAI's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01 pending confirmation of the true rollout date.", "batchMultiplier reflects OpenAI's general Batch API policy as stated on the pricing page; not independently confirmed per-model.", "Lead-supplied verified table (observed 2026-08-05) matches this rate exactly; independently re-confirmed against https://developers.openai.com/api/docs/pricing on the same date."] }
|
|
1156
1330
|
],
|
|
1157
|
-
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1331
|
+
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07" }
|
|
1158
1332
|
},
|
|
1159
1333
|
{
|
|
1160
1334
|
canonicalId: "gpt-5-mini",
|
|
@@ -1162,9 +1336,9 @@ var MODEL_REGISTRY = [
|
|
|
1162
1336
|
aliases: [],
|
|
1163
1337
|
family: "gpt-5",
|
|
1164
1338
|
pricing: [
|
|
1165
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.25", "output": "2.00", "cachedInput": "0.025", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1339
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.25", "output": "2.00", "cachedInput": "0.025", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07", "notes": ["OpenAI's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01 pending confirmation of the true rollout date.", "batchMultiplier reflects OpenAI's general Batch API policy as stated on the pricing page; not independently confirmed per-model."] }
|
|
1166
1340
|
],
|
|
1167
|
-
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1341
|
+
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07" }
|
|
1168
1342
|
},
|
|
1169
1343
|
{
|
|
1170
1344
|
canonicalId: "gpt-5-nano",
|
|
@@ -1172,9 +1346,9 @@ var MODEL_REGISTRY = [
|
|
|
1172
1346
|
aliases: [],
|
|
1173
1347
|
family: "gpt-5",
|
|
1174
1348
|
pricing: [
|
|
1175
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.05", "output": "0.40", "cachedInput": "0.005", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1349
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.05", "output": "0.40", "cachedInput": "0.005", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07", "notes": ["OpenAI's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01 pending confirmation of the true rollout date.", "batchMultiplier reflects OpenAI's general Batch API policy as stated on the pricing page; not independently confirmed per-model."] }
|
|
1176
1350
|
],
|
|
1177
|
-
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1351
|
+
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07" }
|
|
1178
1352
|
},
|
|
1179
1353
|
{
|
|
1180
1354
|
canonicalId: "gpt-5-pro",
|
|
@@ -1182,9 +1356,9 @@ var MODEL_REGISTRY = [
|
|
|
1182
1356
|
aliases: [],
|
|
1183
1357
|
family: "gpt-5",
|
|
1184
1358
|
pricing: [
|
|
1185
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "15.00", "output": "120.00", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1359
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "15.00", "output": "120.00", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07", "notes": ['No cached-input rate is published for gpt-5-pro (shown as "\u2014"); cachedInput is intentionally omitted rather than guessed.', "OpenAI's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01 pending confirmation of the true rollout date.", `batchMultiplier is "0.5" per the pricing page's Batch API section, which states the 50% saving "applies to all text models listed above in the Standard table" - an explicit all-model statement, so the pro tiers are covered too.`] }
|
|
1186
1360
|
],
|
|
1187
|
-
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1361
|
+
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07" }
|
|
1188
1362
|
},
|
|
1189
1363
|
{
|
|
1190
1364
|
canonicalId: "gpt-5.1",
|
|
@@ -1192,9 +1366,9 @@ var MODEL_REGISTRY = [
|
|
|
1192
1366
|
aliases: [],
|
|
1193
1367
|
family: "gpt-5.1",
|
|
1194
1368
|
pricing: [
|
|
1195
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "1.25", "output": "10.00", "cachedInput": "0.125", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1369
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "1.25", "output": "10.00", "cachedInput": "0.125", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07", "notes": ["OpenAI's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01 pending confirmation of the true rollout date.", "batchMultiplier reflects OpenAI's general Batch API policy as stated on the pricing page; not independently confirmed per-model."] }
|
|
1196
1370
|
],
|
|
1197
|
-
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1371
|
+
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07" }
|
|
1198
1372
|
},
|
|
1199
1373
|
{
|
|
1200
1374
|
canonicalId: "gpt-5.2",
|
|
@@ -1202,9 +1376,9 @@ var MODEL_REGISTRY = [
|
|
|
1202
1376
|
aliases: [],
|
|
1203
1377
|
family: "gpt-5.2",
|
|
1204
1378
|
pricing: [
|
|
1205
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "1.75", "output": "14.00", "cachedInput": "0.175", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1379
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "1.75", "output": "14.00", "cachedInput": "0.175", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07", "notes": ["OpenAI's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01 pending confirmation of the true rollout date.", "batchMultiplier reflects OpenAI's general Batch API policy as stated on the pricing page; not independently confirmed per-model."] }
|
|
1206
1380
|
],
|
|
1207
|
-
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1381
|
+
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07" }
|
|
1208
1382
|
},
|
|
1209
1383
|
{
|
|
1210
1384
|
canonicalId: "gpt-5.2-pro",
|
|
@@ -1212,9 +1386,9 @@ var MODEL_REGISTRY = [
|
|
|
1212
1386
|
aliases: [],
|
|
1213
1387
|
family: "gpt-5.2",
|
|
1214
1388
|
pricing: [
|
|
1215
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "21.00", "output": "168.00", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1389
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "21.00", "output": "168.00", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07", "notes": ['No cached-input rate is published for gpt-5.2-pro (shown as "\u2014"); cachedInput is intentionally omitted rather than guessed.', "OpenAI's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01 pending confirmation of the true rollout date.", `batchMultiplier is "0.5" per the pricing page's Batch API section, which states the 50% saving "applies to all text models listed above in the Standard table" - an explicit all-model statement, so the pro tiers are covered too.`] }
|
|
1216
1390
|
],
|
|
1217
|
-
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1391
|
+
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07" }
|
|
1218
1392
|
},
|
|
1219
1393
|
{
|
|
1220
1394
|
canonicalId: "gpt-5.4",
|
|
@@ -1222,9 +1396,9 @@ var MODEL_REGISTRY = [
|
|
|
1222
1396
|
aliases: [],
|
|
1223
1397
|
family: "gpt-5.4",
|
|
1224
1398
|
pricing: [
|
|
1225
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "2.50", "output": "15.00", "cachedInput": "0.25", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1399
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "2.50", "output": "15.00", "cachedInput": "0.25", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07", "notes": ["OpenAI's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01 pending confirmation of the true rollout date.", "batchMultiplier reflects OpenAI's general Batch API policy as stated on the pricing page; not independently confirmed per-model.", 'The pricing page qualifies this rate as the "<272K" context tier. A higher tier above 272K tokens is implied by that label but no rate for it was published in the fetched table, and this schema has no context-length dimension, so only the <272K rate is recorded.'] }
|
|
1226
1400
|
],
|
|
1227
|
-
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1401
|
+
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07" }
|
|
1228
1402
|
},
|
|
1229
1403
|
{
|
|
1230
1404
|
canonicalId: "gpt-5.4-mini",
|
|
@@ -1232,9 +1406,9 @@ var MODEL_REGISTRY = [
|
|
|
1232
1406
|
aliases: [],
|
|
1233
1407
|
family: "gpt-5.4",
|
|
1234
1408
|
pricing: [
|
|
1235
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.75", "output": "4.50", "cachedInput": "0.075", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1409
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.75", "output": "4.50", "cachedInput": "0.075", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07", "notes": ["OpenAI's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01 pending confirmation of the true rollout date.", "batchMultiplier reflects OpenAI's general Batch API policy as stated on the pricing page; not independently confirmed per-model."] }
|
|
1236
1410
|
],
|
|
1237
|
-
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1411
|
+
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07" }
|
|
1238
1412
|
},
|
|
1239
1413
|
{
|
|
1240
1414
|
canonicalId: "gpt-5.4-nano",
|
|
@@ -1242,9 +1416,9 @@ var MODEL_REGISTRY = [
|
|
|
1242
1416
|
aliases: [],
|
|
1243
1417
|
family: "gpt-5.4",
|
|
1244
1418
|
pricing: [
|
|
1245
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.20", "output": "1.25", "cachedInput": "0.02", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1419
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.20", "output": "1.25", "cachedInput": "0.02", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07", "notes": ["OpenAI's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01 pending confirmation of the true rollout date.", "batchMultiplier reflects OpenAI's general Batch API policy as stated on the pricing page; not independently confirmed per-model."] }
|
|
1246
1420
|
],
|
|
1247
|
-
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1421
|
+
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07" }
|
|
1248
1422
|
},
|
|
1249
1423
|
{
|
|
1250
1424
|
canonicalId: "gpt-5.4-pro",
|
|
@@ -1252,9 +1426,9 @@ var MODEL_REGISTRY = [
|
|
|
1252
1426
|
aliases: [],
|
|
1253
1427
|
family: "gpt-5.4",
|
|
1254
1428
|
pricing: [
|
|
1255
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "30.00", "output": "180.00", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1429
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "30.00", "output": "180.00", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07", "notes": ['No cached-input rate is published for gpt-5.4-pro (shown as "\u2014"); cachedInput is intentionally omitted rather than guessed.', "OpenAI's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01 pending confirmation of the true rollout date.", `batchMultiplier is "0.5" per the pricing page's Batch API section, which states the 50% saving "applies to all text models listed above in the Standard table" - an explicit all-model statement, so the pro tiers are covered too.`, 'The pricing page qualifies this rate as the "<272K" context tier. A higher tier above 272K tokens is implied by that label but no rate for it was published in the fetched table, and this schema has no context-length dimension, so only the <272K rate is recorded.'] }
|
|
1256
1430
|
],
|
|
1257
|
-
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1431
|
+
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07" }
|
|
1258
1432
|
},
|
|
1259
1433
|
{
|
|
1260
1434
|
canonicalId: "gpt-5.5",
|
|
@@ -1262,9 +1436,9 @@ var MODEL_REGISTRY = [
|
|
|
1262
1436
|
aliases: [],
|
|
1263
1437
|
family: "gpt-5.5",
|
|
1264
1438
|
pricing: [
|
|
1265
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "5.00", "output": "30.00", "cachedInput": "0.50", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1439
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "5.00", "output": "30.00", "cachedInput": "0.50", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07", "notes": ["OpenAI's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01 pending confirmation of the true rollout date.", "batchMultiplier reflects OpenAI's general Batch API policy as stated on the pricing page; not independently confirmed per-model.", 'The pricing page qualifies this rate as the "<272K" context tier. A higher tier above 272K tokens is implied by that label but no rate for it was published in the fetched table, and this schema has no context-length dimension, so only the <272K rate is recorded.'] }
|
|
1266
1440
|
],
|
|
1267
|
-
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1441
|
+
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07" }
|
|
1268
1442
|
},
|
|
1269
1443
|
{
|
|
1270
1444
|
canonicalId: "gpt-5.5-pro",
|
|
@@ -1272,9 +1446,9 @@ var MODEL_REGISTRY = [
|
|
|
1272
1446
|
aliases: [],
|
|
1273
1447
|
family: "gpt-5.5",
|
|
1274
1448
|
pricing: [
|
|
1275
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "30.00", "output": "180.00", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1449
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "30.00", "output": "180.00", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07", "notes": ['No cached-input rate is published for gpt-5.5-pro (shown as "\u2014" on the pricing page); cachedInput is intentionally omitted rather than guessed.', "OpenAI's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01 pending confirmation of the true rollout date.", `batchMultiplier is "0.5" per the pricing page's Batch API section, which states the 50% saving "applies to all text models listed above in the Standard table" - an explicit all-model statement, so the pro tiers are covered too.`, 'The pricing page qualifies this rate as the "<272K" context tier. A higher tier above 272K tokens is implied by that label but no rate for it was published in the fetched table, and this schema has no context-length dimension, so only the <272K rate is recorded.'] }
|
|
1276
1450
|
],
|
|
1277
|
-
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1451
|
+
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07" }
|
|
1278
1452
|
},
|
|
1279
1453
|
{
|
|
1280
1454
|
canonicalId: "gpt-5.6-luna",
|
|
@@ -1282,9 +1456,9 @@ var MODEL_REGISTRY = [
|
|
|
1282
1456
|
aliases: [],
|
|
1283
1457
|
family: "gpt-5.6",
|
|
1284
1458
|
pricing: [
|
|
1285
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.20", "output": "1.20", "cachedInput": "0.02", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1459
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.20", "output": "1.20", "cachedInput": "0.02", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07", "notes": ["OpenAI's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01 pending confirmation of the true rollout date.", "batchMultiplier reflects OpenAI's general Batch API policy as stated on the pricing page; not independently confirmed per-model."] }
|
|
1286
1460
|
],
|
|
1287
|
-
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1461
|
+
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07" }
|
|
1288
1462
|
},
|
|
1289
1463
|
{
|
|
1290
1464
|
canonicalId: "gpt-5.6-sol",
|
|
@@ -1292,9 +1466,10 @@ var MODEL_REGISTRY = [
|
|
|
1292
1466
|
aliases: [],
|
|
1293
1467
|
family: "gpt-5.6",
|
|
1294
1468
|
pricing: [
|
|
1295
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "5.00", "output": "30.00", "cachedInput": "0.50", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-08-05", "notes": [`OpenAI's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01 pending confirmation of the true rollout date (this model's naming implies a later release, but a conservative too-early effectiveFrom only ever makes a historical lookup succeed when it should return "no period found", never the reverse).`, `batchMultiplier reflects OpenAI's general Batch API policy ("a 50% discount to Standard pricing rates across all models") as stated on the pricing page; not independently confirmed per-model
|
|
1469
|
+
{ "effectiveFrom": "2026-01-01", "effectiveTo": "2026-09-07", "currency": "USD", "unit": "per-million-tokens", "input": "5.00", "output": "30.00", "cachedInput": "0.50", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-08-05", "notes": [`OpenAI's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01 pending confirmation of the true rollout date (this model's naming implies a later release, but a conservative too-early effectiveFrom only ever makes a historical lookup succeed when it should return "no period found", never the reverse).`, `batchMultiplier reflects OpenAI's general Batch API policy ("a 50% discount to Standard pricing rates across all models") as stated on the pricing page; not independently confirmed per-model.`, "Closed on 2026-09-07: the pricing page published a lower rate (4.00 input / 20.00 output) on that date. The old rate was last confirmed 2026-08-05, so the true change date lies in (2026-08-05, 2026-09-07]; effectiveTo is the observation date, which keeps every confirmed observation correct and approximates only the unobserved gap, toward the last confirmed value."] },
|
|
1470
|
+
{ "effectiveFrom": "2026-09-07", "currency": "USD", "unit": "per-million-tokens", "input": "4.00", "output": "20.00", "cachedInput": "0.40", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07", "notes": ["Price cut observed on 2026-09-07: input 5.00 -> 4.00, output 30.00 -> 20.00, cached input 0.50 -> 0.40. OpenAI publishes no effective date, so effectiveFrom is the observation date rather than a guess at when the cut actually landed.", `batchMultiplier is "0.5" per the pricing page's Batch API section, which states the 50% saving "applies to all text models listed above in the Standard table" - an explicit all-model statement, so the pro tiers are covered too.`] }
|
|
1296
1471
|
],
|
|
1297
|
-
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1472
|
+
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07" }
|
|
1298
1473
|
},
|
|
1299
1474
|
{
|
|
1300
1475
|
canonicalId: "gpt-5.6-terra",
|
|
@@ -1302,9 +1477,19 @@ var MODEL_REGISTRY = [
|
|
|
1302
1477
|
aliases: [],
|
|
1303
1478
|
family: "gpt-5.6",
|
|
1304
1479
|
pricing: [
|
|
1305
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "2.00", "output": "12.00", "cachedInput": "0.20", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1480
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "2.00", "output": "12.00", "cachedInput": "0.20", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07", "notes": ["OpenAI's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01 pending confirmation of the true rollout date.", "batchMultiplier reflects OpenAI's general Batch API policy as stated on the pricing page; not independently confirmed per-model."] }
|
|
1481
|
+
],
|
|
1482
|
+
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07" }
|
|
1483
|
+
},
|
|
1484
|
+
{
|
|
1485
|
+
canonicalId: "gpt-6-astra",
|
|
1486
|
+
provider: "openai",
|
|
1487
|
+
aliases: [],
|
|
1488
|
+
family: "gpt-6",
|
|
1489
|
+
pricing: [
|
|
1490
|
+
{ "effectiveFrom": "2026-09-07", "currency": "USD", "unit": "per-million-tokens", "input": "10.00", "output": "50.00", "cachedInput": "1.00", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07", "notes": ["New model: absent from the pricing page on 2026-08-05, present on 2026-09-07. effectiveFrom is the observation date rather than this file's usual conservative 2026-01-01 - the model demonstrably did not exist at that rate a month earlier, so backdating it would invent a period.", `batchMultiplier is "0.5" per the pricing page's Batch API section, which states the 50% saving "applies to all text models listed above in the Standard table" - an explicit all-model statement, so the pro tiers are covered too.`] }
|
|
1306
1491
|
],
|
|
1307
|
-
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1492
|
+
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07" }
|
|
1308
1493
|
},
|
|
1309
1494
|
{
|
|
1310
1495
|
canonicalId: "o1",
|
|
@@ -1312,9 +1497,9 @@ var MODEL_REGISTRY = [
|
|
|
1312
1497
|
aliases: [],
|
|
1313
1498
|
family: "o-series",
|
|
1314
1499
|
pricing: [
|
|
1315
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "15.00", "output": "60.00", "cachedInput": "7.50", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1500
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "15.00", "output": "60.00", "cachedInput": "7.50", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07", "notes": ["OpenAI's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01 pending confirmation of the true rollout date.", "batchMultiplier reflects OpenAI's general Batch API policy as stated on the pricing page; not independently confirmed per-model."] }
|
|
1316
1501
|
],
|
|
1317
|
-
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1502
|
+
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07" }
|
|
1318
1503
|
},
|
|
1319
1504
|
{
|
|
1320
1505
|
canonicalId: "o1-pro",
|
|
@@ -1322,9 +1507,9 @@ var MODEL_REGISTRY = [
|
|
|
1322
1507
|
aliases: [],
|
|
1323
1508
|
family: "o-series",
|
|
1324
1509
|
pricing: [
|
|
1325
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "150.00", "output": "600.00", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1510
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "150.00", "output": "600.00", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07", "notes": ["Found on https://developers.openai.com/api/docs/pricing during a second confirmation pass.", 'No cached-input rate is published for o1-pro (shown as "\u2014"); cachedInput is intentionally omitted rather than guessed.', "OpenAI's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01 pending confirmation of the true rollout date.", `batchMultiplier is "0.5" per the pricing page's Batch API section, which states the 50% saving "applies to all text models listed above in the Standard table" - an explicit all-model statement, so the pro tiers are covered too.`] }
|
|
1326
1511
|
],
|
|
1327
|
-
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1512
|
+
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07" }
|
|
1328
1513
|
},
|
|
1329
1514
|
{
|
|
1330
1515
|
canonicalId: "o3",
|
|
@@ -1332,9 +1517,9 @@ var MODEL_REGISTRY = [
|
|
|
1332
1517
|
aliases: [],
|
|
1333
1518
|
family: "o-series",
|
|
1334
1519
|
pricing: [
|
|
1335
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "2.00", "output": "8.00", "cachedInput": "0.50", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1520
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "2.00", "output": "8.00", "cachedInput": "0.50", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07", "notes": ["OpenAI's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01 pending confirmation of the true rollout date.", "batchMultiplier reflects OpenAI's general Batch API policy as stated on the pricing page; not independently confirmed per-model."] }
|
|
1336
1521
|
],
|
|
1337
|
-
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1522
|
+
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07" }
|
|
1338
1523
|
},
|
|
1339
1524
|
{
|
|
1340
1525
|
canonicalId: "o3-mini",
|
|
@@ -1342,9 +1527,9 @@ var MODEL_REGISTRY = [
|
|
|
1342
1527
|
aliases: [],
|
|
1343
1528
|
family: "o-series",
|
|
1344
1529
|
pricing: [
|
|
1345
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "1.10", "output": "4.40", "cachedInput": "0.55", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1530
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "1.10", "output": "4.40", "cachedInput": "0.55", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07", "notes": ["OpenAI's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01 pending confirmation of the true rollout date.", "batchMultiplier reflects OpenAI's general Batch API policy as stated on the pricing page; not independently confirmed per-model."] }
|
|
1346
1531
|
],
|
|
1347
|
-
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1532
|
+
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07" }
|
|
1348
1533
|
},
|
|
1349
1534
|
{
|
|
1350
1535
|
canonicalId: "o3-pro",
|
|
@@ -1352,9 +1537,9 @@ var MODEL_REGISTRY = [
|
|
|
1352
1537
|
aliases: [],
|
|
1353
1538
|
family: "o-series",
|
|
1354
1539
|
pricing: [
|
|
1355
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "20.00", "output": "80.00", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1540
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "20.00", "output": "80.00", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07", "notes": ['No cached-input rate is published for o3-pro (shown as "\u2014"); cachedInput is intentionally omitted rather than guessed.', "OpenAI's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01 pending confirmation of the true rollout date.", `batchMultiplier is "0.5" per the pricing page's Batch API section, which states the 50% saving "applies to all text models listed above in the Standard table" - an explicit all-model statement, so the pro tiers are covered too.`] }
|
|
1356
1541
|
],
|
|
1357
|
-
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1542
|
+
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07" }
|
|
1358
1543
|
},
|
|
1359
1544
|
{
|
|
1360
1545
|
canonicalId: "o4-mini",
|
|
@@ -1362,9 +1547,9 @@ var MODEL_REGISTRY = [
|
|
|
1362
1547
|
aliases: [],
|
|
1363
1548
|
family: "o-series",
|
|
1364
1549
|
pricing: [
|
|
1365
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "1.10", "output": "4.40", "cachedInput": "0.275", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1550
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "1.10", "output": "4.40", "cachedInput": "0.275", "batchMultiplier": "0.5", "sourceUrl": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07", "notes": ["OpenAI's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01 pending confirmation of the true rollout date.", "batchMultiplier reflects OpenAI's general Batch API policy as stated on the pricing page; not independently confirmed per-model."] }
|
|
1366
1551
|
],
|
|
1367
|
-
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-
|
|
1552
|
+
source: { "url": "https://developers.openai.com/api/docs/pricing", "observedAt": "2026-09-07" }
|
|
1368
1553
|
},
|
|
1369
1554
|
{
|
|
1370
1555
|
canonicalId: "anthropic/claude-sonnet-5",
|
|
@@ -1372,9 +1557,9 @@ var MODEL_REGISTRY = [
|
|
|
1372
1557
|
aliases: [],
|
|
1373
1558
|
family: "anthropic-proxy",
|
|
1374
1559
|
pricing: [
|
|
1375
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "2.00", "output": "10.00", "sourceUrl": "https://openrouter.ai/anthropic/claude-sonnet-5", "observedAt": "2026-
|
|
1560
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "2.00", "output": "10.00", "cachedInput": "0.20", "cacheWrite": "2.50", "sourceUrl": "https://openrouter.ai/anthropic/claude-sonnet-5", "observedAt": "2026-09-07", "notes": ["Recorded 2026-08-05 flagged UNCERTAIN: $2.00/$10.00 matched what anthropic.json then held as an introductory rate expiring 2026-08-31, so it was unclear whether OpenRouter had simply not updated its listing. Resolved on 2026-09-07 - Anthropic's pricing page states the scheduled $3.00/$15.00 increase will not occur and $2.00/$10.00 is the standard rate, so this listing was correct all along and the flag is withdrawn.", "OpenRouter's per-model page does not publish an effective date; effectiveFrom is set conservatively to 2026-01-01.", `canonicalId uses OpenRouter's own slug format, deliberately distinct from Anthropic's first-party canonicalId "claude-sonnet-5" (anthropic.json) to avoid a canonicalId collision; this is a legitimate cross-provider situation, not an error.`, "Re-confirmed unchanged on 2026-09-07 against the same model page.", "cachedInput added on 2026-09-07: the model page now prints a Cache Read rate of 0.20 per million tokens for this model.", "cacheWrite added on 2026-09-07: the model page prints a 5-minute Cache Write rate of 2.50 per million tokens (and $4.00 for the 1-hour TTL, which this single-field schema does not model).", "Resolves the 2026-08-05 caveat on this entry: $2.00/$10.00 was flagged as possibly Anthropic's introductory rate, due to be superseded by $3.00/$15.00 on 2026-09-01. Anthropic's own pricing page now states that increase will not occur and $2.00/$10.00 is the standard rate, so OpenRouter's rate matches the first-party standard rate, not a stale introductory one.", "The page notes Google Vertex (US/Europe) and Amazon Bedrock (US) upstreams charge $2.20/$11.00 through OpenRouter; the default cross-provider rate is recorded, since this schema has no upstream dimension."] }
|
|
1376
1561
|
],
|
|
1377
|
-
source: { "url": "https://openrouter.ai/anthropic/claude-sonnet-5", "observedAt": "2026-
|
|
1562
|
+
source: { "url": "https://openrouter.ai/anthropic/claude-sonnet-5", "observedAt": "2026-09-07" }
|
|
1378
1563
|
},
|
|
1379
1564
|
{
|
|
1380
1565
|
canonicalId: "google/gemini-3.1-pro-preview",
|
|
@@ -1382,9 +1567,9 @@ var MODEL_REGISTRY = [
|
|
|
1382
1567
|
aliases: [],
|
|
1383
1568
|
family: "google-proxy",
|
|
1384
1569
|
pricing: [
|
|
1385
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "2.00", "output": "12.00", "cheapestTier": true, "sourceUrl": "https://openrouter.ai/google/gemini-3.1-pro-preview", "observedAt": "2026-
|
|
1570
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "2.00", "output": "12.00", "cachedInput": "0.20", "cheapestTier": true, "sourceUrl": "https://openrouter.ai/google/gemini-3.1-pro-preview", "observedAt": "2026-09-07", "notes": ["OpenRouter's per-model page does not publish an effective date; effectiveFrom is set conservatively to 2026-01-01.", "Matches Google's own first-party <=200k-token-tier rate for gemini-3.1-pro-preview ($2.00/$12.00, see google.json) exactly as observed. Google's >200k-token tier ($4.00/$18.00) is not represented here (or, evidently, distinguished by OpenRouter's listing either) \u2014 same context-length-tiering limitation as google.json.", `canonicalId uses OpenRouter's own slug format, deliberately distinct from Google's first-party canonicalId "gemini-3.1-pro-preview" (google.json).`, "Re-confirmed unchanged on 2026-09-07 against the same model page.", "cachedInput added on 2026-09-07: the model page now prints a Cache Read rate of 0.20 per million tokens for this model."] }
|
|
1386
1571
|
],
|
|
1387
|
-
source: { "url": "https://openrouter.ai/google/gemini-3.1-pro-preview", "observedAt": "2026-
|
|
1572
|
+
source: { "url": "https://openrouter.ai/google/gemini-3.1-pro-preview", "observedAt": "2026-09-07" }
|
|
1388
1573
|
},
|
|
1389
1574
|
{
|
|
1390
1575
|
canonicalId: "meta-llama/llama-3.3-70b-instruct",
|
|
@@ -1392,9 +1577,9 @@ var MODEL_REGISTRY = [
|
|
|
1392
1577
|
aliases: [],
|
|
1393
1578
|
family: "meta-proxy",
|
|
1394
1579
|
pricing: [
|
|
1395
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.10", "output": "0.32", "sourceUrl": "https://openrouter.ai/meta-llama/llama-3.3-70b-instruct", "observedAt": "2026-
|
|
1580
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.10", "output": "0.32", "sourceUrl": "https://openrouter.ai/meta-llama/llama-3.3-70b-instruct", "observedAt": "2026-09-07", "notes": ["OpenRouter's per-model page does not publish an effective date; effectiveFrom is set conservatively to 2026-01-01.", `Meta does not sell first-party API access to Llama, so there is no first-party "llama-3.3-70b" entry in this registry to compare against; Groq (groq.json: llama-3.3-70b-versatile, $0.59/$0.79) and Together AI (together.json: llama-3.3-70b, $1.04/$1.04) each host the same open-weight model at their own, different rates. OpenRouter's rate here is the lowest of the three observed, plausibly because OpenRouter itself proxies to one of several underlying hosts and shows a blended/lowest-cost route; not independently confirmed which underlying host this routes to.`, "Re-confirmed unchanged on 2026-09-07 against the same model page.", 'The page labels this "the average price customers actually pay" and warns caching and discounts often put the effective price below it; recorded as printed.'] }
|
|
1396
1581
|
],
|
|
1397
|
-
source: { "url": "https://openrouter.ai/meta-llama/llama-3.3-70b-instruct", "observedAt": "2026-
|
|
1582
|
+
source: { "url": "https://openrouter.ai/meta-llama/llama-3.3-70b-instruct", "observedAt": "2026-09-07" }
|
|
1398
1583
|
},
|
|
1399
1584
|
{
|
|
1400
1585
|
canonicalId: "openai/gpt-5",
|
|
@@ -1402,9 +1587,19 @@ var MODEL_REGISTRY = [
|
|
|
1402
1587
|
aliases: [],
|
|
1403
1588
|
family: "openai-proxy",
|
|
1404
1589
|
pricing: [
|
|
1405
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "1.25", "output": "10.00", "sourceUrl": "https://openrouter.ai/openai/gpt-5", "observedAt": "2026-
|
|
1590
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "1.25", "output": "10.00", "cachedInput": "0.125", "sourceUrl": "https://openrouter.ai/openai/gpt-5", "observedAt": "2026-09-07", "notes": ["OpenRouter's per-model page does not publish an effective date; effectiveFrom is set conservatively to 2026-01-01.", "Matches OpenAI's own first-party rate for gpt-5 ($1.25/$10.00, see openai.json) exactly as observed \u2014 no markup detected for this model.", `canonicalId uses OpenRouter's own slug format ("openai/gpt-5"), deliberately distinct from OpenAI's first-party canonicalId "gpt-5" (openai.json) \u2014 this avoids a canonicalId collision while still allowing a cross-provider alias collision if a caller looks up the bare id "gpt-5" without a provider qualifier; no bare "gpt-5" alias was added to this entry to keep that surface area minimal.`, "Re-confirmed unchanged on 2026-09-07 against the same model page.", "cachedInput added on 2026-09-07: the model page now prints a Cache Read rate of 0.125 per million tokens for this model."] }
|
|
1406
1591
|
],
|
|
1407
|
-
source: { "url": "https://openrouter.ai/openai/gpt-5", "observedAt": "2026-
|
|
1592
|
+
source: { "url": "https://openrouter.ai/openai/gpt-5", "observedAt": "2026-09-07" }
|
|
1593
|
+
},
|
|
1594
|
+
{
|
|
1595
|
+
canonicalId: "deepseek-v4-flash-0731",
|
|
1596
|
+
provider: "together",
|
|
1597
|
+
aliases: [],
|
|
1598
|
+
family: "deepseek",
|
|
1599
|
+
pricing: [
|
|
1600
|
+
{ "effectiveFrom": "2026-09-07", "currency": "USD", "unit": "per-million-tokens", "input": "0.14", "output": "0.28", "sourceUrl": "https://www.together.ai/pricing", "observedAt": "2026-09-07", "notes": ["Added from the 2026-09-07 fetch. effectiveFrom is the observation date rather than this file's conservative 2026-01-01, since the 2026-08-05 fetch of the same page did not list it.", "Together publishes no cached-input rate or batch discount for serverless models; both fields are omitted rather than guessed."] }
|
|
1601
|
+
],
|
|
1602
|
+
source: { "url": "https://www.together.ai/pricing", "observedAt": "2026-09-07" }
|
|
1408
1603
|
},
|
|
1409
1604
|
{
|
|
1410
1605
|
canonicalId: "deepseek-v4-pro",
|
|
@@ -1412,19 +1607,29 @@ var MODEL_REGISTRY = [
|
|
|
1412
1607
|
aliases: [],
|
|
1413
1608
|
family: "deepseek",
|
|
1414
1609
|
pricing: [
|
|
1415
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "1.74", "output": "3.48", "cachedInput": "0.20", "sourceUrl": "https://www.together.ai/pricing", "observedAt": "2026-08-05", "notes": ["Together's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01."] }
|
|
1610
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "1.74", "output": "3.48", "cachedInput": "0.20", "sourceUrl": "https://www.together.ai/pricing", "observedAt": "2026-08-05", "notes": ["Together's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01.", 'Not re-confirmed on 2026-09-07: that fetch listed "DeepSeek V4 Pro 0813" at $1.32 / $3.96 and no undated "DeepSeek V4 Pro" row. Whether the dated build is this same model repriced or a separate snapshot is not stated on the page, so this entry keeps its 2026-08-05 rate and the dated build is recorded separately as deepseek-v4-pro-0813 rather than silently overwriting this one.'] }
|
|
1416
1611
|
],
|
|
1417
1612
|
source: { "url": "https://www.together.ai/pricing", "observedAt": "2026-08-05" }
|
|
1418
1613
|
},
|
|
1614
|
+
{
|
|
1615
|
+
canonicalId: "deepseek-v4-pro-0813",
|
|
1616
|
+
provider: "together",
|
|
1617
|
+
aliases: [],
|
|
1618
|
+
family: "deepseek",
|
|
1619
|
+
pricing: [
|
|
1620
|
+
{ "effectiveFrom": "2026-09-07", "currency": "USD", "unit": "per-million-tokens", "input": "1.32", "output": "3.96", "sourceUrl": "https://www.together.ai/pricing", "observedAt": "2026-09-07", "notes": ["Dated build listed on the page on 2026-09-07; see deepseek-v4-pro's notes for why it is a separate entry rather than a reprice of that one.", "Added from the 2026-09-07 fetch. effectiveFrom is the observation date rather than this file's conservative 2026-01-01, since the 2026-08-05 fetch of the same page did not list it.", "Together publishes no cached-input rate or batch discount for serverless models; both fields are omitted rather than guessed."] }
|
|
1621
|
+
],
|
|
1622
|
+
source: { "url": "https://www.together.ai/pricing", "observedAt": "2026-09-07" }
|
|
1623
|
+
},
|
|
1419
1624
|
{
|
|
1420
1625
|
canonicalId: "gemma-4-31b",
|
|
1421
1626
|
provider: "together",
|
|
1422
1627
|
aliases: [],
|
|
1423
1628
|
family: "gemma",
|
|
1424
1629
|
pricing: [
|
|
1425
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.39", "output": "0.97", "sourceUrl": "https://www.together.ai/pricing", "observedAt": "2026-
|
|
1630
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.39", "output": "0.97", "sourceUrl": "https://www.together.ai/pricing", "observedAt": "2026-09-07", "notes": ["Together's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01.", 'Cross-provider alias/canonicalId collision (allowed, not an error): AWS Bedrock also lists "Gemma 4 31B" (aws-bedrock.json: gemma-4-31b) at a different, lower rate ($0.14/$0.40 as observed on Bedrock) \u2014 same underlying Google open-weight model, independently priced by each reseller; do not assume parity.', "Re-confirmed unchanged on 2026-09-07 against the same page."] }
|
|
1426
1631
|
],
|
|
1427
|
-
source: { "url": "https://www.together.ai/pricing", "observedAt": "2026-
|
|
1632
|
+
source: { "url": "https://www.together.ai/pricing", "observedAt": "2026-09-07" }
|
|
1428
1633
|
},
|
|
1429
1634
|
{
|
|
1430
1635
|
canonicalId: "glm-5.2",
|
|
@@ -1432,9 +1637,29 @@ var MODEL_REGISTRY = [
|
|
|
1432
1637
|
aliases: [],
|
|
1433
1638
|
family: "glm",
|
|
1434
1639
|
pricing: [
|
|
1435
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "1.40", "output": "4.40", "cachedInput": "0.26", "sourceUrl": "https://www.together.ai/pricing", "observedAt": "2026-
|
|
1640
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "1.40", "output": "4.40", "cachedInput": "0.26", "sourceUrl": "https://www.together.ai/pricing", "observedAt": "2026-09-07", "notes": ["Together's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01.", "Re-confirmed unchanged on 2026-09-07 against the same page."] }
|
|
1436
1641
|
],
|
|
1437
|
-
source: { "url": "https://www.together.ai/pricing", "observedAt": "2026-
|
|
1642
|
+
source: { "url": "https://www.together.ai/pricing", "observedAt": "2026-09-07" }
|
|
1643
|
+
},
|
|
1644
|
+
{
|
|
1645
|
+
canonicalId: "glm-5.3",
|
|
1646
|
+
provider: "together",
|
|
1647
|
+
aliases: [],
|
|
1648
|
+
family: "glm",
|
|
1649
|
+
pricing: [
|
|
1650
|
+
{ "effectiveFrom": "2026-09-07", "currency": "USD", "unit": "per-million-tokens", "input": "1.40", "output": "4.40", "sourceUrl": "https://www.together.ai/pricing", "observedAt": "2026-09-07", "notes": ["Added from the 2026-09-07 fetch. effectiveFrom is the observation date rather than this file's conservative 2026-01-01, since the 2026-08-05 fetch of the same page did not list it.", "Together publishes no cached-input rate or batch discount for serverless models; both fields are omitted rather than guessed."] }
|
|
1651
|
+
],
|
|
1652
|
+
source: { "url": "https://www.together.ai/pricing", "observedAt": "2026-09-07" }
|
|
1653
|
+
},
|
|
1654
|
+
{
|
|
1655
|
+
canonicalId: "glm-5.3-flash",
|
|
1656
|
+
provider: "together",
|
|
1657
|
+
aliases: [],
|
|
1658
|
+
family: "glm",
|
|
1659
|
+
pricing: [
|
|
1660
|
+
{ "effectiveFrom": "2026-09-07", "currency": "USD", "unit": "per-million-tokens", "input": "0.15", "output": "0.50", "sourceUrl": "https://www.together.ai/pricing", "observedAt": "2026-09-07", "notes": ["Added from the 2026-09-07 fetch. effectiveFrom is the observation date rather than this file's conservative 2026-01-01, since the 2026-08-05 fetch of the same page did not list it.", "Together publishes no cached-input rate or batch discount for serverless models; both fields are omitted rather than guessed."] }
|
|
1661
|
+
],
|
|
1662
|
+
source: { "url": "https://www.together.ai/pricing", "observedAt": "2026-09-07" }
|
|
1438
1663
|
},
|
|
1439
1664
|
{
|
|
1440
1665
|
canonicalId: "gpt-oss-120b",
|
|
@@ -1442,9 +1667,9 @@ var MODEL_REGISTRY = [
|
|
|
1442
1667
|
aliases: [],
|
|
1443
1668
|
family: "gpt-oss",
|
|
1444
1669
|
pricing: [
|
|
1445
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.15", "output": "0.60", "sourceUrl": "https://www.together.ai/pricing", "observedAt": "2026-
|
|
1670
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.15", "output": "0.60", "sourceUrl": "https://www.together.ai/pricing", "observedAt": "2026-09-07", "notes": ["Together's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01.", 'Cross-provider alias/canonicalId collision (allowed, not an error): Groq also publishes a model with canonicalId "gpt-oss-120b" (groq.json), independently priced at the same $0.15/$0.60 figure as observed. The identical string "gpt-oss-120b" is used as the canonicalId on both providers because that is the actual model name each provider publishes; resolving "gpt-oss-120b" without a provider qualifier is ambiguous across providers by design and the resolver requires a provider qualifier to disambiguate it.', "Re-confirmed unchanged on 2026-09-07 against the same page."] }
|
|
1446
1671
|
],
|
|
1447
|
-
source: { "url": "https://www.together.ai/pricing", "observedAt": "2026-
|
|
1672
|
+
source: { "url": "https://www.together.ai/pricing", "observedAt": "2026-09-07" }
|
|
1448
1673
|
},
|
|
1449
1674
|
{
|
|
1450
1675
|
canonicalId: "gpt-oss-20b",
|
|
@@ -1452,7 +1677,7 @@ var MODEL_REGISTRY = [
|
|
|
1452
1677
|
aliases: [],
|
|
1453
1678
|
family: "gpt-oss",
|
|
1454
1679
|
pricing: [
|
|
1455
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.05", "output": "0.20", "sourceUrl": "https://www.together.ai/pricing", "observedAt": "2026-08-05", "notes": ["Together's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01.", 'Cross-provider alias/canonicalId collision (allowed, not an error): Groq also publishes "gpt-oss-20b" (groq.json) at a different rate ($0.075/$0.30 as observed) \u2014 same model name, independently priced by each host; do not assume parity.'] }
|
|
1680
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.05", "output": "0.20", "sourceUrl": "https://www.together.ai/pricing", "observedAt": "2026-08-05", "notes": ["Together's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01.", 'Cross-provider alias/canonicalId collision (allowed, not an error): Groq also publishes "gpt-oss-20b" (groq.json) at a different rate ($0.075/$0.30 as observed) \u2014 same model name, independently priced by each host; do not assume parity.', "Not surfaced by the 2026-09-07 fetch of the same page. observedAt is deliberately left at 2026-08-05: the rate was not re-observed, and an absence in one page fetch is not evidence of a withdrawal."] }
|
|
1456
1681
|
],
|
|
1457
1682
|
source: { "url": "https://www.together.ai/pricing", "observedAt": "2026-08-05" }
|
|
1458
1683
|
},
|
|
@@ -1462,9 +1687,19 @@ var MODEL_REGISTRY = [
|
|
|
1462
1687
|
aliases: [],
|
|
1463
1688
|
family: "kimi",
|
|
1464
1689
|
pricing: [
|
|
1465
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "3.00", "output": "15.00", "cachedInput": "0.30", "sourceUrl": "https://www.together.ai/pricing", "observedAt": "2026-
|
|
1690
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "3.00", "output": "15.00", "cachedInput": "0.30", "sourceUrl": "https://www.together.ai/pricing", "observedAt": "2026-09-07", "notes": ["Together's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01.", "Re-confirmed unchanged on 2026-09-07 against the same page."] }
|
|
1466
1691
|
],
|
|
1467
|
-
source: { "url": "https://www.together.ai/pricing", "observedAt": "2026-
|
|
1692
|
+
source: { "url": "https://www.together.ai/pricing", "observedAt": "2026-09-07" }
|
|
1693
|
+
},
|
|
1694
|
+
{
|
|
1695
|
+
canonicalId: "llama-3-8b-instruct-lite",
|
|
1696
|
+
provider: "together",
|
|
1697
|
+
aliases: [],
|
|
1698
|
+
family: "llama",
|
|
1699
|
+
pricing: [
|
|
1700
|
+
{ "effectiveFrom": "2026-09-07", "currency": "USD", "unit": "per-million-tokens", "input": "0.14", "output": "0.14", "sourceUrl": "https://www.together.ai/pricing", "observedAt": "2026-09-07", "notes": ["Added from the 2026-09-07 fetch. effectiveFrom is the observation date rather than this file's conservative 2026-01-01, since the 2026-08-05 fetch of the same page did not list it.", "Together publishes no cached-input rate or batch discount for serverless models; both fields are omitted rather than guessed."] }
|
|
1701
|
+
],
|
|
1702
|
+
source: { "url": "https://www.together.ai/pricing", "observedAt": "2026-09-07" }
|
|
1468
1703
|
},
|
|
1469
1704
|
{
|
|
1470
1705
|
canonicalId: "llama-3.3-70b",
|
|
@@ -1472,9 +1707,9 @@ var MODEL_REGISTRY = [
|
|
|
1472
1707
|
aliases: [],
|
|
1473
1708
|
family: "llama-3.3",
|
|
1474
1709
|
pricing: [
|
|
1475
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "1.04", "output": "1.04", "sourceUrl": "https://www.together.ai/pricing", "observedAt": "2026-
|
|
1710
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "1.04", "output": "1.04", "sourceUrl": "https://www.together.ai/pricing", "observedAt": "2026-09-07", "notes": ["Together's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01.", "Also hosted by Groq (groq.json: llama-3.3-70b-versatile, $0.59/$0.79) and resold by AWS Bedrock \u2014 each host prices this same open-weight model independently; do not assume parity across providers.", "Re-confirmed unchanged on 2026-09-07 against the same page."] }
|
|
1476
1711
|
],
|
|
1477
|
-
source: { "url": "https://www.together.ai/pricing", "observedAt": "2026-
|
|
1712
|
+
source: { "url": "https://www.together.ai/pricing", "observedAt": "2026-09-07" }
|
|
1478
1713
|
},
|
|
1479
1714
|
{
|
|
1480
1715
|
canonicalId: "minimax-m3",
|
|
@@ -1482,9 +1717,19 @@ var MODEL_REGISTRY = [
|
|
|
1482
1717
|
aliases: [],
|
|
1483
1718
|
family: "minimax",
|
|
1484
1719
|
pricing: [
|
|
1485
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.30", "output": "1.20", "cachedInput": "0.06", "sourceUrl": "https://www.together.ai/pricing", "observedAt": "2026-
|
|
1720
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.30", "output": "1.20", "cachedInput": "0.06", "sourceUrl": "https://www.together.ai/pricing", "observedAt": "2026-09-07", "notes": ["Together's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01.", "Re-confirmed unchanged on 2026-09-07 against the same page."] }
|
|
1486
1721
|
],
|
|
1487
|
-
source: { "url": "https://www.together.ai/pricing", "observedAt": "2026-
|
|
1722
|
+
source: { "url": "https://www.together.ai/pricing", "observedAt": "2026-09-07" }
|
|
1723
|
+
},
|
|
1724
|
+
{
|
|
1725
|
+
canonicalId: "qwen2.5-7b-instruct-turbo",
|
|
1726
|
+
provider: "together",
|
|
1727
|
+
aliases: [],
|
|
1728
|
+
family: "qwen",
|
|
1729
|
+
pricing: [
|
|
1730
|
+
{ "effectiveFrom": "2026-09-07", "currency": "USD", "unit": "per-million-tokens", "input": "0.30", "output": "0.30", "sourceUrl": "https://www.together.ai/pricing", "observedAt": "2026-09-07", "notes": ["Added from the 2026-09-07 fetch. effectiveFrom is the observation date rather than this file's conservative 2026-01-01, since the 2026-08-05 fetch of the same page did not list it.", "Together publishes no cached-input rate or batch discount for serverless models; both fields are omitted rather than guessed."] }
|
|
1731
|
+
],
|
|
1732
|
+
source: { "url": "https://www.together.ai/pricing", "observedAt": "2026-09-07" }
|
|
1488
1733
|
},
|
|
1489
1734
|
{
|
|
1490
1735
|
canonicalId: "qwen3.5-397b-a17b",
|
|
@@ -1492,9 +1737,29 @@ var MODEL_REGISTRY = [
|
|
|
1492
1737
|
aliases: [],
|
|
1493
1738
|
family: "qwen",
|
|
1494
1739
|
pricing: [
|
|
1495
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.60", "output": "3.60", "cachedInput": "0.35", "sourceUrl": "https://www.together.ai/pricing", "observedAt": "2026-
|
|
1740
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "0.60", "output": "3.60", "cachedInput": "0.35", "sourceUrl": "https://www.together.ai/pricing", "observedAt": "2026-09-07", "notes": ["Together's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01.", "Re-confirmed unchanged on 2026-09-07 against the same page."] }
|
|
1496
1741
|
],
|
|
1497
|
-
source: { "url": "https://www.together.ai/pricing", "observedAt": "2026-
|
|
1742
|
+
source: { "url": "https://www.together.ai/pricing", "observedAt": "2026-09-07" }
|
|
1743
|
+
},
|
|
1744
|
+
{
|
|
1745
|
+
canonicalId: "qwen3.5-9b",
|
|
1746
|
+
provider: "together",
|
|
1747
|
+
aliases: [],
|
|
1748
|
+
family: "qwen",
|
|
1749
|
+
pricing: [
|
|
1750
|
+
{ "effectiveFrom": "2026-09-07", "currency": "USD", "unit": "per-million-tokens", "input": "0.17", "output": "0.25", "sourceUrl": "https://www.together.ai/pricing", "observedAt": "2026-09-07", "notes": ["Added from the 2026-09-07 fetch. effectiveFrom is the observation date rather than this file's conservative 2026-01-01, since the 2026-08-05 fetch of the same page did not list it.", "Together publishes no cached-input rate or batch discount for serverless models; both fields are omitted rather than guessed."] }
|
|
1751
|
+
],
|
|
1752
|
+
source: { "url": "https://www.together.ai/pricing", "observedAt": "2026-09-07" }
|
|
1753
|
+
},
|
|
1754
|
+
{
|
|
1755
|
+
canonicalId: "qwen3.6-plus",
|
|
1756
|
+
provider: "together",
|
|
1757
|
+
aliases: [],
|
|
1758
|
+
family: "qwen",
|
|
1759
|
+
pricing: [
|
|
1760
|
+
{ "effectiveFrom": "2026-09-07", "currency": "USD", "unit": "per-million-tokens", "input": "0.50", "output": "3.00", "sourceUrl": "https://www.together.ai/pricing", "observedAt": "2026-09-07", "notes": ["Added from the 2026-09-07 fetch. effectiveFrom is the observation date rather than this file's conservative 2026-01-01, since the 2026-08-05 fetch of the same page did not list it.", "Together publishes no cached-input rate or batch discount for serverless models; both fields are omitted rather than guessed."] }
|
|
1761
|
+
],
|
|
1762
|
+
source: { "url": "https://www.together.ai/pricing", "observedAt": "2026-09-07" }
|
|
1498
1763
|
},
|
|
1499
1764
|
{
|
|
1500
1765
|
canonicalId: "qwen3.7-max",
|
|
@@ -1502,9 +1767,39 @@ var MODEL_REGISTRY = [
|
|
|
1502
1767
|
aliases: [],
|
|
1503
1768
|
family: "qwen",
|
|
1504
1769
|
pricing: [
|
|
1505
|
-
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "1.25", "output": "3.75", "cachedInput": "0.13", "sourceUrl": "https://www.together.ai/pricing", "observedAt": "2026-
|
|
1770
|
+
{ "effectiveFrom": "2026-01-01", "currency": "USD", "unit": "per-million-tokens", "input": "1.25", "output": "3.75", "cachedInput": "0.13", "sourceUrl": "https://www.together.ai/pricing", "observedAt": "2026-09-07", "notes": ["Together's pricing page does not publish an effective date for this rate; effectiveFrom is set conservatively to 2026-01-01.", "Re-confirmed unchanged on 2026-09-07 against the same page."] }
|
|
1506
1771
|
],
|
|
1507
|
-
source: { "url": "https://www.together.ai/pricing", "observedAt": "2026-
|
|
1772
|
+
source: { "url": "https://www.together.ai/pricing", "observedAt": "2026-09-07" }
|
|
1773
|
+
},
|
|
1774
|
+
{
|
|
1775
|
+
canonicalId: "qwen3.7-plus",
|
|
1776
|
+
provider: "together",
|
|
1777
|
+
aliases: [],
|
|
1778
|
+
family: "qwen",
|
|
1779
|
+
pricing: [
|
|
1780
|
+
{ "effectiveFrom": "2026-09-07", "currency": "USD", "unit": "per-million-tokens", "input": "0.32", "output": "1.28", "sourceUrl": "https://www.together.ai/pricing", "observedAt": "2026-09-07", "notes": ["Added from the 2026-09-07 fetch. effectiveFrom is the observation date rather than this file's conservative 2026-01-01, since the 2026-08-05 fetch of the same page did not list it.", "Together publishes no cached-input rate or batch discount for serverless models; both fields are omitted rather than guessed."] }
|
|
1781
|
+
],
|
|
1782
|
+
source: { "url": "https://www.together.ai/pricing", "observedAt": "2026-09-07" }
|
|
1783
|
+
},
|
|
1784
|
+
{
|
|
1785
|
+
canonicalId: "qwen3.8-2.4t-a95b",
|
|
1786
|
+
provider: "together",
|
|
1787
|
+
aliases: [],
|
|
1788
|
+
family: "qwen",
|
|
1789
|
+
pricing: [
|
|
1790
|
+
{ "effectiveFrom": "2026-09-07", "currency": "USD", "unit": "per-million-tokens", "input": "2.00", "output": "6.00", "sourceUrl": "https://www.together.ai/pricing", "observedAt": "2026-09-07", "notes": ["Added from the 2026-09-07 fetch. effectiveFrom is the observation date rather than this file's conservative 2026-01-01, since the 2026-08-05 fetch of the same page did not list it.", "Together publishes no cached-input rate or batch discount for serverless models; both fields are omitted rather than guessed."] }
|
|
1791
|
+
],
|
|
1792
|
+
source: { "url": "https://www.together.ai/pricing", "observedAt": "2026-09-07" }
|
|
1793
|
+
},
|
|
1794
|
+
{
|
|
1795
|
+
canonicalId: "qwen3.8-flash",
|
|
1796
|
+
provider: "together",
|
|
1797
|
+
aliases: [],
|
|
1798
|
+
family: "qwen",
|
|
1799
|
+
pricing: [
|
|
1800
|
+
{ "effectiveFrom": "2026-09-07", "currency": "USD", "unit": "per-million-tokens", "input": "0.15", "output": "0.47", "sourceUrl": "https://www.together.ai/pricing", "observedAt": "2026-09-07", "notes": ["Added from the 2026-09-07 fetch. effectiveFrom is the observation date rather than this file's conservative 2026-01-01, since the 2026-08-05 fetch of the same page did not list it.", "Together publishes no cached-input rate or batch discount for serverless models; both fields are omitted rather than guessed."] }
|
|
1801
|
+
],
|
|
1802
|
+
source: { "url": "https://www.together.ai/pricing", "observedAt": "2026-09-07" }
|
|
1508
1803
|
}
|
|
1509
1804
|
];
|
|
1510
1805
|
|