llm_cost_tracker 0.12.0 → 0.14.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.
Files changed (92) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +71 -16
  3. data/README.md +16 -28
  4. data/app/controllers/llm_cost_tracker/application_controller.rb +3 -2
  5. data/app/controllers/llm_cost_tracker/data_quality_controller.rb +2 -0
  6. data/app/controllers/llm_cost_tracker/models_controller.rb +3 -1
  7. data/app/helpers/llm_cost_tracker/application_helper.rb +6 -4
  8. data/app/helpers/llm_cost_tracker/dashboard_query_helper.rb +11 -0
  9. data/app/models/llm_cost_tracker/call.rb +9 -3
  10. data/app/models/llm_cost_tracker/call_rollup.rb +19 -3
  11. data/app/models/llm_cost_tracker/ingestion/inbox_entry.rb +1 -0
  12. data/app/services/llm_cost_tracker/dashboard/data_quality.rb +25 -0
  13. data/app/services/llm_cost_tracker/dashboard/monthly_budget.rb +1 -1
  14. data/app/services/llm_cost_tracker/dashboard/pagination.rb +2 -1
  15. data/app/services/llm_cost_tracker/dashboard/pricing_overview.rb +3 -3
  16. data/app/services/llm_cost_tracker/dashboard/setup_state.rb +5 -3
  17. data/app/views/llm_cost_tracker/calls/show.html.erb +8 -10
  18. data/app/views/llm_cost_tracker/data_quality/index.html.erb +22 -0
  19. data/app/views/llm_cost_tracker/pricing/index.html.erb +1 -1
  20. data/app/views/llm_cost_tracker/shared/_filter_pill_date.html.erb +1 -3
  21. data/app/views/llm_cost_tracker/shared/_filter_pill_model.html.erb +1 -3
  22. data/app/views/llm_cost_tracker/shared/_filter_pill_provider.html.erb +1 -3
  23. data/app/views/llm_cost_tracker/shared/_filter_pill_stream.html.erb +1 -3
  24. data/lib/llm_cost_tracker/budget/per_tag.rb +159 -0
  25. data/lib/llm_cost_tracker/budget.rb +120 -32
  26. data/lib/llm_cost_tracker/capture/stream_collector.rb +5 -4
  27. data/lib/llm_cost_tracker/charges/cost_status.rb +4 -3
  28. data/lib/llm_cost_tracker/charges/line_item.rb +3 -2
  29. data/lib/llm_cost_tracker/configuration/budgets.rb +93 -0
  30. data/lib/llm_cost_tracker/configuration/capture.rb +42 -0
  31. data/lib/llm_cost_tracker/configuration/ingestion.rb +20 -0
  32. data/lib/llm_cost_tracker/configuration/mutability.rb +33 -0
  33. data/lib/llm_cost_tracker/configuration/pricing.rb +36 -0
  34. data/lib/llm_cost_tracker/configuration/section.rb +59 -0
  35. data/lib/llm_cost_tracker/configuration/tags.rb +52 -0
  36. data/lib/llm_cost_tracker/configuration.rb +69 -125
  37. data/lib/llm_cost_tracker/deprecator.rb +9 -0
  38. data/lib/llm_cost_tracker/doctor/ingestion_check.rb +17 -8
  39. data/lib/llm_cost_tracker/doctor/price_check.rb +1 -1
  40. data/lib/llm_cost_tracker/doctor.rb +4 -4
  41. data/lib/llm_cost_tracker/engine.rb +4 -0
  42. data/lib/llm_cost_tracker/errors.rb +12 -3
  43. data/lib/llm_cost_tracker/event.rb +3 -1
  44. data/lib/llm_cost_tracker/generators/llm_cost_tracker/async_ingestion_generator.rb +2 -2
  45. data/lib/llm_cost_tracker/generators/llm_cost_tracker/call_rollups_generator.rb +2 -2
  46. data/lib/llm_cost_tracker/generators/llm_cost_tracker/templates/create_llm_cost_tracker_async_ingestion.rb.erb +0 -1
  47. data/lib/llm_cost_tracker/generators/llm_cost_tracker/templates/create_llm_cost_tracker_calls.rb.erb +8 -4
  48. data/lib/llm_cost_tracker/generators/llm_cost_tracker/templates/initializer.rb.erb +50 -30
  49. data/lib/llm_cost_tracker/generators/llm_cost_tracker/templates/upgrade_indexes.rb.erb +40 -0
  50. data/lib/llm_cost_tracker/generators/llm_cost_tracker/templates/upgrade_per_tag_budgets.rb.erb +41 -0
  51. data/lib/llm_cost_tracker/generators/llm_cost_tracker/upgrade_indexes_generator.rb +30 -0
  52. data/lib/llm_cost_tracker/generators/llm_cost_tracker/upgrade_per_tag_budgets_generator.rb +30 -0
  53. data/lib/llm_cost_tracker/ingestion/batch.rb +27 -7
  54. data/lib/llm_cost_tracker/ingestion/pool.rb +9 -2
  55. data/lib/llm_cost_tracker/ingestion.rb +3 -7
  56. data/lib/llm_cost_tracker/integrations/anthropic.rb +8 -7
  57. data/lib/llm_cost_tracker/integrations/base.rb +1 -1
  58. data/lib/llm_cost_tracker/integrations/openai/batch_capture.rb +10 -12
  59. data/lib/llm_cost_tracker/ledger/period/totals.rb +1 -1
  60. data/lib/llm_cost_tracker/ledger/rollups.rb +34 -4
  61. data/lib/llm_cost_tracker/ledger/store.rb +16 -2
  62. data/lib/llm_cost_tracker/ledger/tags/encoding.rb +15 -5
  63. data/lib/llm_cost_tracker/logging.rb +3 -5
  64. data/lib/llm_cost_tracker/middleware/faraday.rb +1 -1
  65. data/lib/llm_cost_tracker/prices.json +1384 -304
  66. data/lib/llm_cost_tracker/pricing/backfill.rb +11 -1
  67. data/lib/llm_cost_tracker/pricing/calculation.rb +44 -25
  68. data/lib/llm_cost_tracker/pricing/effective_prices.rb +26 -15
  69. data/lib/llm_cost_tracker/pricing/matcher.rb +24 -3
  70. data/lib/llm_cost_tracker/pricing/mode.rb +7 -7
  71. data/lib/llm_cost_tracker/pricing/rate.rb +1 -2
  72. data/lib/llm_cost_tracker/pricing/registry.rb +5 -5
  73. data/lib/llm_cost_tracker/pricing/sync.rb +1 -1
  74. data/lib/llm_cost_tracker/pricing/unknown.rb +11 -8
  75. data/lib/llm_cost_tracker/providers/anthropic/usage_extractor.rb +3 -2
  76. data/lib/llm_cost_tracker/providers/openai/model_families.rb +0 -7
  77. data/lib/llm_cost_tracker/providers/openai/response_parser.rb +5 -2
  78. data/lib/llm_cost_tracker/providers/openai/usage_extractor.rb +5 -4
  79. data/lib/llm_cost_tracker/providers/openai_compatible/parser.rb +2 -2
  80. data/lib/llm_cost_tracker/railtie.rb +3 -7
  81. data/lib/llm_cost_tracker/report/data.rb +2 -2
  82. data/lib/llm_cost_tracker/retention.rb +22 -10
  83. data/lib/llm_cost_tracker/tags/context.rb +3 -3
  84. data/lib/llm_cost_tracker/tags/sanitizer.rb +4 -4
  85. data/lib/llm_cost_tracker/tracker.rb +16 -26
  86. data/lib/llm_cost_tracker/usage/catalog.rb +12 -2
  87. data/lib/llm_cost_tracker/usage/dimensions.yml +0 -24
  88. data/lib/llm_cost_tracker/usage/token_usage.rb +20 -75
  89. data/lib/llm_cost_tracker/version.rb +1 -1
  90. data/lib/llm_cost_tracker.rb +7 -2
  91. data/lib/tasks/llm_cost_tracker.rake +23 -10
  92. metadata +22 -9
@@ -4,18 +4,40 @@
4
4
  "min_gem_version": "0.4.0",
5
5
  "schema_version": 1,
6
6
  "source_urls": [
7
- "https://developers.openai.com/api/docs/pricing",
8
7
  "https://platform.claude.com/docs/en/about-claude/pricing",
9
8
  "https://ai.google.dev/gemini-api/docs/pricing",
10
9
  "https://console.groq.com/docs/models",
11
10
  "https://console.groq.com/docs/prompt-caching",
12
11
  "https://console.groq.com/docs/flex-processing",
13
- "https://console.groq.com/docs/service-tiers"
12
+ "https://console.groq.com/docs/deprecations",
13
+ "https://developers.openai.com/api/docs/pricing",
14
+ "https://developers.openai.com/api/docs/deprecations",
15
+ "https://developers.openai.com/api/docs/models/gpt-5.4",
16
+ "https://developers.openai.com/api/docs/models/gpt-5.4-pro",
17
+ "https://developers.openai.com/api/docs/models/gpt-5.5",
18
+ "https://developers.openai.com/api/docs/models/gpt-5.5-pro",
19
+ "https://openrouter.ai/api/v1/models"
14
20
  ],
15
21
  "unit": "1M tokens",
16
- "updated_at": "2026-06-03"
22
+ "updated_at": "2026-08-26"
17
23
  },
18
24
  "models": {
25
+ "anthropic/claude-fable-5": {
26
+ "batch_input": 5.0,
27
+ "batch_output": 25.0,
28
+ "cache_read_input": 1.0,
29
+ "cache_write_extended_input": 20.0,
30
+ "cache_write_input": 12.5,
31
+ "data_residency_batch_input": 5.5,
32
+ "data_residency_batch_output": 27.5,
33
+ "data_residency_cache_read_input": 1.1,
34
+ "data_residency_cache_write_extended_input": 22.0,
35
+ "data_residency_cache_write_input": 13.75,
36
+ "data_residency_input": 11.0,
37
+ "data_residency_output": 55.0,
38
+ "input": 10.0,
39
+ "output": 50.0
40
+ },
19
41
  "anthropic/claude-haiku-3": {
20
42
  "batch_input": 0.125,
21
43
  "batch_output": 0.625,
@@ -34,14 +56,21 @@
34
56
  "input": 1.0,
35
57
  "output": 5.0
36
58
  },
37
- "anthropic/claude-opus-4-1": {
38
- "batch_input": 7.5,
39
- "batch_output": 37.5,
40
- "cache_read_input": 1.5,
41
- "cache_write_extended_input": 30.0,
42
- "cache_write_input": 18.75,
43
- "input": 15.0,
44
- "output": 75.0
59
+ "anthropic/claude-mythos-5": {
60
+ "batch_input": 5.0,
61
+ "batch_output": 25.0,
62
+ "cache_read_input": 1.0,
63
+ "cache_write_extended_input": 20.0,
64
+ "cache_write_input": 12.5,
65
+ "data_residency_batch_input": 5.5,
66
+ "data_residency_batch_output": 27.5,
67
+ "data_residency_cache_read_input": 1.1,
68
+ "data_residency_cache_write_extended_input": 22.0,
69
+ "data_residency_cache_write_input": 13.75,
70
+ "data_residency_input": 11.0,
71
+ "data_residency_output": 55.0,
72
+ "input": 10.0,
73
+ "output": 50.0
45
74
  },
46
75
  "anthropic/claude-opus-4-5": {
47
76
  "batch_input": 2.5,
@@ -65,16 +94,6 @@
65
94
  "data_residency_cache_write_input": 6.875,
66
95
  "data_residency_input": 5.5,
67
96
  "data_residency_output": 27.5,
68
- "fast_cache_read_input": 3.0,
69
- "fast_cache_write_extended_input": 60.0,
70
- "fast_cache_write_input": 37.5,
71
- "fast_data_residency_cache_read_input": 3.3,
72
- "fast_data_residency_cache_write_extended_input": 66.0,
73
- "fast_data_residency_cache_write_input": 41.25,
74
- "fast_data_residency_input": 33.0,
75
- "fast_data_residency_output": 165.0,
76
- "fast_input": 30.0,
77
- "fast_output": 150.0,
78
97
  "input": 5.0,
79
98
  "output": 25.0
80
99
  },
@@ -107,6 +126,42 @@
107
126
  "data_residency_cache_write_input": 6.875,
108
127
  "data_residency_input": 5.5,
109
128
  "data_residency_output": 27.5,
129
+ "fast_cache_read_input": 1.0,
130
+ "fast_cache_write_extended_input": 20.0,
131
+ "fast_cache_write_input": 12.5,
132
+ "fast_data_residency_cache_read_input": 1.1,
133
+ "fast_data_residency_cache_write_extended_input": 22.0,
134
+ "fast_data_residency_cache_write_input": 13.75,
135
+ "fast_data_residency_input": 11.0,
136
+ "fast_data_residency_output": 55.0,
137
+ "fast_input": 10.0,
138
+ "fast_output": 50.0,
139
+ "input": 5.0,
140
+ "output": 25.0
141
+ },
142
+ "anthropic/claude-opus-5": {
143
+ "batch_input": 2.5,
144
+ "batch_output": 12.5,
145
+ "cache_read_input": 0.5,
146
+ "cache_write_extended_input": 10.0,
147
+ "cache_write_input": 6.25,
148
+ "data_residency_batch_input": 2.75,
149
+ "data_residency_batch_output": 13.75,
150
+ "data_residency_cache_read_input": 0.55,
151
+ "data_residency_cache_write_extended_input": 11.0,
152
+ "data_residency_cache_write_input": 6.875,
153
+ "data_residency_input": 5.5,
154
+ "data_residency_output": 27.5,
155
+ "fast_cache_read_input": 1.0,
156
+ "fast_cache_write_extended_input": 20.0,
157
+ "fast_cache_write_input": 12.5,
158
+ "fast_data_residency_cache_read_input": 1.1,
159
+ "fast_data_residency_cache_write_extended_input": 22.0,
160
+ "fast_data_residency_cache_write_input": 13.75,
161
+ "fast_data_residency_input": 11.0,
162
+ "fast_data_residency_output": 55.0,
163
+ "fast_input": 10.0,
164
+ "fast_output": 50.0,
110
165
  "input": 5.0,
111
166
  "output": 25.0
112
167
  },
@@ -135,6 +190,22 @@
135
190
  "input": 3.0,
136
191
  "output": 15.0
137
192
  },
193
+ "anthropic/claude-sonnet-5": {
194
+ "batch_input": 1.0,
195
+ "batch_output": 5.0,
196
+ "cache_read_input": 0.2,
197
+ "cache_write_extended_input": 4.0,
198
+ "cache_write_input": 2.5,
199
+ "data_residency_batch_input": 1.1,
200
+ "data_residency_batch_output": 5.5,
201
+ "data_residency_cache_read_input": 0.22,
202
+ "data_residency_cache_write_extended_input": 4.4,
203
+ "data_residency_cache_write_input": 2.75,
204
+ "data_residency_input": 2.2,
205
+ "data_residency_output": 11.0,
206
+ "input": 2.0,
207
+ "output": 10.0
208
+ },
138
209
  "gemini/gemini-2.0-flash": {
139
210
  "audio_input": 0.7,
140
211
  "batch_audio_input": 0.35,
@@ -142,6 +213,7 @@
142
213
  "batch_input": 0.05,
143
214
  "batch_output": 0.2,
144
215
  "cache_read_input": 0.025,
216
+ "grounding_request": 35.0,
145
217
  "input": 0.1,
146
218
  "output": 0.4
147
219
  },
@@ -162,6 +234,7 @@
162
234
  "flex_cache_read_input": 0.03,
163
235
  "flex_input": 0.15,
164
236
  "flex_output": 1.25,
237
+ "grounding_request": 35.0,
165
238
  "input": 0.3,
166
239
  "output": 2.5,
167
240
  "priority_audio_input": 1.8,
@@ -190,6 +263,7 @@
190
263
  "flex_cache_read_input": 0.01,
191
264
  "flex_input": 0.05,
192
265
  "flex_output": 0.2,
266
+ "grounding_request": 35.0,
193
267
  "input": 0.1,
194
268
  "output": 0.4,
195
269
  "priority_audio_input": 0.54,
@@ -204,6 +278,7 @@
204
278
  "batch_input": 0.05,
205
279
  "batch_output": 0.2,
206
280
  "cache_read_input": 0.01,
281
+ "grounding_request": 35.0,
207
282
  "input": 0.1,
208
283
  "output": 0.4
209
284
  },
@@ -228,6 +303,7 @@
228
303
  "flex_cache_read_input": 0.125,
229
304
  "flex_input": 0.625,
230
305
  "flex_output": 5.0,
306
+ "grounding_request": 35.0,
231
307
  "input": 1.25,
232
308
  "output": 10.0,
233
309
  "priority_cache_read_input": 0.225,
@@ -245,6 +321,7 @@
245
321
  "flex_cache_read_input": 0.05,
246
322
  "flex_input": 0.25,
247
323
  "flex_output": 1.5,
324
+ "grounding_request": 14.0,
248
325
  "input": 0.5,
249
326
  "output": 3.0,
250
327
  "priority_audio_input": 1.8,
@@ -257,6 +334,7 @@
257
334
  "batch_input": 1.0,
258
335
  "flex_image_output": 6.0,
259
336
  "flex_input": 1.0,
337
+ "grounding_request": 14.0,
260
338
  "image_output": 12.0,
261
339
  "input": 2.0,
262
340
  "priority_image_output": 21.6,
@@ -295,6 +373,7 @@
295
373
  "flex_cache_read_input": 0.0125,
296
374
  "flex_input": 0.125,
297
375
  "flex_output": 0.75,
376
+ "grounding_request": 14.0,
298
377
  "input": 0.25,
299
378
  "output": 1.5,
300
379
  "priority_audio_input": 0.9,
@@ -302,6 +381,12 @@
302
381
  "priority_input": 0.45,
303
382
  "priority_output": 2.7
304
383
  },
384
+ "gemini/gemini-3.1-flash-lite-image": {
385
+ "batch_image_output": 0.75,
386
+ "batch_input": 0.125,
387
+ "image_output": 1.5,
388
+ "input": 0.25
389
+ },
305
390
  "gemini/gemini-3.1-flash-lite-preview": {
306
391
  "audio_input": 0.5,
307
392
  "batch_audio_input": 0.25,
@@ -341,6 +426,7 @@
341
426
  "flex_cache_read_input": 0.2,
342
427
  "flex_input": 1.0,
343
428
  "flex_output": 6.0,
429
+ "grounding_request": 14.0,
344
430
  "input": 2.0,
345
431
  "output": 12.0,
346
432
  "priority_cache_read_input": 0.36,
@@ -355,27 +441,77 @@
355
441
  "flex_cache_read_input": 0.08,
356
442
  "flex_input": 0.75,
357
443
  "flex_output": 4.5,
444
+ "grounding_request": 14.0,
358
445
  "input": 1.5,
359
446
  "output": 9.0,
360
447
  "priority_cache_read_input": 0.27,
361
448
  "priority_input": 2.7,
362
449
  "priority_output": 16.2
363
450
  },
364
- "groq/llama-3.1-8b-instant": {
365
- "flex_input": 0.05,
366
- "flex_output": 0.08,
367
- "input": 0.05,
368
- "on_demand_input": 0.05,
369
- "on_demand_output": 0.08,
370
- "output": 0.08
451
+ "gemini/gemini-3.5-flash-lite": {
452
+ "audio_input": 0.3,
453
+ "batch_audio_input": 0.15,
454
+ "batch_cache_read_input": 0.02,
455
+ "batch_input": 0.15,
456
+ "batch_output": 1.25,
457
+ "cache_read_input": 0.03,
458
+ "flex_audio_input": 0.15,
459
+ "flex_cache_read_input": 0.02,
460
+ "flex_input": 0.15,
461
+ "flex_output": 1.25,
462
+ "grounding_request": 14.0,
463
+ "input": 0.3,
464
+ "output": 2.5,
465
+ "priority_audio_input": 0.54,
466
+ "priority_cache_read_input": 0.05,
467
+ "priority_input": 0.54,
468
+ "priority_output": 4.5
469
+ },
470
+ "gemini/gemini-3.6-flash": {
471
+ "batch_cache_read_input": 0.0375,
472
+ "batch_input": 0.375,
473
+ "batch_output": 1.875,
474
+ "cache_read_input": 0.075,
475
+ "flex_cache_read_input": 0.0375,
476
+ "flex_input": 0.375,
477
+ "flex_output": 1.875,
478
+ "grounding_request": 14.0,
479
+ "input": 0.75,
480
+ "output": 3.75,
481
+ "priority_cache_read_input": 0.135,
482
+ "priority_input": 1.35,
483
+ "priority_output": 6.75
484
+ },
485
+ "gemini/gemini-3.7-flash": {
486
+ "batch_cache_read_input": 0.0375,
487
+ "batch_input": 0.375,
488
+ "batch_output": 1.875,
489
+ "cache_read_input": 0.075,
490
+ "flex_cache_read_input": 0.0375,
491
+ "flex_input": 0.375,
492
+ "flex_output": 1.875,
493
+ "grounding_request": 14.0,
494
+ "input": 0.75,
495
+ "output": 3.75,
496
+ "priority_cache_read_input": 0.135,
497
+ "priority_input": 1.35,
498
+ "priority_output": 6.75
499
+ },
500
+ "groq/meta-llama/llama-prompt-guard-2-22m": {
501
+ "flex_input": 0.03,
502
+ "flex_output": 0.03,
503
+ "input": 0.03,
504
+ "on_demand_input": 0.03,
505
+ "on_demand_output": 0.03,
506
+ "output": 0.03
371
507
  },
372
- "groq/llama-3.3-70b-versatile": {
373
- "flex_input": 0.59,
374
- "flex_output": 0.79,
375
- "input": 0.59,
376
- "on_demand_input": 0.59,
377
- "on_demand_output": 0.79,
378
- "output": 0.79
508
+ "groq/meta-llama/llama-prompt-guard-2-86m": {
509
+ "flex_input": 0.04,
510
+ "flex_output": 0.04,
511
+ "input": 0.04,
512
+ "on_demand_input": 0.04,
513
+ "on_demand_output": 0.04,
514
+ "output": 0.04
379
515
  },
380
516
  "groq/openai/gpt-oss-120b": {
381
517
  "cache_read_input": 0.075,
@@ -399,9 +535,24 @@
399
535
  "on_demand_output": 0.3,
400
536
  "output": 0.3
401
537
  },
402
- "openai/chatgpt-4o-latest": {
403
- "input": 5.0,
404
- "output": 15.0
538
+ "groq/openai/gpt-oss-safeguard-20b": {
539
+ "cache_read_input": 0.0375,
540
+ "flex_cache_read_input": 0.0375,
541
+ "flex_input": 0.075,
542
+ "flex_output": 0.3,
543
+ "input": 0.075,
544
+ "on_demand_cache_read_input": 0.0375,
545
+ "on_demand_input": 0.075,
546
+ "on_demand_output": 0.3,
547
+ "output": 0.3
548
+ },
549
+ "groq/qwen/qwen3.6-27b": {
550
+ "flex_input": 0.6,
551
+ "flex_output": 3.0,
552
+ "input": 0.6,
553
+ "on_demand_input": 0.6,
554
+ "on_demand_output": 3.0,
555
+ "output": 3.0
405
556
  },
406
557
  "openai/chatgpt-image-latest": {
407
558
  "batch_cache_read_input": 0.63,
@@ -415,11 +566,6 @@
415
566
  "input": 5.0,
416
567
  "output": 10.0
417
568
  },
418
- "openai/codex-mini-latest": {
419
- "cache_read_input": 0.375,
420
- "input": 1.5,
421
- "output": 6.0
422
- },
423
569
  "openai/gpt-3.5-turbo": {
424
570
  "input": 0.5,
425
571
  "output": 1.5
@@ -440,6 +586,9 @@
440
586
  "batch_input": 1.0,
441
587
  "batch_output": 4.0,
442
588
  "cache_read_input": 0.5,
589
+ "fast_cache_read_input": 0.875,
590
+ "fast_input": 3.5,
591
+ "fast_output": 14.0,
443
592
  "input": 2.0,
444
593
  "output": 8.0,
445
594
  "priority_cache_read_input": 0.875,
@@ -450,6 +599,9 @@
450
599
  "batch_input": 0.2,
451
600
  "batch_output": 0.8,
452
601
  "cache_read_input": 0.1,
602
+ "fast_cache_read_input": 0.175,
603
+ "fast_input": 0.7,
604
+ "fast_output": 2.8,
453
605
  "input": 0.4,
454
606
  "output": 1.6,
455
607
  "priority_cache_read_input": 0.175,
@@ -460,6 +612,9 @@
460
612
  "batch_input": 0.05,
461
613
  "batch_output": 0.2,
462
614
  "cache_read_input": 0.025,
615
+ "fast_cache_read_input": 0.05,
616
+ "fast_input": 0.2,
617
+ "fast_output": 0.8,
463
618
  "input": 0.1,
464
619
  "output": 0.4,
465
620
  "priority_cache_read_input": 0.05,
@@ -470,6 +625,9 @@
470
625
  "batch_input": 1.25,
471
626
  "batch_output": 5.0,
472
627
  "cache_read_input": 1.25,
628
+ "fast_cache_read_input": 2.125,
629
+ "fast_input": 4.25,
630
+ "fast_output": 17.0,
473
631
  "input": 2.5,
474
632
  "output": 10.0,
475
633
  "priority_cache_read_input": 2.125,
@@ -479,52 +637,31 @@
479
637
  "openai/gpt-4o-2024-05-13": {
480
638
  "batch_input": 2.5,
481
639
  "batch_output": 7.5,
640
+ "fast_input": 8.75,
641
+ "fast_output": 26.25,
482
642
  "input": 5.0,
483
643
  "output": 15.0,
484
644
  "priority_input": 8.75,
485
645
  "priority_output": 26.25
486
646
  },
487
- "openai/gpt-4o-audio-preview": {
488
- "audio_input": 40.0,
489
- "audio_output": 80.0,
490
- "input": 2.5,
491
- "output": 10.0
492
- },
493
647
  "openai/gpt-4o-mini": {
494
648
  "batch_input": 0.075,
495
649
  "batch_output": 0.3,
496
650
  "cache_read_input": 0.075,
651
+ "fast_cache_read_input": 0.125,
652
+ "fast_input": 0.25,
653
+ "fast_output": 1.0,
497
654
  "input": 0.15,
498
655
  "output": 0.6,
499
656
  "priority_cache_read_input": 0.125,
500
657
  "priority_input": 0.25,
501
658
  "priority_output": 1.0
502
659
  },
503
- "openai/gpt-4o-mini-audio-preview": {
504
- "audio_input": 10.0,
505
- "audio_output": 20.0,
506
- "input": 0.15,
507
- "output": 0.6
508
- },
509
- "openai/gpt-4o-mini-realtime-preview": {
510
- "audio_input": 10.0,
511
- "audio_output": 20.0,
512
- "cache_read_input": 0.3,
513
- "input": 0.6,
514
- "output": 2.4
515
- },
516
660
  "openai/gpt-4o-mini-transcribe": {
517
661
  "audio_input": 3.0,
518
662
  "input": 1.25,
519
663
  "output": 5.0
520
664
  },
521
- "openai/gpt-4o-realtime-preview": {
522
- "audio_input": 40.0,
523
- "audio_output": 80.0,
524
- "cache_read_input": 2.5,
525
- "input": 5.0,
526
- "output": 20.0
527
- },
528
665
  "openai/gpt-4o-transcribe": {
529
666
  "audio_input": 6.0,
530
667
  "input": 2.5,
@@ -535,6 +672,9 @@
535
672
  "batch_input": 0.625,
536
673
  "batch_output": 5.0,
537
674
  "cache_read_input": 0.125,
675
+ "fast_cache_read_input": 0.25,
676
+ "fast_input": 2.5,
677
+ "fast_output": 20.0,
538
678
  "flex_cache_read_input": 0.0625,
539
679
  "flex_input": 0.625,
540
680
  "flex_output": 5.0,
@@ -544,24 +684,14 @@
544
684
  "priority_input": 2.5,
545
685
  "priority_output": 20.0
546
686
  },
547
- "openai/gpt-5-chat-latest": {
548
- "cache_read_input": 0.125,
549
- "input": 1.25,
550
- "output": 10.0
551
- },
552
- "openai/gpt-5-codex": {
553
- "cache_read_input": 0.125,
554
- "input": 1.25,
555
- "output": 10.0,
556
- "priority_cache_read_input": 0.25,
557
- "priority_input": 2.5,
558
- "priority_output": 20.0
559
- },
560
687
  "openai/gpt-5-mini": {
561
688
  "batch_cache_read_input": 0.0125,
562
689
  "batch_input": 0.125,
563
690
  "batch_output": 1.0,
564
691
  "cache_read_input": 0.025,
692
+ "fast_cache_read_input": 0.045,
693
+ "fast_input": 0.45,
694
+ "fast_output": 3.6,
565
695
  "flex_cache_read_input": 0.0125,
566
696
  "flex_input": 0.125,
567
697
  "flex_output": 1.0,
@@ -593,6 +723,9 @@
593
723
  "batch_input": 0.625,
594
724
  "batch_output": 5.0,
595
725
  "cache_read_input": 0.125,
726
+ "fast_cache_read_input": 0.25,
727
+ "fast_input": 2.5,
728
+ "fast_output": 20.0,
596
729
  "flex_cache_read_input": 0.0625,
597
730
  "flex_input": 0.625,
598
731
  "flex_output": 5.0,
@@ -602,37 +735,14 @@
602
735
  "priority_input": 2.5,
603
736
  "priority_output": 20.0
604
737
  },
605
- "openai/gpt-5.1-chat-latest": {
606
- "cache_read_input": 0.125,
607
- "input": 1.25,
608
- "output": 10.0
609
- },
610
- "openai/gpt-5.1-codex": {
611
- "cache_read_input": 0.125,
612
- "input": 1.25,
613
- "output": 10.0,
614
- "priority_cache_read_input": 0.25,
615
- "priority_input": 2.5,
616
- "priority_output": 20.0
617
- },
618
- "openai/gpt-5.1-codex-max": {
619
- "cache_read_input": 0.125,
620
- "input": 1.25,
621
- "output": 10.0,
622
- "priority_cache_read_input": 0.25,
623
- "priority_input": 2.5,
624
- "priority_output": 20.0
625
- },
626
- "openai/gpt-5.1-codex-mini": {
627
- "cache_read_input": 0.025,
628
- "input": 0.25,
629
- "output": 2.0
630
- },
631
738
  "openai/gpt-5.2": {
632
739
  "batch_cache_read_input": 0.0875,
633
740
  "batch_input": 0.875,
634
741
  "batch_output": 7.0,
635
742
  "cache_read_input": 0.175,
743
+ "fast_cache_read_input": 0.35,
744
+ "fast_input": 3.5,
745
+ "fast_output": 28.0,
636
746
  "flex_cache_read_input": 0.0875,
637
747
  "flex_input": 0.875,
638
748
  "flex_output": 7.0,
@@ -642,32 +752,17 @@
642
752
  "priority_input": 3.5,
643
753
  "priority_output": 28.0
644
754
  },
645
- "openai/gpt-5.2-chat-latest": {
646
- "cache_read_input": 0.175,
647
- "input": 1.75,
648
- "output": 14.0
649
- },
650
- "openai/gpt-5.2-codex": {
651
- "cache_read_input": 0.175,
652
- "input": 1.75,
653
- "output": 14.0,
654
- "priority_cache_read_input": 0.35,
655
- "priority_input": 3.5,
656
- "priority_output": 28.0
657
- },
658
755
  "openai/gpt-5.2-pro": {
659
756
  "batch_input": 10.5,
660
757
  "batch_output": 84.0,
661
758
  "input": 21.0,
662
759
  "output": 168.0
663
760
  },
664
- "openai/gpt-5.3-chat-latest": {
665
- "cache_read_input": 0.175,
666
- "input": 1.75,
667
- "output": 14.0
668
- },
669
761
  "openai/gpt-5.3-codex": {
670
762
  "cache_read_input": 0.175,
763
+ "fast_cache_read_input": 0.35,
764
+ "fast_input": 3.5,
765
+ "fast_output": 28.0,
671
766
  "input": 1.75,
672
767
  "output": 14.0,
673
768
  "priority_cache_read_input": 0.35,
@@ -676,8 +771,8 @@
676
771
  },
677
772
  "openai/gpt-5.4": {
678
773
  "_context_price_threshold_tokens": 272000,
679
- "above_context_batch_cache_read_input": 0.25,
680
- "above_context_batch_data_residency_cache_read_input": 0.275,
774
+ "above_context_batch_cache_read_input": 0.26,
775
+ "above_context_batch_data_residency_cache_read_input": 0.286,
681
776
  "above_context_batch_data_residency_input": 2.75,
682
777
  "above_context_batch_data_residency_output": 12.375,
683
778
  "above_context_batch_input": 2.5,
@@ -686,8 +781,8 @@
686
781
  "above_context_data_residency_cache_read_input": 0.55,
687
782
  "above_context_data_residency_input": 5.5,
688
783
  "above_context_data_residency_output": 24.75,
689
- "above_context_flex_cache_read_input": 0.25,
690
- "above_context_flex_data_residency_cache_read_input": 0.275,
784
+ "above_context_flex_cache_read_input": 0.26,
785
+ "above_context_flex_data_residency_cache_read_input": 0.286,
691
786
  "above_context_flex_data_residency_input": 2.75,
692
787
  "above_context_flex_data_residency_output": 12.375,
693
788
  "above_context_flex_input": 2.5,
@@ -704,6 +799,12 @@
704
799
  "data_residency_cache_read_input": 0.275,
705
800
  "data_residency_input": 2.75,
706
801
  "data_residency_output": 16.5,
802
+ "fast_cache_read_input": 0.5,
803
+ "fast_data_residency_cache_read_input": 0.55,
804
+ "fast_data_residency_input": 5.5,
805
+ "fast_data_residency_output": 33.0,
806
+ "fast_input": 5.0,
807
+ "fast_output": 30.0,
707
808
  "flex_cache_read_input": 0.13,
708
809
  "flex_data_residency_cache_read_input": 0.143,
709
810
  "flex_data_residency_input": 1.375,
@@ -730,6 +831,12 @@
730
831
  "data_residency_cache_read_input": 0.0825,
731
832
  "data_residency_input": 0.825,
732
833
  "data_residency_output": 4.95,
834
+ "fast_cache_read_input": 0.15,
835
+ "fast_data_residency_cache_read_input": 0.165,
836
+ "fast_data_residency_input": 1.65,
837
+ "fast_data_residency_output": 9.9,
838
+ "fast_input": 1.5,
839
+ "fast_output": 9.0,
733
840
  "flex_cache_read_input": 0.0375,
734
841
  "flex_data_residency_cache_read_input": 0.04125,
735
842
  "flex_data_residency_input": 0.4125,
@@ -822,6 +929,12 @@
822
929
  "data_residency_cache_read_input": 0.55,
823
930
  "data_residency_input": 5.5,
824
931
  "data_residency_output": 33.0,
932
+ "fast_cache_read_input": 1.25,
933
+ "fast_data_residency_cache_read_input": 1.375,
934
+ "fast_data_residency_input": 13.75,
935
+ "fast_data_residency_output": 82.5,
936
+ "fast_input": 12.5,
937
+ "fast_output": 75.0,
825
938
  "flex_cache_read_input": 0.25,
826
939
  "flex_data_residency_cache_read_input": 0.275,
827
940
  "flex_data_residency_input": 2.75,
@@ -837,12 +950,12 @@
837
950
  "priority_input": 12.5,
838
951
  "priority_output": 75.0
839
952
  },
953
+ "openai/gpt-5.5-cyber": {
954
+ "cache_read_input": 1.25,
955
+ "input": 12.5,
956
+ "output": 75.0
957
+ },
840
958
  "openai/gpt-5.5-pro": {
841
- "_context_price_threshold_tokens": 272000,
842
- "above_context_data_residency_input": 66.0,
843
- "above_context_data_residency_output": 297.0,
844
- "above_context_input": 60.0,
845
- "above_context_output": 270.0,
846
959
  "batch_data_residency_input": 16.5,
847
960
  "batch_data_residency_output": 99.0,
848
961
  "batch_input": 15.0,
@@ -856,6 +969,255 @@
856
969
  "input": 30.0,
857
970
  "output": 180.0
858
971
  },
972
+ "openai/gpt-5.6-luna": {
973
+ "_context_price_threshold_tokens": 272000,
974
+ "above_context_batch_cache_read_input": 0.02,
975
+ "above_context_batch_cache_write_input": 0.25,
976
+ "above_context_batch_data_residency_cache_read_input": 0.022,
977
+ "above_context_batch_data_residency_cache_write_input": 0.275,
978
+ "above_context_batch_data_residency_input": 0.22,
979
+ "above_context_batch_data_residency_output": 0.99,
980
+ "above_context_batch_input": 0.2,
981
+ "above_context_batch_output": 0.9,
982
+ "above_context_cache_read_input": 0.04,
983
+ "above_context_cache_write_input": 0.5,
984
+ "above_context_data_residency_cache_read_input": 0.044,
985
+ "above_context_data_residency_cache_write_input": 0.55,
986
+ "above_context_data_residency_input": 0.44,
987
+ "above_context_data_residency_output": 1.98,
988
+ "above_context_fast_cache_read_input": 0.08,
989
+ "above_context_fast_cache_write_input": 1.0,
990
+ "above_context_fast_data_residency_cache_read_input": 0.088,
991
+ "above_context_fast_data_residency_cache_write_input": 1.1,
992
+ "above_context_fast_data_residency_input": 0.88,
993
+ "above_context_fast_data_residency_output": 3.96,
994
+ "above_context_fast_input": 0.8,
995
+ "above_context_fast_output": 3.6,
996
+ "above_context_flex_cache_read_input": 0.02,
997
+ "above_context_flex_cache_write_input": 0.25,
998
+ "above_context_flex_data_residency_cache_read_input": 0.022,
999
+ "above_context_flex_data_residency_cache_write_input": 0.275,
1000
+ "above_context_flex_data_residency_input": 0.22,
1001
+ "above_context_flex_data_residency_output": 0.99,
1002
+ "above_context_flex_input": 0.2,
1003
+ "above_context_flex_output": 0.9,
1004
+ "above_context_input": 0.4,
1005
+ "above_context_output": 1.8,
1006
+ "above_context_priority_cache_read_input": 0.08,
1007
+ "above_context_priority_cache_write_input": 1.0,
1008
+ "above_context_priority_data_residency_cache_read_input": 0.088,
1009
+ "above_context_priority_data_residency_cache_write_input": 1.1,
1010
+ "above_context_priority_data_residency_input": 0.88,
1011
+ "above_context_priority_data_residency_output": 3.96,
1012
+ "above_context_priority_input": 0.8,
1013
+ "above_context_priority_output": 3.6,
1014
+ "batch_cache_read_input": 0.01,
1015
+ "batch_cache_write_input": 0.125,
1016
+ "batch_data_residency_cache_read_input": 0.011,
1017
+ "batch_data_residency_cache_write_input": 0.1375,
1018
+ "batch_data_residency_input": 0.11,
1019
+ "batch_data_residency_output": 0.66,
1020
+ "batch_input": 0.1,
1021
+ "batch_output": 0.6,
1022
+ "cache_read_input": 0.02,
1023
+ "cache_write_input": 0.25,
1024
+ "data_residency_cache_read_input": 0.022,
1025
+ "data_residency_cache_write_input": 0.275,
1026
+ "data_residency_input": 0.22,
1027
+ "data_residency_output": 1.32,
1028
+ "fast_cache_read_input": 0.04,
1029
+ "fast_cache_write_input": 0.5,
1030
+ "fast_data_residency_cache_read_input": 0.044,
1031
+ "fast_data_residency_cache_write_input": 0.55,
1032
+ "fast_data_residency_input": 0.44,
1033
+ "fast_data_residency_output": 2.64,
1034
+ "fast_input": 0.4,
1035
+ "fast_output": 2.4,
1036
+ "flex_cache_read_input": 0.01,
1037
+ "flex_cache_write_input": 0.125,
1038
+ "flex_data_residency_cache_read_input": 0.011,
1039
+ "flex_data_residency_cache_write_input": 0.1375,
1040
+ "flex_data_residency_input": 0.11,
1041
+ "flex_data_residency_output": 0.66,
1042
+ "flex_input": 0.1,
1043
+ "flex_output": 0.6,
1044
+ "input": 0.2,
1045
+ "output": 1.2,
1046
+ "priority_cache_read_input": 0.04,
1047
+ "priority_cache_write_input": 0.5,
1048
+ "priority_data_residency_cache_read_input": 0.044,
1049
+ "priority_data_residency_cache_write_input": 0.55,
1050
+ "priority_data_residency_input": 0.44,
1051
+ "priority_data_residency_output": 2.64,
1052
+ "priority_input": 0.4,
1053
+ "priority_output": 2.4
1054
+ },
1055
+ "openai/gpt-5.6-sol": {
1056
+ "_context_price_threshold_tokens": 272000,
1057
+ "above_context_batch_cache_read_input": 0.4,
1058
+ "above_context_batch_cache_write_input": 5.0,
1059
+ "above_context_batch_data_residency_cache_read_input": 0.44,
1060
+ "above_context_batch_data_residency_cache_write_input": 5.5,
1061
+ "above_context_batch_data_residency_input": 4.4,
1062
+ "above_context_batch_data_residency_output": 16.5,
1063
+ "above_context_batch_input": 4.0,
1064
+ "above_context_batch_output": 15.0,
1065
+ "above_context_cache_read_input": 0.8,
1066
+ "above_context_cache_write_input": 10.0,
1067
+ "above_context_data_residency_cache_read_input": 0.88,
1068
+ "above_context_data_residency_cache_write_input": 11.0,
1069
+ "above_context_data_residency_input": 8.8,
1070
+ "above_context_data_residency_output": 33.0,
1071
+ "above_context_fast_cache_read_input": 1.6,
1072
+ "above_context_fast_cache_write_input": 20.0,
1073
+ "above_context_fast_data_residency_cache_read_input": 1.76,
1074
+ "above_context_fast_data_residency_cache_write_input": 22.0,
1075
+ "above_context_fast_data_residency_input": 17.6,
1076
+ "above_context_fast_data_residency_output": 66.0,
1077
+ "above_context_fast_input": 16.0,
1078
+ "above_context_fast_output": 60.0,
1079
+ "above_context_flex_cache_read_input": 0.4,
1080
+ "above_context_flex_cache_write_input": 5.0,
1081
+ "above_context_flex_data_residency_cache_read_input": 0.44,
1082
+ "above_context_flex_data_residency_cache_write_input": 5.5,
1083
+ "above_context_flex_data_residency_input": 4.4,
1084
+ "above_context_flex_data_residency_output": 16.5,
1085
+ "above_context_flex_input": 4.0,
1086
+ "above_context_flex_output": 15.0,
1087
+ "above_context_input": 8.0,
1088
+ "above_context_output": 30.0,
1089
+ "above_context_priority_cache_read_input": 1.6,
1090
+ "above_context_priority_cache_write_input": 20.0,
1091
+ "above_context_priority_data_residency_cache_read_input": 1.76,
1092
+ "above_context_priority_data_residency_cache_write_input": 22.0,
1093
+ "above_context_priority_data_residency_input": 17.6,
1094
+ "above_context_priority_data_residency_output": 66.0,
1095
+ "above_context_priority_input": 16.0,
1096
+ "above_context_priority_output": 60.0,
1097
+ "batch_cache_read_input": 0.2,
1098
+ "batch_cache_write_input": 2.5,
1099
+ "batch_data_residency_cache_read_input": 0.22,
1100
+ "batch_data_residency_cache_write_input": 2.75,
1101
+ "batch_data_residency_input": 2.2,
1102
+ "batch_data_residency_output": 11.0,
1103
+ "batch_input": 2.0,
1104
+ "batch_output": 10.0,
1105
+ "cache_read_input": 0.4,
1106
+ "cache_write_input": 5.0,
1107
+ "data_residency_cache_read_input": 0.44,
1108
+ "data_residency_cache_write_input": 5.5,
1109
+ "data_residency_input": 4.4,
1110
+ "data_residency_output": 22.0,
1111
+ "fast_cache_read_input": 0.8,
1112
+ "fast_cache_write_input": 10.0,
1113
+ "fast_data_residency_cache_read_input": 0.88,
1114
+ "fast_data_residency_cache_write_input": 11.0,
1115
+ "fast_data_residency_input": 8.8,
1116
+ "fast_data_residency_output": 44.0,
1117
+ "fast_input": 8.0,
1118
+ "fast_output": 40.0,
1119
+ "flex_cache_read_input": 0.2,
1120
+ "flex_cache_write_input": 2.5,
1121
+ "flex_data_residency_cache_read_input": 0.22,
1122
+ "flex_data_residency_cache_write_input": 2.75,
1123
+ "flex_data_residency_input": 2.2,
1124
+ "flex_data_residency_output": 11.0,
1125
+ "flex_input": 2.0,
1126
+ "flex_output": 10.0,
1127
+ "input": 4.0,
1128
+ "output": 20.0,
1129
+ "priority_cache_read_input": 0.8,
1130
+ "priority_cache_write_input": 10.0,
1131
+ "priority_data_residency_cache_read_input": 0.88,
1132
+ "priority_data_residency_cache_write_input": 11.0,
1133
+ "priority_data_residency_input": 8.8,
1134
+ "priority_data_residency_output": 44.0,
1135
+ "priority_input": 8.0,
1136
+ "priority_output": 40.0
1137
+ },
1138
+ "openai/gpt-5.6-terra": {
1139
+ "_context_price_threshold_tokens": 272000,
1140
+ "above_context_batch_cache_read_input": 0.2,
1141
+ "above_context_batch_cache_write_input": 2.5,
1142
+ "above_context_batch_data_residency_cache_read_input": 0.22,
1143
+ "above_context_batch_data_residency_cache_write_input": 2.75,
1144
+ "above_context_batch_data_residency_input": 2.2,
1145
+ "above_context_batch_data_residency_output": 9.9,
1146
+ "above_context_batch_input": 2.0,
1147
+ "above_context_batch_output": 9.0,
1148
+ "above_context_cache_read_input": 0.4,
1149
+ "above_context_cache_write_input": 5.0,
1150
+ "above_context_data_residency_cache_read_input": 0.44,
1151
+ "above_context_data_residency_cache_write_input": 5.5,
1152
+ "above_context_data_residency_input": 4.4,
1153
+ "above_context_data_residency_output": 19.8,
1154
+ "above_context_fast_cache_read_input": 0.8,
1155
+ "above_context_fast_cache_write_input": 10.0,
1156
+ "above_context_fast_data_residency_cache_read_input": 0.88,
1157
+ "above_context_fast_data_residency_cache_write_input": 11.0,
1158
+ "above_context_fast_data_residency_input": 8.8,
1159
+ "above_context_fast_data_residency_output": 39.6,
1160
+ "above_context_fast_input": 8.0,
1161
+ "above_context_fast_output": 36.0,
1162
+ "above_context_flex_cache_read_input": 0.2,
1163
+ "above_context_flex_cache_write_input": 2.5,
1164
+ "above_context_flex_data_residency_cache_read_input": 0.22,
1165
+ "above_context_flex_data_residency_cache_write_input": 2.75,
1166
+ "above_context_flex_data_residency_input": 2.2,
1167
+ "above_context_flex_data_residency_output": 9.9,
1168
+ "above_context_flex_input": 2.0,
1169
+ "above_context_flex_output": 9.0,
1170
+ "above_context_input": 4.0,
1171
+ "above_context_output": 18.0,
1172
+ "above_context_priority_cache_read_input": 0.8,
1173
+ "above_context_priority_cache_write_input": 10.0,
1174
+ "above_context_priority_data_residency_cache_read_input": 0.88,
1175
+ "above_context_priority_data_residency_cache_write_input": 11.0,
1176
+ "above_context_priority_data_residency_input": 8.8,
1177
+ "above_context_priority_data_residency_output": 39.6,
1178
+ "above_context_priority_input": 8.0,
1179
+ "above_context_priority_output": 36.0,
1180
+ "batch_cache_read_input": 0.1,
1181
+ "batch_cache_write_input": 1.25,
1182
+ "batch_data_residency_cache_read_input": 0.11,
1183
+ "batch_data_residency_cache_write_input": 1.375,
1184
+ "batch_data_residency_input": 1.1,
1185
+ "batch_data_residency_output": 6.6,
1186
+ "batch_input": 1.0,
1187
+ "batch_output": 6.0,
1188
+ "cache_read_input": 0.2,
1189
+ "cache_write_input": 2.5,
1190
+ "data_residency_cache_read_input": 0.22,
1191
+ "data_residency_cache_write_input": 2.75,
1192
+ "data_residency_input": 2.2,
1193
+ "data_residency_output": 13.2,
1194
+ "fast_cache_read_input": 0.4,
1195
+ "fast_cache_write_input": 5.0,
1196
+ "fast_data_residency_cache_read_input": 0.44,
1197
+ "fast_data_residency_cache_write_input": 5.5,
1198
+ "fast_data_residency_input": 4.4,
1199
+ "fast_data_residency_output": 26.4,
1200
+ "fast_input": 4.0,
1201
+ "fast_output": 24.0,
1202
+ "flex_cache_read_input": 0.1,
1203
+ "flex_cache_write_input": 1.25,
1204
+ "flex_data_residency_cache_read_input": 0.11,
1205
+ "flex_data_residency_cache_write_input": 1.375,
1206
+ "flex_data_residency_input": 1.1,
1207
+ "flex_data_residency_output": 6.6,
1208
+ "flex_input": 1.0,
1209
+ "flex_output": 6.0,
1210
+ "input": 2.0,
1211
+ "output": 12.0,
1212
+ "priority_cache_read_input": 0.4,
1213
+ "priority_cache_write_input": 5.0,
1214
+ "priority_data_residency_cache_read_input": 0.44,
1215
+ "priority_data_residency_cache_write_input": 5.5,
1216
+ "priority_data_residency_input": 4.4,
1217
+ "priority_data_residency_output": 26.4,
1218
+ "priority_input": 4.0,
1219
+ "priority_output": 24.0
1220
+ },
859
1221
  "openai/gpt-audio": {
860
1222
  "audio_input": 32.0,
861
1223
  "audio_output": 64.0,
@@ -916,6 +1278,9 @@
916
1278
  "image_output": 30.0,
917
1279
  "input": 5.0
918
1280
  },
1281
+ "openai/gpt-live-transcribe": {
1282
+ "transcription_minute": 0.017
1283
+ },
919
1284
  "openai/gpt-realtime": {
920
1285
  "audio_input": 32.0,
921
1286
  "audio_output": 64.0,
@@ -932,6 +1297,30 @@
932
1297
  "input": 4.0,
933
1298
  "output": 16.0
934
1299
  },
1300
+ "openai/gpt-realtime-2": {
1301
+ "audio_input": 32.0,
1302
+ "audio_output": 64.0,
1303
+ "cache_read_input": 0.4,
1304
+ "image_input": 5.0,
1305
+ "input": 4.0,
1306
+ "output": 24.0
1307
+ },
1308
+ "openai/gpt-realtime-2.1": {
1309
+ "audio_input": 32.0,
1310
+ "audio_output": 64.0,
1311
+ "cache_read_input": 0.4,
1312
+ "image_input": 5.0,
1313
+ "input": 4.0,
1314
+ "output": 24.0
1315
+ },
1316
+ "openai/gpt-realtime-2.1-mini": {
1317
+ "audio_input": 10.0,
1318
+ "audio_output": 20.0,
1319
+ "cache_read_input": 0.06,
1320
+ "image_input": 0.8,
1321
+ "input": 0.6,
1322
+ "output": 2.4
1323
+ },
935
1324
  "openai/gpt-realtime-mini": {
936
1325
  "audio_input": 10.0,
937
1326
  "audio_output": 20.0,
@@ -940,6 +1329,15 @@
940
1329
  "input": 0.6,
941
1330
  "output": 2.4
942
1331
  },
1332
+ "openai/gpt-realtime-translate": {
1333
+ "transcription_minute": 0.034
1334
+ },
1335
+ "openai/gpt-realtime-whisper": {
1336
+ "transcription_minute": 0.017
1337
+ },
1338
+ "openai/gpt-transcribe": {
1339
+ "transcription_minute": 0.0045
1340
+ },
943
1341
  "openai/o1": {
944
1342
  "batch_input": 7.5,
945
1343
  "batch_output": 30.0,
@@ -947,13 +1345,6 @@
947
1345
  "input": 15.0,
948
1346
  "output": 60.0
949
1347
  },
950
- "openai/o1-mini": {
951
- "batch_input": 0.55,
952
- "batch_output": 2.2,
953
- "cache_read_input": 0.55,
954
- "input": 1.1,
955
- "output": 4.4
956
- },
957
1348
  "openai/o1-pro": {
958
1349
  "batch_input": 75.0,
959
1350
  "batch_output": 300.0,
@@ -964,6 +1355,9 @@
964
1355
  "batch_input": 1.0,
965
1356
  "batch_output": 4.0,
966
1357
  "cache_read_input": 0.5,
1358
+ "fast_cache_read_input": 0.875,
1359
+ "fast_input": 3.5,
1360
+ "fast_output": 14.0,
967
1361
  "flex_cache_read_input": 0.25,
968
1362
  "flex_input": 1.0,
969
1363
  "flex_output": 4.0,
@@ -990,6 +1384,9 @@
990
1384
  "batch_input": 0.55,
991
1385
  "batch_output": 2.2,
992
1386
  "cache_read_input": 0.275,
1387
+ "fast_cache_read_input": 0.5,
1388
+ "fast_input": 2.0,
1389
+ "fast_output": 8.0,
993
1390
  "flex_cache_read_input": 0.138,
994
1391
  "flex_input": 0.55,
995
1392
  "flex_output": 2.2,
@@ -1034,6 +1431,16 @@
1034
1431
  "input": 0.8,
1035
1432
  "output": 1.6
1036
1433
  },
1434
+ "openrouter/aion-labs/aion-3.0": {
1435
+ "cache_read_input": 0.75,
1436
+ "input": 3.0,
1437
+ "output": 6.0
1438
+ },
1439
+ "openrouter/aion-labs/aion-3.0-mini": {
1440
+ "cache_read_input": 0.18,
1441
+ "input": 0.7,
1442
+ "output": 1.4
1443
+ },
1037
1444
  "openrouter/aion-labs/aion-rp-llama-3.1-8b": {
1038
1445
  "input": 0.8,
1039
1446
  "output": 1.6
@@ -1083,15 +1490,33 @@
1083
1490
  "input": 0.8,
1084
1491
  "output": 4.0
1085
1492
  },
1493
+ "openrouter/anthropic/claude-fable-5": {
1494
+ "cache_read_input": 1.0,
1495
+ "cache_write_input": 12.5,
1496
+ "input": 10.0,
1497
+ "output": 50.0
1498
+ },
1499
+ "openrouter/anthropic/claude-fable-5:batch": {
1500
+ "cache_read_input": 0.5,
1501
+ "cache_write_input": 6.25,
1502
+ "input": 5.0,
1503
+ "output": 25.0
1504
+ },
1086
1505
  "openrouter/anthropic/claude-haiku-4.5": {
1087
1506
  "cache_read_input": 0.1,
1088
1507
  "cache_write_input": 1.25,
1089
1508
  "input": 1.0,
1090
1509
  "output": 5.0
1091
1510
  },
1092
- "openrouter/anthropic/claude-opus-4": {
1093
- "cache_read_input": 1.5,
1094
- "cache_write_input": 18.75,
1511
+ "openrouter/anthropic/claude-haiku-4.5:batch": {
1512
+ "cache_read_input": 0.05,
1513
+ "cache_write_input": 0.625,
1514
+ "input": 0.5,
1515
+ "output": 2.5
1516
+ },
1517
+ "openrouter/anthropic/claude-opus-4": {
1518
+ "cache_read_input": 1.5,
1519
+ "cache_write_input": 18.75,
1095
1520
  "input": 15.0,
1096
1521
  "output": 75.0
1097
1522
  },
@@ -1101,12 +1526,24 @@
1101
1526
  "input": 15.0,
1102
1527
  "output": 75.0
1103
1528
  },
1529
+ "openrouter/anthropic/claude-opus-4.1:batch": {
1530
+ "cache_read_input": 0.75,
1531
+ "cache_write_input": 9.375,
1532
+ "input": 7.5,
1533
+ "output": 37.5
1534
+ },
1104
1535
  "openrouter/anthropic/claude-opus-4.5": {
1105
1536
  "cache_read_input": 0.5,
1106
1537
  "cache_write_input": 6.25,
1107
1538
  "input": 5.0,
1108
1539
  "output": 25.0
1109
1540
  },
1541
+ "openrouter/anthropic/claude-opus-4.5:batch": {
1542
+ "cache_read_input": 0.25,
1543
+ "cache_write_input": 3.125,
1544
+ "input": 2.5,
1545
+ "output": 12.5
1546
+ },
1110
1547
  "openrouter/anthropic/claude-opus-4.6": {
1111
1548
  "cache_read_input": 0.5,
1112
1549
  "cache_write_input": 6.25,
@@ -1119,6 +1556,12 @@
1119
1556
  "input": 30.0,
1120
1557
  "output": 150.0
1121
1558
  },
1559
+ "openrouter/anthropic/claude-opus-4.6:batch": {
1560
+ "cache_read_input": 0.25,
1561
+ "cache_write_input": 3.125,
1562
+ "input": 2.5,
1563
+ "output": 12.5
1564
+ },
1122
1565
  "openrouter/anthropic/claude-opus-4.7": {
1123
1566
  "cache_read_input": 0.5,
1124
1567
  "cache_write_input": 6.25,
@@ -1131,6 +1574,12 @@
1131
1574
  "input": 30.0,
1132
1575
  "output": 150.0
1133
1576
  },
1577
+ "openrouter/anthropic/claude-opus-4.7:batch": {
1578
+ "cache_read_input": 0.25,
1579
+ "cache_write_input": 3.125,
1580
+ "input": 2.5,
1581
+ "output": 12.5
1582
+ },
1134
1583
  "openrouter/anthropic/claude-opus-4.8": {
1135
1584
  "cache_read_input": 0.5,
1136
1585
  "cache_write_input": 6.25,
@@ -1143,6 +1592,30 @@
1143
1592
  "input": 10.0,
1144
1593
  "output": 50.0
1145
1594
  },
1595
+ "openrouter/anthropic/claude-opus-4.8:batch": {
1596
+ "cache_read_input": 0.25,
1597
+ "cache_write_input": 3.125,
1598
+ "input": 2.5,
1599
+ "output": 12.5
1600
+ },
1601
+ "openrouter/anthropic/claude-opus-5": {
1602
+ "cache_read_input": 0.5,
1603
+ "cache_write_input": 6.25,
1604
+ "input": 5.0,
1605
+ "output": 25.0
1606
+ },
1607
+ "openrouter/anthropic/claude-opus-5-fast": {
1608
+ "cache_read_input": 1.0,
1609
+ "cache_write_input": 12.5,
1610
+ "input": 10.0,
1611
+ "output": 50.0
1612
+ },
1613
+ "openrouter/anthropic/claude-opus-5:batch": {
1614
+ "cache_read_input": 0.25,
1615
+ "cache_write_input": 3.125,
1616
+ "input": 2.5,
1617
+ "output": 12.5
1618
+ },
1146
1619
  "openrouter/anthropic/claude-sonnet-4": {
1147
1620
  "cache_read_input": 0.3,
1148
1621
  "cache_write_input": 3.75,
@@ -1155,12 +1628,36 @@
1155
1628
  "input": 3.0,
1156
1629
  "output": 15.0
1157
1630
  },
1631
+ "openrouter/anthropic/claude-sonnet-4.5:batch": {
1632
+ "cache_read_input": 0.15,
1633
+ "cache_write_input": 1.875,
1634
+ "input": 1.5,
1635
+ "output": 7.5
1636
+ },
1158
1637
  "openrouter/anthropic/claude-sonnet-4.6": {
1159
1638
  "cache_read_input": 0.3,
1160
1639
  "cache_write_input": 3.75,
1161
1640
  "input": 3.0,
1162
1641
  "output": 15.0
1163
1642
  },
1643
+ "openrouter/anthropic/claude-sonnet-4.6:batch": {
1644
+ "cache_read_input": 0.15,
1645
+ "cache_write_input": 1.875,
1646
+ "input": 1.5,
1647
+ "output": 7.5
1648
+ },
1649
+ "openrouter/anthropic/claude-sonnet-5": {
1650
+ "cache_read_input": 0.2,
1651
+ "cache_write_input": 2.5,
1652
+ "input": 2.0,
1653
+ "output": 10.0
1654
+ },
1655
+ "openrouter/anthropic/claude-sonnet-5:batch": {
1656
+ "cache_read_input": 0.1,
1657
+ "cache_write_input": 1.25,
1658
+ "input": 1.0,
1659
+ "output": 5.0
1660
+ },
1164
1661
  "openrouter/arcee-ai/coder-large": {
1165
1662
  "input": 0.5,
1166
1663
  "output": 0.8
@@ -1218,6 +1715,14 @@
1218
1715
  "input": 0.075,
1219
1716
  "output": 0.3
1220
1717
  },
1718
+ "openrouter/bytedance-seed/seed-2-1-turbo": {
1719
+ "input": 0.5,
1720
+ "output": 2.5
1721
+ },
1722
+ "openrouter/bytedance-seed/seed-2.0-code": {
1723
+ "input": 0.5,
1724
+ "output": 3.0
1725
+ },
1221
1726
  "openrouter/bytedance-seed/seed-2.0-lite": {
1222
1727
  "input": 0.25,
1223
1728
  "output": 2.0
@@ -1231,6 +1736,10 @@
1231
1736
  "input": 0.1,
1232
1737
  "output": 0.2
1233
1738
  },
1739
+ "openrouter/cognitivecomputations/dolphin-mistral-24b-venice-edition": {
1740
+ "input": 0.2,
1741
+ "output": 0.9
1742
+ },
1234
1743
  "openrouter/cohere/command-a": {
1235
1744
  "input": 2.5,
1236
1745
  "output": 10.0
@@ -1252,18 +1761,17 @@
1252
1761
  "output": 1.25
1253
1762
  },
1254
1763
  "openrouter/deepseek/deepseek-chat": {
1255
- "input": 0.2002,
1256
- "output": 0.8001
1764
+ "input": 0.2574,
1765
+ "output": 1.0287
1257
1766
  },
1258
1767
  "openrouter/deepseek/deepseek-chat-v3-0324": {
1259
- "cache_read_input": 0.135,
1260
- "input": 0.2,
1261
- "output": 0.77
1768
+ "input": 0.25,
1769
+ "output": 1.0
1262
1770
  },
1263
1771
  "openrouter/deepseek/deepseek-chat-v3.1": {
1264
- "cache_read_input": 0.13,
1265
- "input": 0.21,
1266
- "output": 0.79
1772
+ "cache_read_input": 0.55,
1773
+ "input": 0.55,
1774
+ "output": 1.65
1267
1775
  },
1268
1776
  "openrouter/deepseek/deepseek-r1": {
1269
1777
  "input": 0.7,
@@ -1275,7 +1783,7 @@
1275
1783
  "output": 2.15
1276
1784
  },
1277
1785
  "openrouter/deepseek/deepseek-r1-distill-llama-70b": {
1278
- "input": 0.7,
1786
+ "input": 0.8,
1279
1787
  "output": 0.8
1280
1788
  },
1281
1789
  "openrouter/deepseek/deepseek-r1-distill-qwen-32b": {
@@ -1283,13 +1791,14 @@
1283
1791
  "output": 0.29
1284
1792
  },
1285
1793
  "openrouter/deepseek/deepseek-v3.1-terminus": {
1286
- "cache_read_input": 0.13,
1794
+ "cache_read_input": 0.135,
1287
1795
  "input": 0.27,
1288
- "output": 0.95
1796
+ "output": 1.0
1289
1797
  },
1290
1798
  "openrouter/deepseek/deepseek-v3.2": {
1291
- "input": 0.2288,
1292
- "output": 0.3432
1799
+ "cache_read_input": 0.13,
1800
+ "input": 0.26,
1801
+ "output": 0.38
1293
1802
  },
1294
1803
  "openrouter/deepseek/deepseek-v3.2-exp": {
1295
1804
  "input": 0.27,
@@ -1301,14 +1810,29 @@
1301
1810
  "output": 0.431
1302
1811
  },
1303
1812
  "openrouter/deepseek/deepseek-v4-flash": {
1304
- "cache_read_input": 0.0197,
1305
- "input": 0.0983,
1306
- "output": 0.1966
1813
+ "cache_read_input": 0.017721,
1814
+ "input": 0.088606,
1815
+ "output": 0.177212
1816
+ },
1817
+ "openrouter/deepseek/deepseek-v4-flash-0731": {
1818
+ "cache_read_input": 0.012,
1819
+ "input": 0.06,
1820
+ "output": 0.12
1821
+ },
1822
+ "openrouter/deepseek/deepseek-v4-flash-vision-exp": {
1823
+ "cache_read_input": 0.014,
1824
+ "input": 0.44,
1825
+ "output": 1.32
1307
1826
  },
1308
1827
  "openrouter/deepseek/deepseek-v4-pro": {
1309
- "cache_read_input": 0.003625,
1310
- "input": 0.435,
1311
- "output": 0.87
1828
+ "cache_read_input": 0.0725,
1829
+ "input": 0.87,
1830
+ "output": 1.74
1831
+ },
1832
+ "openrouter/deepseek/deepseek-v4-pro-0813": {
1833
+ "cache_read_input": 0.0374,
1834
+ "input": 1.122,
1835
+ "output": 3.366
1312
1836
  },
1313
1837
  "openrouter/essentialai/rnj-1-instruct": {
1314
1838
  "input": 0.15,
@@ -1360,6 +1884,20 @@
1360
1884
  "input": 0.1,
1361
1885
  "output": 0.4
1362
1886
  },
1887
+ "openrouter/google/gemini-2.5-flash-lite:batch": {
1888
+ "audio_input": 0.15,
1889
+ "cache_read_input": 0.01,
1890
+ "image_input": 0.05,
1891
+ "input": 0.05,
1892
+ "output": 0.2
1893
+ },
1894
+ "openrouter/google/gemini-2.5-flash:batch": {
1895
+ "audio_input": 0.5,
1896
+ "cache_read_input": 0.03,
1897
+ "image_input": 0.15,
1898
+ "input": 0.15,
1899
+ "output": 1.25
1900
+ },
1363
1901
  "openrouter/google/gemini-2.5-pro": {
1364
1902
  "audio_input": 1.25,
1365
1903
  "cache_read_input": 0.125,
@@ -1384,6 +1922,13 @@
1384
1922
  "input": 1.25,
1385
1923
  "output": 10.0
1386
1924
  },
1925
+ "openrouter/google/gemini-2.5-pro:batch": {
1926
+ "audio_input": 0.625,
1927
+ "cache_read_input": 0.125,
1928
+ "image_input": 0.625,
1929
+ "input": 0.625,
1930
+ "output": 5.0
1931
+ },
1387
1932
  "openrouter/google/gemini-3-flash-preview": {
1388
1933
  "audio_input": 1.0,
1389
1934
  "cache_read_input": 0.05,
@@ -1392,6 +1937,20 @@
1392
1937
  "input": 0.5,
1393
1938
  "output": 3.0
1394
1939
  },
1940
+ "openrouter/google/gemini-3-flash-preview:batch": {
1941
+ "audio_input": 0.5,
1942
+ "image_input": 0.25,
1943
+ "input": 0.25,
1944
+ "output": 1.5
1945
+ },
1946
+ "openrouter/google/gemini-3-pro-image": {
1947
+ "audio_input": 2.0,
1948
+ "cache_read_input": 0.2,
1949
+ "cache_write_input": 0.375,
1950
+ "image_input": 2.0,
1951
+ "input": 2.0,
1952
+ "output": 12.0
1953
+ },
1395
1954
  "openrouter/google/gemini-3-pro-image-preview": {
1396
1955
  "audio_input": 2.0,
1397
1956
  "cache_read_input": 0.2,
@@ -1400,6 +1959,10 @@
1400
1959
  "input": 2.0,
1401
1960
  "output": 12.0
1402
1961
  },
1962
+ "openrouter/google/gemini-3.1-flash-image": {
1963
+ "input": 0.5,
1964
+ "output": 3.0
1965
+ },
1403
1966
  "openrouter/google/gemini-3.1-flash-image-preview": {
1404
1967
  "input": 0.5,
1405
1968
  "output": 3.0
@@ -1412,6 +1975,10 @@
1412
1975
  "input": 0.25,
1413
1976
  "output": 1.5
1414
1977
  },
1978
+ "openrouter/google/gemini-3.1-flash-lite-image": {
1979
+ "input": 0.25,
1980
+ "output": 1.5
1981
+ },
1415
1982
  "openrouter/google/gemini-3.1-flash-lite-preview": {
1416
1983
  "audio_input": 0.5,
1417
1984
  "cache_read_input": 0.025,
@@ -1420,6 +1987,13 @@
1420
1987
  "input": 0.25,
1421
1988
  "output": 1.5
1422
1989
  },
1990
+ "openrouter/google/gemini-3.1-flash-lite:batch": {
1991
+ "audio_input": 0.25,
1992
+ "cache_read_input": 0.0125,
1993
+ "image_input": 0.125,
1994
+ "input": 0.125,
1995
+ "output": 0.75
1996
+ },
1423
1997
  "openrouter/google/gemini-3.1-pro-preview": {
1424
1998
  "audio_input": 2.0,
1425
1999
  "cache_read_input": 0.2,
@@ -1436,6 +2010,12 @@
1436
2010
  "input": 2.0,
1437
2011
  "output": 12.0
1438
2012
  },
2013
+ "openrouter/google/gemini-3.1-pro-preview:batch": {
2014
+ "audio_input": 1.0,
2015
+ "image_input": 1.0,
2016
+ "input": 1.0,
2017
+ "output": 6.0
2018
+ },
1439
2019
  "openrouter/google/gemini-3.5-flash": {
1440
2020
  "audio_input": 3.0,
1441
2021
  "cache_read_input": 0.15,
@@ -1444,33 +2024,89 @@
1444
2024
  "input": 1.5,
1445
2025
  "output": 9.0
1446
2026
  },
2027
+ "openrouter/google/gemini-3.5-flash-lite": {
2028
+ "audio_input": 0.3,
2029
+ "cache_read_input": 0.03,
2030
+ "cache_write_input": 0.083333,
2031
+ "image_input": 0.3,
2032
+ "input": 0.3,
2033
+ "output": 2.5
2034
+ },
2035
+ "openrouter/google/gemini-3.5-flash-lite:batch": {
2036
+ "audio_input": 0.15,
2037
+ "cache_read_input": 0.015,
2038
+ "image_input": 0.15,
2039
+ "input": 0.15,
2040
+ "output": 1.25
2041
+ },
2042
+ "openrouter/google/gemini-3.5-flash:batch": {
2043
+ "audio_input": 1.5,
2044
+ "cache_read_input": 0.075,
2045
+ "image_input": 0.75,
2046
+ "input": 0.75,
2047
+ "output": 4.5
2048
+ },
2049
+ "openrouter/google/gemini-3.6-flash": {
2050
+ "audio_input": 0.75,
2051
+ "cache_read_input": 0.075,
2052
+ "cache_write_input": 0.041667,
2053
+ "image_input": 0.75,
2054
+ "input": 0.75,
2055
+ "output": 3.75
2056
+ },
2057
+ "openrouter/google/gemini-3.6-flash:batch": {
2058
+ "audio_input": 0.375,
2059
+ "cache_read_input": 0.0375,
2060
+ "cache_write_input": 0.041667,
2061
+ "image_input": 0.375,
2062
+ "input": 0.375,
2063
+ "output": 1.875
2064
+ },
2065
+ "openrouter/google/gemini-3.7-flash": {
2066
+ "audio_input": 0.375,
2067
+ "cache_read_input": 0.0375,
2068
+ "cache_write_input": 0.020833,
2069
+ "image_input": 0.375,
2070
+ "input": 0.375,
2071
+ "output": 1.875
2072
+ },
2073
+ "openrouter/google/gemini-3.7-flash:batch": {
2074
+ "audio_input": 0.1875,
2075
+ "cache_read_input": 0.01875,
2076
+ "cache_write_input": 0.020833,
2077
+ "image_input": 0.1875,
2078
+ "input": 0.1875,
2079
+ "output": 0.9375
2080
+ },
1447
2081
  "openrouter/google/gemma-2-27b-it": {
1448
2082
  "input": 0.65,
1449
2083
  "output": 0.65
1450
2084
  },
1451
2085
  "openrouter/google/gemma-3-12b-it": {
1452
- "input": 0.04,
1453
- "output": 0.13
2086
+ "input": 0.05,
2087
+ "output": 0.15
1454
2088
  },
1455
2089
  "openrouter/google/gemma-3-27b-it": {
2090
+ "cache_read_input": 0.04,
1456
2091
  "input": 0.08,
1457
- "output": 0.16
2092
+ "output": 0.45
1458
2093
  },
1459
2094
  "openrouter/google/gemma-3-4b-it": {
1460
- "input": 0.04,
1461
- "output": 0.08
2095
+ "input": 0.05,
2096
+ "output": 0.1
1462
2097
  },
1463
2098
  "openrouter/google/gemma-3n-e4b-it": {
1464
2099
  "input": 0.06,
1465
2100
  "output": 0.12
1466
2101
  },
1467
2102
  "openrouter/google/gemma-4-26b-a4b-it": {
1468
- "input": 0.06,
1469
- "output": 0.33
2103
+ "input": 0.07,
2104
+ "output": 0.34
1470
2105
  },
1471
2106
  "openrouter/google/gemma-4-31b-it": {
1472
- "input": 0.12,
1473
- "output": 0.37
2107
+ "cache_read_input": 0.05,
2108
+ "input": 0.09,
2109
+ "output": 0.34
1474
2110
  },
1475
2111
  "openrouter/gryphe/mythomax-l2-13b": {
1476
2112
  "input": 0.06,
@@ -1500,6 +2136,11 @@
1500
2136
  "input": 0.01,
1501
2137
  "output": 0.03
1502
2138
  },
2139
+ "openrouter/inclusionai/ling-3.0-flash": {
2140
+ "cache_read_input": 0.0042,
2141
+ "input": 0.021,
2142
+ "output": 0.063
2143
+ },
1503
2144
  "openrouter/inclusionai/ring-2.6-1t": {
1504
2145
  "cache_read_input": 0.015,
1505
2146
  "input": 0.075,
@@ -1513,58 +2154,76 @@
1513
2154
  "input": 2.5,
1514
2155
  "output": 10.0
1515
2156
  },
2157
+ "openrouter/kwaipilot/kat-coder-air-v2.5": {
2158
+ "cache_read_input": 0.03,
2159
+ "input": 0.15,
2160
+ "output": 0.6
2161
+ },
1516
2162
  "openrouter/kwaipilot/kat-coder-pro-v2": {
1517
2163
  "cache_read_input": 0.06,
1518
2164
  "input": 0.3,
1519
2165
  "output": 1.2
1520
2166
  },
2167
+ "openrouter/kwaipilot/kat-coder-pro-v2.5": {
2168
+ "cache_read_input": 0.15,
2169
+ "input": 0.74,
2170
+ "output": 2.96
2171
+ },
1521
2172
  "openrouter/liquid/lfm-2-24b-a2b": {
1522
2173
  "input": 0.03,
1523
2174
  "output": 0.12
1524
2175
  },
1525
2176
  "openrouter/mancer/weaver": {
1526
- "input": 0.75,
1527
- "output": 1.0
2177
+ "input": 0.5,
2178
+ "output": 0.75
2179
+ },
2180
+ "openrouter/meituan/longcat-2.0": {
2181
+ "cache_read_input": 0.006,
2182
+ "input": 0.3,
2183
+ "output": 1.2
1528
2184
  },
1529
2185
  "openrouter/meta-llama/llama-3-70b-instruct": {
1530
2186
  "input": 0.51,
1531
2187
  "output": 0.74
1532
2188
  },
1533
2189
  "openrouter/meta-llama/llama-3-8b-instruct": {
1534
- "input": 0.04,
1535
- "output": 0.04
2190
+ "input": 0.14,
2191
+ "output": 0.14
1536
2192
  },
1537
2193
  "openrouter/meta-llama/llama-3.1-70b-instruct": {
1538
2194
  "input": 0.4,
1539
2195
  "output": 0.4
1540
2196
  },
1541
2197
  "openrouter/meta-llama/llama-3.1-8b-instruct": {
1542
- "input": 0.02,
1543
- "output": 0.05
2198
+ "cache_read_input": 0.025,
2199
+ "input": 0.05,
2200
+ "output": 0.08
1544
2201
  },
1545
2202
  "openrouter/meta-llama/llama-3.2-11b-vision-instruct": {
1546
- "input": 0.245,
1547
- "output": 0.245
2203
+ "input": 0.345,
2204
+ "output": 0.345
1548
2205
  },
1549
2206
  "openrouter/meta-llama/llama-3.2-1b-instruct": {
1550
2207
  "input": 0.027,
1551
2208
  "output": 0.201
1552
2209
  },
1553
2210
  "openrouter/meta-llama/llama-3.2-3b-instruct": {
1554
- "input": 0.0509,
1555
- "output": 0.335
2211
+ "input": 0.05,
2212
+ "output": 0.33
1556
2213
  },
1557
2214
  "openrouter/meta-llama/llama-3.3-70b-instruct": {
1558
- "input": 0.1,
1559
- "output": 0.32
2215
+ "cache_read_input": 0.71,
2216
+ "input": 0.71,
2217
+ "output": 0.71
1560
2218
  },
1561
2219
  "openrouter/meta-llama/llama-4-maverick": {
1562
- "input": 0.15,
1563
- "output": 0.6
2220
+ "input": 0.2,
2221
+ "output": 0.8
1564
2222
  },
1565
2223
  "openrouter/meta-llama/llama-4-scout": {
1566
- "input": 0.08,
1567
- "output": 0.3
2224
+ "cache_read_input": 0.055,
2225
+ "input": 0.11,
2226
+ "output": 0.34
1568
2227
  },
1569
2228
  "openrouter/meta-llama/llama-guard-3-8b": {
1570
2229
  "input": 0.484,
@@ -1574,8 +2233,28 @@
1574
2233
  "input": 0.18,
1575
2234
  "output": 0.18
1576
2235
  },
2236
+ "openrouter/meta/muse-glimmer-30b": {
2237
+ "cache_read_input": 0.04,
2238
+ "input": 0.35,
2239
+ "output": 1.5
2240
+ },
2241
+ "openrouter/meta/muse-spark-1.1": {
2242
+ "cache_read_input": 0.15,
2243
+ "input": 1.25,
2244
+ "output": 4.25
2245
+ },
2246
+ "openrouter/meta/muse-spark-1.2": {
2247
+ "cache_read_input": 0.15,
2248
+ "input": 1.25,
2249
+ "output": 4.25
2250
+ },
2251
+ "openrouter/meta/muse-spark-1.2-contributor": {
2252
+ "cache_read_input": 0.002,
2253
+ "input": 0.1,
2254
+ "output": 0.2
2255
+ },
1577
2256
  "openrouter/microsoft/phi-4": {
1578
- "input": 0.065,
2257
+ "input": 0.07,
1579
2258
  "output": 0.14
1580
2259
  },
1581
2260
  "openrouter/microsoft/phi-4-mini-instruct": {
@@ -1592,13 +2271,12 @@
1592
2271
  "output": 1.1
1593
2272
  },
1594
2273
  "openrouter/minimax/minimax-m1": {
1595
- "input": 0.4,
2274
+ "input": 0.55,
1596
2275
  "output": 2.2
1597
2276
  },
1598
2277
  "openrouter/minimax/minimax-m2": {
1599
- "cache_read_input": 0.03,
1600
2278
  "input": 0.255,
1601
- "output": 1.0
2279
+ "output": 1.02
1602
2280
  },
1603
2281
  "openrouter/minimax/minimax-m2-her": {
1604
2282
  "cache_read_input": 0.03,
@@ -1607,15 +2285,17 @@
1607
2285
  },
1608
2286
  "openrouter/minimax/minimax-m2.1": {
1609
2287
  "cache_read_input": 0.03,
1610
- "input": 0.29,
1611
- "output": 0.95
2288
+ "input": 0.3,
2289
+ "output": 1.2
1612
2290
  },
1613
2291
  "openrouter/minimax/minimax-m2.5": {
1614
- "input": 0.15,
1615
- "output": 1.15
2292
+ "cache_read_input": 0.027,
2293
+ "input": 0.27,
2294
+ "output": 1.08
1616
2295
  },
1617
2296
  "openrouter/minimax/minimax-m2.7": {
1618
- "input": 0.279,
2297
+ "cache_read_input": 0.06,
2298
+ "input": 0.3,
1619
2299
  "output": 1.2
1620
2300
  },
1621
2301
  "openrouter/minimax/minimax-m3": {
@@ -1623,15 +2303,20 @@
1623
2303
  "input": 0.3,
1624
2304
  "output": 1.2
1625
2305
  },
2306
+ "openrouter/minimax/minimax-m3:batch": {
2307
+ "cache_read_input": 0.06,
2308
+ "input": 0.3,
2309
+ "output": 1.2
2310
+ },
1626
2311
  "openrouter/mistralai/codestral-2508": {
1627
2312
  "cache_read_input": 0.03,
1628
2313
  "input": 0.3,
1629
2314
  "output": 0.9
1630
2315
  },
1631
2316
  "openrouter/mistralai/devstral-2512": {
1632
- "cache_read_input": 0.04,
1633
- "input": 0.4,
1634
- "output": 2.0
2317
+ "cache_read_input": 0.044,
2318
+ "input": 0.44,
2319
+ "output": 2.2
1635
2320
  },
1636
2321
  "openrouter/mistralai/devstral-medium": {
1637
2322
  "cache_read_input": 0.04,
@@ -1653,6 +2338,10 @@
1653
2338
  "input": 0.1,
1654
2339
  "output": 0.1
1655
2340
  },
2341
+ "openrouter/mistralai/ministral-8b": {
2342
+ "input": 0.11,
2343
+ "output": 0.11
2344
+ },
1656
2345
  "openrouter/mistralai/ministral-8b-2512": {
1657
2346
  "cache_read_input": 0.015,
1658
2347
  "input": 0.15,
@@ -1697,7 +2386,7 @@
1697
2386
  "output": 2.0
1698
2387
  },
1699
2388
  "openrouter/mistralai/mistral-nemo": {
1700
- "input": 0.02,
2389
+ "input": 0.019,
1701
2390
  "output": 0.03
1702
2391
  },
1703
2392
  "openrouter/mistralai/mistral-saba": {
@@ -1747,18 +2436,34 @@
1747
2436
  "output": 2.5
1748
2437
  },
1749
2438
  "openrouter/moonshotai/kimi-k2-thinking": {
2439
+ "cache_read_input": 0.15,
1750
2440
  "input": 0.6,
1751
2441
  "output": 2.5
1752
2442
  },
1753
2443
  "openrouter/moonshotai/kimi-k2.5": {
1754
- "cache_read_input": 0.09,
1755
- "input": 0.4,
1756
- "output": 1.9
2444
+ "cache_read_input": 0.1,
2445
+ "input": 0.6,
2446
+ "output": 3.0
1757
2447
  },
1758
2448
  "openrouter/moonshotai/kimi-k2.6": {
1759
- "cache_read_input": 0.144,
1760
- "input": 0.684,
1761
- "output": 3.42
2449
+ "cache_read_input": 0.16,
2450
+ "input": 0.95,
2451
+ "output": 4.0
2452
+ },
2453
+ "openrouter/moonshotai/kimi-k2.7-code": {
2454
+ "cache_read_input": 0.19,
2455
+ "input": 0.67,
2456
+ "output": 3.4
2457
+ },
2458
+ "openrouter/moonshotai/kimi-k2.7-code:batch": {
2459
+ "cache_read_input": 0.19,
2460
+ "input": 0.95,
2461
+ "output": 4.0
2462
+ },
2463
+ "openrouter/moonshotai/kimi-k3": {
2464
+ "cache_read_input": 0.3,
2465
+ "input": 3.0,
2466
+ "output": 15.0
1762
2467
  },
1763
2468
  "openrouter/morph/morph-v3-fast": {
1764
2469
  "input": 0.8,
@@ -1772,6 +2477,16 @@
1772
2477
  "input": 0.135,
1773
2478
  "output": 0.5
1774
2479
  },
2480
+ "openrouter/nex-agi/nex-n2-mini": {
2481
+ "cache_read_input": 0.0025,
2482
+ "input": 0.025,
2483
+ "output": 0.1
2484
+ },
2485
+ "openrouter/nex-agi/nex-n2-pro": {
2486
+ "cache_read_input": 0.025,
2487
+ "input": 0.25,
2488
+ "output": 1.0
2489
+ },
1775
2490
  "openrouter/nousresearch/hermes-2-pro-llama-3-8b": {
1776
2491
  "input": 0.14,
1777
2492
  "output": 0.14
@@ -1781,8 +2496,8 @@
1781
2496
  "output": 1.0
1782
2497
  },
1783
2498
  "openrouter/nousresearch/hermes-3-llama-3.1-70b": {
1784
- "input": 0.3,
1785
- "output": 0.3
2499
+ "input": 0.7,
2500
+ "output": 0.7
1786
2501
  },
1787
2502
  "openrouter/nousresearch/hermes-4-405b": {
1788
2503
  "input": 1.0,
@@ -1793,16 +2508,32 @@
1793
2508
  "output": 0.4
1794
2509
  },
1795
2510
  "openrouter/nvidia/llama-3.3-nemotron-super-49b-v1.5": {
1796
- "input": 0.1,
2511
+ "input": 0.4,
1797
2512
  "output": 0.4
1798
2513
  },
1799
2514
  "openrouter/nvidia/nemotron-3-nano-30b-a3b": {
2515
+ "cache_read_input": 0.03,
1800
2516
  "input": 0.05,
1801
2517
  "output": 0.2
1802
2518
  },
1803
2519
  "openrouter/nvidia/nemotron-3-super-120b-a12b": {
1804
- "input": 0.09,
1805
- "output": 0.45
2520
+ "input": 0.085,
2521
+ "output": 0.4
2522
+ },
2523
+ "openrouter/nvidia/nemotron-3-ultra-550b-a55b": {
2524
+ "cache_read_input": 0.2,
2525
+ "input": 0.6,
2526
+ "output": 3.6
2527
+ },
2528
+ "openrouter/nvidia/nemotron-3-ultra-550b-a55b:batch": {
2529
+ "cache_read_input": 0.2,
2530
+ "input": 0.6,
2531
+ "output": 3.6
2532
+ },
2533
+ "openrouter/nvidia/nemotron-3.5-lightning": {
2534
+ "cache_read_input": 0.04,
2535
+ "input": 0.08,
2536
+ "output": 0.2
1806
2537
  },
1807
2538
  "openrouter/nvidia/nemotron-nano-9b-v2": {
1808
2539
  "input": 0.04,
@@ -1824,6 +2555,10 @@
1824
2555
  "input": 1.5,
1825
2556
  "output": 2.0
1826
2557
  },
2558
+ "openrouter/openai/gpt-3.5-turbo:batch": {
2559
+ "input": 0.25,
2560
+ "output": 0.75
2561
+ },
1827
2562
  "openrouter/openai/gpt-4": {
1828
2563
  "input": 30.0,
1829
2564
  "output": 60.0
@@ -1844,6 +2579,10 @@
1844
2579
  "input": 10.0,
1845
2580
  "output": 30.0
1846
2581
  },
2582
+ "openrouter/openai/gpt-4-turbo:batch": {
2583
+ "input": 5.0,
2584
+ "output": 15.0
2585
+ },
1847
2586
  "openrouter/openai/gpt-4.1": {
1848
2587
  "cache_read_input": 0.5,
1849
2588
  "input": 2.0,
@@ -1854,12 +2593,28 @@
1854
2593
  "input": 0.4,
1855
2594
  "output": 1.6
1856
2595
  },
2596
+ "openrouter/openai/gpt-4.1-mini:batch": {
2597
+ "cache_read_input": 0.05,
2598
+ "input": 0.2,
2599
+ "output": 0.8
2600
+ },
1857
2601
  "openrouter/openai/gpt-4.1-nano": {
1858
2602
  "cache_read_input": 0.025,
1859
2603
  "input": 0.1,
1860
2604
  "output": 0.4
1861
2605
  },
2606
+ "openrouter/openai/gpt-4.1-nano:batch": {
2607
+ "cache_read_input": 0.0125,
2608
+ "input": 0.05,
2609
+ "output": 0.2
2610
+ },
2611
+ "openrouter/openai/gpt-4.1:batch": {
2612
+ "cache_read_input": 0.25,
2613
+ "input": 1.0,
2614
+ "output": 4.0
2615
+ },
1862
2616
  "openrouter/openai/gpt-4o": {
2617
+ "cache_read_input": 1.25,
1863
2618
  "input": 2.5,
1864
2619
  "output": 10.0
1865
2620
  },
@@ -1896,10 +2651,20 @@
1896
2651
  "input": 0.15,
1897
2652
  "output": 0.6
1898
2653
  },
2654
+ "openrouter/openai/gpt-4o-mini:batch": {
2655
+ "cache_read_input": 0.0375,
2656
+ "input": 0.075,
2657
+ "output": 0.3
2658
+ },
1899
2659
  "openrouter/openai/gpt-4o-search-preview": {
1900
2660
  "input": 2.5,
1901
2661
  "output": 10.0
1902
2662
  },
2663
+ "openrouter/openai/gpt-4o:batch": {
2664
+ "cache_read_input": 0.625,
2665
+ "input": 1.25,
2666
+ "output": 5.0
2667
+ },
1903
2668
  "openrouter/openai/gpt-5": {
1904
2669
  "cache_read_input": 0.125,
1905
2670
  "input": 1.25,
@@ -1915,6 +2680,11 @@
1915
2680
  "input": 1.25,
1916
2681
  "output": 10.0
1917
2682
  },
2683
+ "openrouter/openai/gpt-5-codex:batch": {
2684
+ "cache_read_input": 0.0625,
2685
+ "input": 0.625,
2686
+ "output": 5.0
2687
+ },
1918
2688
  "openrouter/openai/gpt-5-image": {
1919
2689
  "cache_read_input": 1.25,
1920
2690
  "input": 10.0,
@@ -1930,17 +2700,31 @@
1930
2700
  "input": 0.25,
1931
2701
  "output": 2.0
1932
2702
  },
2703
+ "openrouter/openai/gpt-5-mini:batch": {
2704
+ "cache_read_input": 0.0125,
2705
+ "input": 0.125,
2706
+ "output": 1.0
2707
+ },
1933
2708
  "openrouter/openai/gpt-5-nano": {
1934
- "cache_read_input": 0.01,
2709
+ "cache_read_input": 0.005,
1935
2710
  "input": 0.05,
1936
2711
  "output": 0.4
1937
2712
  },
2713
+ "openrouter/openai/gpt-5-nano:batch": {
2714
+ "cache_read_input": 0.0025,
2715
+ "input": 0.025,
2716
+ "output": 0.2
2717
+ },
1938
2718
  "openrouter/openai/gpt-5-pro": {
1939
2719
  "input": 15.0,
1940
2720
  "output": 120.0
1941
2721
  },
2722
+ "openrouter/openai/gpt-5-pro:batch": {
2723
+ "input": 7.5,
2724
+ "output": 60.0
2725
+ },
1942
2726
  "openrouter/openai/gpt-5.1": {
1943
- "cache_read_input": 0.13,
2727
+ "cache_read_input": 0.125,
1944
2728
  "input": 1.25,
1945
2729
  "output": 10.0
1946
2730
  },
@@ -1960,10 +2744,15 @@
1960
2744
  "output": 10.0
1961
2745
  },
1962
2746
  "openrouter/openai/gpt-5.1-codex-mini": {
1963
- "cache_read_input": 0.025,
2747
+ "cache_read_input": 0.03,
1964
2748
  "input": 0.25,
1965
2749
  "output": 2.0
1966
2750
  },
2751
+ "openrouter/openai/gpt-5.1:batch": {
2752
+ "cache_read_input": 0.0625,
2753
+ "input": 0.625,
2754
+ "output": 5.0
2755
+ },
1967
2756
  "openrouter/openai/gpt-5.2": {
1968
2757
  "cache_read_input": 0.175,
1969
2758
  "input": 1.75,
@@ -1983,6 +2772,15 @@
1983
2772
  "input": 21.0,
1984
2773
  "output": 168.0
1985
2774
  },
2775
+ "openrouter/openai/gpt-5.2-pro:batch": {
2776
+ "input": 10.5,
2777
+ "output": 84.0
2778
+ },
2779
+ "openrouter/openai/gpt-5.2:batch": {
2780
+ "cache_read_input": 0.0875,
2781
+ "input": 0.875,
2782
+ "output": 7.0
2783
+ },
1986
2784
  "openrouter/openai/gpt-5.3-chat": {
1987
2785
  "cache_read_input": 0.175,
1988
2786
  "input": 1.75,
@@ -2008,15 +2806,34 @@
2008
2806
  "input": 0.75,
2009
2807
  "output": 4.5
2010
2808
  },
2809
+ "openrouter/openai/gpt-5.4-mini:batch": {
2810
+ "cache_read_input": 0.0375,
2811
+ "input": 0.375,
2812
+ "output": 2.25
2813
+ },
2011
2814
  "openrouter/openai/gpt-5.4-nano": {
2012
2815
  "cache_read_input": 0.02,
2013
2816
  "input": 0.2,
2014
2817
  "output": 1.25
2015
2818
  },
2819
+ "openrouter/openai/gpt-5.4-nano:batch": {
2820
+ "cache_read_input": 0.01,
2821
+ "input": 0.1,
2822
+ "output": 0.625
2823
+ },
2016
2824
  "openrouter/openai/gpt-5.4-pro": {
2017
2825
  "input": 30.0,
2018
2826
  "output": 180.0
2019
2827
  },
2828
+ "openrouter/openai/gpt-5.4-pro:batch": {
2829
+ "input": 15.0,
2830
+ "output": 90.0
2831
+ },
2832
+ "openrouter/openai/gpt-5.4:batch": {
2833
+ "cache_read_input": 0.125,
2834
+ "input": 1.25,
2835
+ "output": 7.5
2836
+ },
2020
2837
  "openrouter/openai/gpt-5.5": {
2021
2838
  "cache_read_input": 0.5,
2022
2839
  "input": 5.0,
@@ -2026,6 +2843,88 @@
2026
2843
  "input": 30.0,
2027
2844
  "output": 180.0
2028
2845
  },
2846
+ "openrouter/openai/gpt-5.5-pro:batch": {
2847
+ "input": 15.0,
2848
+ "output": 90.0
2849
+ },
2850
+ "openrouter/openai/gpt-5.5:batch": {
2851
+ "cache_read_input": 0.25,
2852
+ "input": 2.5,
2853
+ "output": 15.0
2854
+ },
2855
+ "openrouter/openai/gpt-5.6-luna": {
2856
+ "cache_read_input": 0.02,
2857
+ "cache_write_input": 0.25,
2858
+ "input": 0.2,
2859
+ "output": 1.2
2860
+ },
2861
+ "openrouter/openai/gpt-5.6-luna-pro": {
2862
+ "cache_read_input": 0.02,
2863
+ "cache_write_input": 0.25,
2864
+ "input": 0.2,
2865
+ "output": 1.2
2866
+ },
2867
+ "openrouter/openai/gpt-5.6-luna-pro:batch": {
2868
+ "cache_read_input": 0.01,
2869
+ "input": 0.1,
2870
+ "output": 0.6
2871
+ },
2872
+ "openrouter/openai/gpt-5.6-luna:batch": {
2873
+ "cache_read_input": 0.01,
2874
+ "input": 0.1,
2875
+ "output": 0.6
2876
+ },
2877
+ "openrouter/openai/gpt-5.6-sol": {
2878
+ "cache_read_input": 0.2,
2879
+ "cache_write_input": 2.5,
2880
+ "input": 2.0,
2881
+ "output": 10.0
2882
+ },
2883
+ "openrouter/openai/gpt-5.6-sol-pro": {
2884
+ "cache_read_input": 0.2,
2885
+ "cache_write_input": 2.5,
2886
+ "input": 2.0,
2887
+ "output": 10.0
2888
+ },
2889
+ "openrouter/openai/gpt-5.6-sol-pro:batch": {
2890
+ "cache_read_input": 0.1,
2891
+ "cache_write_input": 1.25,
2892
+ "input": 1.0,
2893
+ "output": 5.0
2894
+ },
2895
+ "openrouter/openai/gpt-5.6-sol:batch": {
2896
+ "cache_read_input": 0.1,
2897
+ "cache_write_input": 1.25,
2898
+ "input": 1.0,
2899
+ "output": 5.0
2900
+ },
2901
+ "openrouter/openai/gpt-5.6-terra": {
2902
+ "cache_read_input": 0.2,
2903
+ "cache_write_input": 2.5,
2904
+ "input": 2.0,
2905
+ "output": 12.0
2906
+ },
2907
+ "openrouter/openai/gpt-5.6-terra-pro": {
2908
+ "cache_read_input": 0.2,
2909
+ "cache_write_input": 2.5,
2910
+ "input": 2.0,
2911
+ "output": 12.0
2912
+ },
2913
+ "openrouter/openai/gpt-5.6-terra-pro:batch": {
2914
+ "cache_read_input": 0.1,
2915
+ "input": 1.0,
2916
+ "output": 6.0
2917
+ },
2918
+ "openrouter/openai/gpt-5.6-terra:batch": {
2919
+ "cache_read_input": 0.1,
2920
+ "input": 1.0,
2921
+ "output": 6.0
2922
+ },
2923
+ "openrouter/openai/gpt-5:batch": {
2924
+ "cache_read_input": 0.0625,
2925
+ "input": 0.625,
2926
+ "output": 5.0
2927
+ },
2029
2928
  "openrouter/openai/gpt-audio": {
2030
2929
  "audio_input": 32.0,
2031
2930
  "input": 2.5,
@@ -2042,15 +2941,16 @@
2042
2941
  "output": 30.0
2043
2942
  },
2044
2943
  "openrouter/openai/gpt-oss-120b": {
2045
- "input": 0.039,
2046
- "output": 0.18
2944
+ "input": 0.037,
2945
+ "output": 0.17
2047
2946
  },
2048
2947
  "openrouter/openai/gpt-oss-20b": {
2049
- "input": 0.029,
2050
- "output": 0.14
2948
+ "cache_read_input": 0.03,
2949
+ "input": 0.03,
2950
+ "output": 0.13
2051
2951
  },
2052
2952
  "openrouter/openai/gpt-oss-safeguard-20b": {
2053
- "cache_read_input": 0.037,
2953
+ "cache_read_input": 0.0375,
2054
2954
  "input": 0.075,
2055
2955
  "output": 0.3
2056
2956
  },
@@ -2063,6 +2963,15 @@
2063
2963
  "input": 150.0,
2064
2964
  "output": 600.0
2065
2965
  },
2966
+ "openrouter/openai/o1-pro:batch": {
2967
+ "input": 75.0,
2968
+ "output": 300.0
2969
+ },
2970
+ "openrouter/openai/o1:batch": {
2971
+ "cache_read_input": 3.75,
2972
+ "input": 7.5,
2973
+ "output": 30.0
2974
+ },
2066
2975
  "openrouter/openai/o3": {
2067
2976
  "cache_read_input": 0.5,
2068
2977
  "input": 2.0,
@@ -2083,10 +2992,29 @@
2083
2992
  "input": 1.1,
2084
2993
  "output": 4.4
2085
2994
  },
2995
+ "openrouter/openai/o3-mini-high:batch": {
2996
+ "cache_read_input": 0.275,
2997
+ "input": 0.55,
2998
+ "output": 2.2
2999
+ },
3000
+ "openrouter/openai/o3-mini:batch": {
3001
+ "cache_read_input": 0.275,
3002
+ "input": 0.55,
3003
+ "output": 2.2
3004
+ },
2086
3005
  "openrouter/openai/o3-pro": {
2087
3006
  "input": 20.0,
2088
3007
  "output": 80.0
2089
3008
  },
3009
+ "openrouter/openai/o3-pro:batch": {
3010
+ "input": 10.0,
3011
+ "output": 40.0
3012
+ },
3013
+ "openrouter/openai/o3:batch": {
3014
+ "cache_read_input": 0.25,
3015
+ "input": 1.0,
3016
+ "output": 4.0
3017
+ },
2090
3018
  "openrouter/openai/o4-mini": {
2091
3019
  "cache_read_input": 0.275,
2092
3020
  "input": 1.1,
@@ -2102,6 +3030,16 @@
2102
3030
  "input": 1.1,
2103
3031
  "output": 4.4
2104
3032
  },
3033
+ "openrouter/openai/o4-mini-high:batch": {
3034
+ "cache_read_input": 0.1375,
3035
+ "input": 0.55,
3036
+ "output": 2.2
3037
+ },
3038
+ "openrouter/openai/o4-mini:batch": {
3039
+ "cache_read_input": 0.1375,
3040
+ "input": 0.55,
3041
+ "output": 2.2
3042
+ },
2105
3043
  "openrouter/perceptron/perceptron-mk1": {
2106
3044
  "input": 0.15,
2107
3045
  "output": 1.5
@@ -2126,6 +3064,26 @@
2126
3064
  "input": 2.0,
2127
3065
  "output": 8.0
2128
3066
  },
3067
+ "openrouter/poolside/laguna-m.1": {
3068
+ "cache_read_input": 0.1,
3069
+ "input": 0.2,
3070
+ "output": 0.4
3071
+ },
3072
+ "openrouter/poolside/laguna-s-2.1": {
3073
+ "cache_read_input": 0.009,
3074
+ "input": 0.09,
3075
+ "output": 0.18
3076
+ },
3077
+ "openrouter/poolside/laguna-xs-2.1": {
3078
+ "cache_read_input": 0.03,
3079
+ "input": 0.06,
3080
+ "output": 0.12
3081
+ },
3082
+ "openrouter/poolside/laguna-xs.2": {
3083
+ "cache_read_input": 0.05,
3084
+ "input": 0.1,
3085
+ "output": 0.2
3086
+ },
2129
3087
  "openrouter/prime-intellect/intellect-3": {
2130
3088
  "input": 0.2,
2131
3089
  "output": 1.1
@@ -2135,8 +3093,8 @@
2135
3093
  "output": 0.4
2136
3094
  },
2137
3095
  "openrouter/qwen/qwen-2.5-7b-instruct": {
2138
- "input": 0.04,
2139
- "output": 0.1
3096
+ "input": 0.1,
3097
+ "output": 0.2
2140
3098
  },
2141
3099
  "openrouter/qwen/qwen-2.5-coder-32b-instruct": {
2142
3100
  "input": 0.66,
@@ -2153,7 +3111,6 @@
2153
3111
  "output": 0.78
2154
3112
  },
2155
3113
  "openrouter/qwen/qwen-plus-2025-07-28:thinking": {
2156
- "cache_write_input": 0.325,
2157
3114
  "input": 0.26,
2158
3115
  "output": 0.78
2159
3116
  },
@@ -2162,7 +3119,7 @@
2162
3119
  "output": 0.75
2163
3120
  },
2164
3121
  "openrouter/qwen/qwen3-14b": {
2165
- "input": 0.1,
3122
+ "input": 0.12,
2166
3123
  "output": 0.24
2167
3124
  },
2168
3125
  "openrouter/qwen/qwen3-235b-a22b": {
@@ -2170,43 +3127,41 @@
2170
3127
  "output": 1.82
2171
3128
  },
2172
3129
  "openrouter/qwen/qwen3-235b-a22b-2507": {
2173
- "input": 0.071,
2174
- "output": 0.1
3130
+ "input": 0.09,
3131
+ "output": 0.55
2175
3132
  },
2176
3133
  "openrouter/qwen/qwen3-235b-a22b-thinking-2507": {
2177
- "cache_read_input": 0.1,
2178
- "input": 0.1,
2179
- "output": 0.1
3134
+ "input": 0.23,
3135
+ "output": 2.3
2180
3136
  },
2181
3137
  "openrouter/qwen/qwen3-30b-a3b": {
2182
- "input": 0.09,
2183
- "output": 0.45
3138
+ "input": 0.12,
3139
+ "output": 0.5
2184
3140
  },
2185
3141
  "openrouter/qwen/qwen3-30b-a3b-instruct-2507": {
2186
- "input": 0.0428,
2187
- "output": 0.1716
3142
+ "input": 0.04815,
3143
+ "output": 0.19305
2188
3144
  },
2189
3145
  "openrouter/qwen/qwen3-30b-a3b-thinking-2507": {
2190
- "cache_read_input": 0.08,
2191
- "input": 0.08,
2192
- "output": 0.4
3146
+ "input": 0.2,
3147
+ "output": 2.4
2193
3148
  },
2194
3149
  "openrouter/qwen/qwen3-32b": {
2195
3150
  "input": 0.08,
2196
3151
  "output": 0.28
2197
3152
  },
2198
3153
  "openrouter/qwen/qwen3-8b": {
2199
- "cache_read_input": 0.05,
2200
- "input": 0.05,
2201
- "output": 0.4
3154
+ "input": 0.117,
3155
+ "output": 0.455
2202
3156
  },
2203
3157
  "openrouter/qwen/qwen3-coder": {
2204
- "input": 0.22,
2205
- "output": 1.8
3158
+ "cache_read_input": 0.1,
3159
+ "input": 0.3,
3160
+ "output": 1.0
2206
3161
  },
2207
3162
  "openrouter/qwen/qwen3-coder-30b-a3b-instruct": {
2208
3163
  "input": 0.07,
2209
- "output": 0.27
3164
+ "output": 0.28
2210
3165
  },
2211
3166
  "openrouter/qwen/qwen3-coder-flash": {
2212
3167
  "cache_read_input": 0.039,
@@ -2216,7 +3171,7 @@
2216
3171
  },
2217
3172
  "openrouter/qwen/qwen3-coder-next": {
2218
3173
  "cache_read_input": 0.07,
2219
- "input": 0.11,
3174
+ "input": 0.12,
2220
3175
  "output": 0.8
2221
3176
  },
2222
3177
  "openrouter/qwen/qwen3-coder-plus": {
@@ -2236,41 +3191,42 @@
2236
3191
  "output": 3.9
2237
3192
  },
2238
3193
  "openrouter/qwen/qwen3-next-80b-a3b-instruct": {
2239
- "input": 0.09,
3194
+ "cache_read_input": 0.07,
3195
+ "input": 0.1,
2240
3196
  "output": 1.1
2241
3197
  },
2242
3198
  "openrouter/qwen/qwen3-next-80b-a3b-thinking": {
2243
- "input": 0.0975,
2244
- "output": 0.78
3199
+ "input": 0.15,
3200
+ "output": 1.2
2245
3201
  },
2246
3202
  "openrouter/qwen/qwen3-vl-235b-a22b-instruct": {
2247
- "cache_read_input": 0.11,
2248
- "input": 0.2,
2249
- "output": 0.88
3203
+ "cache_read_input": 0.1,
3204
+ "input": 0.21,
3205
+ "output": 1.9
2250
3206
  },
2251
3207
  "openrouter/qwen/qwen3-vl-235b-a22b-thinking": {
2252
- "input": 0.26,
2253
- "output": 2.6
3208
+ "input": 0.4,
3209
+ "output": 4.0
2254
3210
  },
2255
3211
  "openrouter/qwen/qwen3-vl-30b-a3b-instruct": {
2256
3212
  "input": 0.13,
2257
3213
  "output": 0.52
2258
3214
  },
2259
3215
  "openrouter/qwen/qwen3-vl-30b-a3b-thinking": {
2260
- "input": 0.13,
2261
- "output": 1.56
3216
+ "input": 0.2,
3217
+ "output": 2.4
2262
3218
  },
2263
3219
  "openrouter/qwen/qwen3-vl-32b-instruct": {
2264
3220
  "input": 0.104,
2265
3221
  "output": 0.416
2266
3222
  },
2267
3223
  "openrouter/qwen/qwen3-vl-8b-instruct": {
2268
- "input": 0.08,
2269
- "output": 0.5
3224
+ "input": 0.117,
3225
+ "output": 0.455
2270
3226
  },
2271
3227
  "openrouter/qwen/qwen3-vl-8b-thinking": {
2272
- "input": 0.117,
2273
- "output": 1.365
3228
+ "input": 0.18,
3229
+ "output": 2.1
2274
3230
  },
2275
3231
  "openrouter/qwen/qwen3.5-122b-a10b": {
2276
3232
  "input": 0.26,
@@ -2281,16 +3237,16 @@
2281
3237
  "output": 1.56
2282
3238
  },
2283
3239
  "openrouter/qwen/qwen3.5-35b-a3b": {
2284
- "cache_read_input": 0.05,
2285
- "input": 0.14,
2286
- "output": 1.0
3240
+ "cache_read_input": 0.25,
3241
+ "input": 0.25,
3242
+ "output": 1.25
2287
3243
  },
2288
3244
  "openrouter/qwen/qwen3.5-397b-a17b": {
2289
3245
  "input": 0.39,
2290
3246
  "output": 2.34
2291
3247
  },
2292
3248
  "openrouter/qwen/qwen3.5-9b": {
2293
- "input": 0.04,
3249
+ "input": 0.1,
2294
3250
  "output": 0.15
2295
3251
  },
2296
3252
  "openrouter/qwen/qwen3.5-flash-02-23": {
@@ -2307,10 +3263,12 @@
2307
3263
  "output": 1.8
2308
3264
  },
2309
3265
  "openrouter/qwen/qwen3.6-27b": {
2310
- "input": 0.29,
2311
- "output": 3.2
3266
+ "cache_read_input": 0.12,
3267
+ "input": 0.6,
3268
+ "output": 3.6
2312
3269
  },
2313
3270
  "openrouter/qwen/qwen3.6-35b-a3b": {
3271
+ "cache_read_input": 0.05,
2314
3272
  "input": 0.14,
2315
3273
  "output": 1.0
2316
3274
  },
@@ -2320,20 +3278,49 @@
2320
3278
  "output": 1.125
2321
3279
  },
2322
3280
  "openrouter/qwen/qwen3.6-max-preview": {
2323
- "cache_write_input": 1.3,
2324
- "input": 1.04,
2325
- "output": 6.24
3281
+ "cache_write_input": 1.28375,
3282
+ "input": 1.027,
3283
+ "output": 6.162
2326
3284
  },
2327
3285
  "openrouter/qwen/qwen3.6-plus": {
2328
3286
  "cache_write_input": 0.40625,
2329
3287
  "input": 0.325,
2330
3288
  "output": 1.95
2331
3289
  },
3290
+ "openrouter/qwen/qwen3.7-flash": {
3291
+ "cache_read_input": 0.006,
3292
+ "cache_write_input": 0.038,
3293
+ "input": 0.03,
3294
+ "output": 0.13
3295
+ },
2332
3296
  "openrouter/qwen/qwen3.7-max": {
3297
+ "cache_read_input": 0.295,
3298
+ "cache_write_input": 1.84375,
3299
+ "input": 1.475,
3300
+ "output": 4.425
3301
+ },
3302
+ "openrouter/qwen/qwen3.7-plus": {
3303
+ "cache_read_input": 0.064,
3304
+ "cache_write_input": 0.4,
3305
+ "input": 0.32,
3306
+ "output": 1.28
3307
+ },
3308
+ "openrouter/qwen/qwen3.8-2.4t-a95b": {
2333
3309
  "cache_read_input": 0.25,
2334
- "cache_write_input": 1.5625,
2335
- "input": 1.25,
2336
- "output": 3.75
3310
+ "input": 2.0,
3311
+ "output": 6.0
3312
+ },
3313
+ "openrouter/qwen/qwen3.8-27b": {
3314
+ "cache_read_input": 0.085,
3315
+ "cache_write_input": 0.53125,
3316
+ "input": 0.425,
3317
+ "output": 2.55
3318
+ },
3319
+ "openrouter/qwen/qwen3.8-max": {
3320
+ "cache_read_input": 0.25,
3321
+ "cache_write_input": 2.5,
3322
+ "input": 2.0,
3323
+ "output": 6.0
2337
3324
  },
2338
3325
  "openrouter/rekaai/reka-edge": {
2339
3326
  "input": 0.1,
@@ -2351,6 +3338,16 @@
2351
3338
  "input": 1.0,
2352
3339
  "output": 3.0
2353
3340
  },
3341
+ "openrouter/sakana/fugu-ultra": {
3342
+ "cache_read_input": 0.5,
3343
+ "input": 5.0,
3344
+ "output": 30.0
3345
+ },
3346
+ "openrouter/sakana/sakana-namazu": {
3347
+ "cache_read_input": 0.15,
3348
+ "input": 0.95,
3349
+ "output": 4.0
3350
+ },
2354
3351
  "openrouter/sao10k/l3-euryale-70b": {
2355
3352
  "input": 1.48,
2356
3353
  "output": 1.48
@@ -2372,8 +3369,7 @@
2372
3369
  "output": 0.75
2373
3370
  },
2374
3371
  "openrouter/stepfun/step-3.5-flash": {
2375
- "cache_read_input": 0.02,
2376
- "input": 0.09,
3372
+ "input": 0.1,
2377
3373
  "output": 0.3
2378
3374
  },
2379
3375
  "openrouter/stepfun/step-3.7-flash": {
@@ -2389,10 +3385,27 @@
2389
3385
  "input": 0.14,
2390
3386
  "output": 0.57
2391
3387
  },
3388
+ "openrouter/tencent/hy-mt2-1.8b": {
3389
+ "input": 0.044,
3390
+ "output": 0.177
3391
+ },
3392
+ "openrouter/tencent/hy-mt2-30b-a3b": {
3393
+ "input": 0.074,
3394
+ "output": 0.295
3395
+ },
3396
+ "openrouter/tencent/hy-mt2-7b": {
3397
+ "input": 0.074,
3398
+ "output": 0.295
3399
+ },
3400
+ "openrouter/tencent/hy3": {
3401
+ "cache_read_input": 0.033,
3402
+ "input": 0.132,
3403
+ "output": 0.528
3404
+ },
2392
3405
  "openrouter/tencent/hy3-preview": {
2393
- "cache_read_input": 0.021,
2394
- "input": 0.063,
2395
- "output": 0.21
3406
+ "cache_read_input": 0.06,
3407
+ "input": 0.18,
3408
+ "output": 0.6
2396
3409
  },
2397
3410
  "openrouter/thedrummer/cydonia-24b-v4.1": {
2398
3411
  "cache_read_input": 0.15,
@@ -2400,8 +3413,8 @@
2400
3413
  "output": 0.5
2401
3414
  },
2402
3415
  "openrouter/thedrummer/rocinante-12b": {
2403
- "input": 0.17,
2404
- "output": 0.43
3416
+ "input": 0.25,
3417
+ "output": 0.5
2405
3418
  },
2406
3419
  "openrouter/thedrummer/skyfall-36b-v2": {
2407
3420
  "cache_read_input": 0.25,
@@ -2412,6 +3425,21 @@
2412
3425
  "input": 0.4,
2413
3426
  "output": 0.4
2414
3427
  },
3428
+ "openrouter/thinkingmachines/inkling": {
3429
+ "cache_read_input": 0.16,
3430
+ "input": 0.95,
3431
+ "output": 4.05
3432
+ },
3433
+ "openrouter/thinkingmachines/inkling-small": {
3434
+ "cache_read_input": 0.1,
3435
+ "input": 0.45,
3436
+ "output": 1.2
3437
+ },
3438
+ "openrouter/thinkingmachines/inkling:batch": {
3439
+ "cache_read_input": 0.17,
3440
+ "input": 1.0,
3441
+ "output": 4.05
3442
+ },
2415
3443
  "openrouter/undi95/remm-slerp-l2-13b": {
2416
3444
  "input": 0.45,
2417
3445
  "output": 0.65
@@ -2421,6 +3449,11 @@
2421
3449
  "input": 0.15,
2422
3450
  "output": 0.6
2423
3451
  },
3452
+ "openrouter/upstage/solar-pro4": {
3453
+ "cache_read_input": 0.006,
3454
+ "input": 0.03,
3455
+ "output": 0.12
3456
+ },
2424
3457
  "openrouter/writer/palmyra-x5": {
2425
3458
  "input": 0.6,
2426
3459
  "output": 6.0
@@ -2432,14 +3465,24 @@
2432
3465
  },
2433
3466
  "openrouter/x-ai/grok-4.20-multi-agent": {
2434
3467
  "cache_read_input": 0.2,
2435
- "input": 2.0,
2436
- "output": 6.0
3468
+ "input": 1.25,
3469
+ "output": 2.5
2437
3470
  },
2438
3471
  "openrouter/x-ai/grok-4.3": {
2439
3472
  "cache_read_input": 0.2,
2440
3473
  "input": 1.25,
2441
3474
  "output": 2.5
2442
3475
  },
3476
+ "openrouter/x-ai/grok-4.5": {
3477
+ "cache_read_input": 0.3,
3478
+ "input": 2.0,
3479
+ "output": 6.0
3480
+ },
3481
+ "openrouter/x-ai/grok-4.6": {
3482
+ "cache_read_input": 0.5,
3483
+ "input": 2.0,
3484
+ "output": 6.0
3485
+ },
2443
3486
  "openrouter/x-ai/grok-build-0.1": {
2444
3487
  "cache_read_input": 0.2,
2445
3488
  "input": 1.0,
@@ -2480,8 +3523,8 @@
2480
3523
  "output": 2.2
2481
3524
  },
2482
3525
  "openrouter/z-ai/glm-4.5-air": {
2483
- "cache_read_input": 0.06,
2484
- "input": 0.125,
3526
+ "cache_read_input": 0.025,
3527
+ "input": 0.13,
2485
3528
  "output": 0.85
2486
3529
  },
2487
3530
  "openrouter/z-ai/glm-4.5v": {
@@ -2490,12 +3533,12 @@
2490
3533
  "output": 1.8
2491
3534
  },
2492
3535
  "openrouter/z-ai/glm-4.6": {
2493
- "cache_read_input": 0.08,
2494
- "input": 0.43,
2495
- "output": 1.74
3536
+ "cache_read_input": 0.1,
3537
+ "input": 0.5,
3538
+ "output": 2.0
2496
3539
  },
2497
3540
  "openrouter/z-ai/glm-4.6v": {
2498
- "cache_read_input": 0.05,
3541
+ "cache_read_input": 0.055,
2499
3542
  "input": 0.3,
2500
3543
  "output": 0.9
2501
3544
  },
@@ -2520,15 +3563,36 @@
2520
3563
  "output": 4.0
2521
3564
  },
2522
3565
  "openrouter/z-ai/glm-5.1": {
2523
- "cache_read_input": 0.182,
2524
- "input": 0.98,
2525
- "output": 3.08
3566
+ "cache_read_input": 0.234,
3567
+ "input": 1.26,
3568
+ "output": 3.96
3569
+ },
3570
+ "openrouter/z-ai/glm-5.2": {
3571
+ "cache_read_input": 0.221,
3572
+ "input": 1.19,
3573
+ "output": 3.74
3574
+ },
3575
+ "openrouter/z-ai/glm-5.2:batch": {
3576
+ "cache_read_input": 0.26,
3577
+ "input": 1.4,
3578
+ "output": 4.4
3579
+ },
3580
+ "openrouter/z-ai/glm-5.3": {
3581
+ "cache_read_input": 0.26,
3582
+ "input": 1.4,
3583
+ "output": 4.4
2526
3584
  },
2527
3585
  "openrouter/z-ai/glm-5v-turbo": {
2528
3586
  "cache_read_input": 0.24,
2529
3587
  "input": 1.2,
2530
3588
  "output": 4.0
2531
3589
  },
3590
+ "openrouter/~anthropic/claude-fable-latest": {
3591
+ "cache_read_input": 1.0,
3592
+ "cache_write_input": 12.5,
3593
+ "input": 10.0,
3594
+ "output": 50.0
3595
+ },
2532
3596
  "openrouter/~anthropic/claude-haiku-latest": {
2533
3597
  "cache_read_input": 0.1,
2534
3598
  "cache_write_input": 1.25,
@@ -2542,18 +3606,23 @@
2542
3606
  "output": 25.0
2543
3607
  },
2544
3608
  "openrouter/~anthropic/claude-sonnet-latest": {
2545
- "cache_read_input": 0.3,
2546
- "cache_write_input": 3.75,
2547
- "input": 3.0,
2548
- "output": 15.0
3609
+ "cache_read_input": 0.2,
3610
+ "cache_write_input": 2.5,
3611
+ "input": 2.0,
3612
+ "output": 10.0
3613
+ },
3614
+ "openrouter/~deepseek/deepseek-v4-flash-latest": {
3615
+ "cache_read_input": 0.007,
3616
+ "input": 0.03,
3617
+ "output": 0.075
2549
3618
  },
2550
3619
  "openrouter/~google/gemini-flash-latest": {
2551
- "audio_input": 3.0,
2552
- "cache_read_input": 0.15,
2553
- "cache_write_input": 0.083333,
2554
- "image_input": 1.5,
2555
- "input": 1.5,
2556
- "output": 9.0
3620
+ "audio_input": 0.375,
3621
+ "cache_read_input": 0.0375,
3622
+ "cache_write_input": 0.020833,
3623
+ "image_input": 0.375,
3624
+ "input": 0.375,
3625
+ "output": 1.875
2557
3626
  },
2558
3627
  "openrouter/~google/gemini-pro-latest": {
2559
3628
  "audio_input": 2.0,
@@ -2564,19 +3633,30 @@
2564
3633
  "output": 12.0
2565
3634
  },
2566
3635
  "openrouter/~moonshotai/kimi-latest": {
2567
- "cache_read_input": 0.144,
2568
- "input": 0.684,
2569
- "output": 3.42
3636
+ "cache_read_input": 0.256,
3637
+ "input": 2.55,
3638
+ "output": 12.75
2570
3639
  },
2571
3640
  "openrouter/~openai/gpt-latest": {
2572
- "cache_read_input": 0.5,
2573
- "input": 5.0,
2574
- "output": 30.0
3641
+ "cache_read_input": 0.2,
3642
+ "cache_write_input": 2.5,
3643
+ "input": 2.0,
3644
+ "output": 10.0
2575
3645
  },
2576
3646
  "openrouter/~openai/gpt-mini-latest": {
2577
3647
  "cache_read_input": 0.075,
2578
3648
  "input": 0.75,
2579
3649
  "output": 4.5
3650
+ },
3651
+ "openrouter/~x-ai/grok-latest": {
3652
+ "cache_read_input": 0.5,
3653
+ "input": 2.0,
3654
+ "output": 6.0
3655
+ },
3656
+ "openrouter/~z-ai/glm-latest": {
3657
+ "cache_read_input": 0.26,
3658
+ "input": 1.4,
3659
+ "output": 4.4
2580
3660
  }
2581
3661
  },
2582
3662
  "service_charges": {