Repository navigation
chore(prices): sync OpenRouter prices: 7 models - #42261
Conversation
openrouter/~deepseek/deepseek-pro-latest: max_tokens, max_output_tokens, input_cost_per_token, output_cost_per_token, cache_read_input_token_cost, off_peak_pricing openrouter/~moonshotai/kimi-latest: input_cost_per_token, output_cost_per_token, cache_read_input_token_cost openrouter/deepseek/deepseek-v4-pro: input_cost_per_token, output_cost_per_token, cache_read_input_token_cost openrouter/deepseek/deepseek-v4-pro-0813: max_tokens, max_output_tokens, input_cost_per_token, output_cost_per_token, cache_read_input_token_cost, off_peak_pricing openrouter/ibm-granite/granite-4.2-8b: input_cost_per_token, output_cost_per_token, cache_read_input_token_cost openrouter/moonshotai/kimi-k3: input_cost_per_token, output_cost_per_token, cache_read_input_token_cost openrouter/qwen/qwen3.8-27b: input_cost_per_token, output_cost_per_token, cache_read_input_token_cost
|
|
Merging this PR will not alter performance
Comparing |
|
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
TLDR
Problem this solves:
How it solves it:
model_prices_and_context_window.jsonand its identical copiesUser Flow
Before: a developer calling
openrouter/moonshotai/kimi-k3through the proxy gets spend computed at last sync's prices, which OpenRouter no longer charges."model": "openrouter/moonshotai/kimi-k3"After: the same call is costed at the prices OpenRouter currently publishes.
"model": "openrouter/moonshotai/kimi-k3"Relevant issues
Affected release
Linear ticket
Pre-Submission checklist
Please complete all items before asking a LiteLLM maintainer to review your PR
uv run pytest tests/test_litellm/<your_test_file>.py -v. Leave the suites (make test-unit-*,make test-unit) to CI: it finishes in ~15 minutes where a laptop takes an hour or more@greptileaito re-request a review after pushing changes)Delays in PR merge?
If you're seeing a delay in your PR being merged, ping the LiteLLM Team on Slack (#pr-review).
Screenshots / Proof of Fix
Not applicable to an automated price sync; the audit trail for each value lives in the portal's sync history
Type
Infrastructure
Caveats (if any)
Medium
openrouter/moonshotai/kimi-k3andopenrouter/~moonshotai/kimi-latestboth go $1.7 to $3/1M inputopenrouter/ibm-granite/granite-4.2-8binput drops but output rises to $0.25/1Mopenrouter/qwen/qwen3.8-27binput roughly doubles to $0.42/1MLow
max_tokensandmax_output_tokensalso shrink per the pageQA runbook
Not applicable; this PR does not touch tests or e2e
Final Attestation
Sync report
Updates 7 models, each read from its provider's own published prices.
OpenRouter
Updates 7 models from the provider's pricing page (page
a8eae63d3a49).Changes
openrouter/~deepseek/deepseek-pro-latest: cache_read_input_token_cost $0.018186/1M → $0.019008/1M, input_cost_per_token $0.57156/1M → $0.57024/1M, max_output_tokens $393216000000/1M → $384000000000/1M, max_tokens $393216000000/1M → $384000000000/1M, off_peak_pricing {"windows":[{"weekdays":["saturday","sunday"],"hours_utc":"00:00-00:00"},{"weekdays":["monday","tuesday","wednesday","thursday","friday"],"hours_utc":"00:00-01:00"},{"weekdays":["monday","tuesday","wednesday","thursday","friday"],"hours_utc":"04:00-06:00"},{"weekdays":["monday","tuesday","wednesday","thursday","friday"],"hours_utc":"10:00-00:00"}],"input_cost_per_token":5.7156e-7,"output_cost_per_token":0.00000171468,"cache_read_input_token_cost":1.8186e-8} → {"windows":[{"weekdays":["saturday","sunday"],"hours_utc":"00:00-00:00"},{"weekdays":["monday","tuesday","wednesday","thursday","friday"],"hours_utc":"00:00-01:00"},{"weekdays":["monday","tuesday","wednesday","thursday","friday"],"hours_utc":"04:00-06:00"},{"weekdays":["monday","tuesday","wednesday","thursday","friday"],"hours_utc":"10:00-00:00"}],"input_cost_per_token":5.7024e-7,"output_cost_per_token":0.00000171072,"cache_read_input_token_cost":1.9008e-8}, output_cost_per_token $1.71468/1M → $1.71072/1Mopenrouter/~moonshotai/kimi-latest: cache_read_input_token_cost $0.17/1M → $0.3/1M, input_cost_per_token $1.7/1M → $3/1M, output_cost_per_token $8.5/1M → $15/1Mopenrouter/deepseek/deepseek-v4-pro: cache_read_input_token_cost $0.0778795/1M → $0.077314/1M, input_cost_per_token $0.934554/1M → $0.927768/1M, output_cost_per_token $1.86911/1M → $1.85554/1Mopenrouter/deepseek/deepseek-v4-pro-0813: cache_read_input_token_cost $0.018186/1M → $0.019008/1M, input_cost_per_token $0.57156/1M → $0.57024/1M, max_output_tokens $393216000000/1M → $384000000000/1M, max_tokens $393216000000/1M → $384000000000/1M, off_peak_pricing {"windows":[{"weekdays":["saturday","sunday"],"hours_utc":"00:00-00:00"},{"weekdays":["monday","tuesday","wednesday","thursday","friday"],"hours_utc":"00:00-01:00"},{"weekdays":["monday","tuesday","wednesday","thursday","friday"],"hours_utc":"04:00-06:00"},{"weekdays":["monday","tuesday","wednesday","thursday","friday"],"hours_utc":"10:00-00:00"}],"input_cost_per_token":5.7156e-7,"output_cost_per_token":0.00000171468,"cache_read_input_token_cost":1.8186e-8} → {"windows":[{"weekdays":["saturday","sunday"],"hours_utc":"00:00-00:00"},{"weekdays":["monday","tuesday","wednesday","thursday","friday"],"hours_utc":"00:00-01:00"},{"weekdays":["monday","tuesday","wednesday","thursday","friday"],"hours_utc":"04:00-06:00"},{"weekdays":["monday","tuesday","wednesday","thursday","friday"],"hours_utc":"10:00-00:00"}],"input_cost_per_token":5.7024e-7,"output_cost_per_token":0.00000171072,"cache_read_input_token_cost":1.9008e-8}, output_cost_per_token $1.71468/1M → $1.71072/1Mopenrouter/ibm-granite/granite-4.2-8b: cache_read_input_token_cost $0.05/1M → $0.015/1M, input_cost_per_token $0.1/1M → $0.06/1M, output_cost_per_token $0.15/1M → $0.25/1Mopenrouter/moonshotai/kimi-k3: cache_read_input_token_cost $0.17/1M → $0.3/1M, input_cost_per_token $1.7/1M → $3/1M, output_cost_per_token $8.5/1M → $15/1Mopenrouter/qwen/qwen3.8-27b: cache_read_input_token_cost $0.05/1M → $0.085/1M, input_cost_per_token $0.2/1M → $0.42/1M, output_cost_per_token $2.5/1M → $3/1MNo litellm key or field (19)
Rows the page prices that litellm has no key or field for. Nothing to apply; listed so the omission is deliberate, not missed.
qwen/qwen3.7-flash: override tier at 32000 prompt tokens has no litellm fieldqwen/qwen3.7-flash: override tier at 256000 prompt tokens has no litellm fieldopenrouter/auto-beta: OpenRouter router, not a modelopenrouter/fusion: OpenRouter router, not a modelqwen/qwen3.7-plus: override tier at 256000 prompt tokens has no litellm fieldqwen/qwen3.5-plus-20260420: override tier at 256000 prompt tokens has no litellm fieldqwen/qwen3.6-flash: override tier at 256000 prompt tokens has no litellm fieldopenrouter/pareto-code: OpenRouter router, not a modelqwen/qwen3.6-plus: override tier at 256000 prompt tokens has no litellm fieldqwen/qwen3.5-plus-02-15: override tier at 256000 prompt tokens has no litellm fieldqwen/qwen3-max-thinking: override tier at 32000 prompt tokens has no litellm fieldopenrouter/free: OpenRouter router, not a modelopenrouter/bodybuilder: OpenRouter router, not a modelqwen/qwen3-max: override tier at 32000 prompt tokens has no litellm fieldqwen/qwen3-coder-plus: override tier at 32000 prompt tokens has no litellm fieldqwen/qwen3-coder-flash: override tier at 32000 prompt tokens has no litellm fieldqwen/qwen-plus-2025-07-28: override tier at 256000 prompt tokens has no litellm fieldqwen/qwen-plus: override tier at 256000 prompt tokens has no litellm fieldopenrouter/auto: OpenRouter router, not a model2 rows the source lists without a serverless token price (dedicated or unpriced models) were not read.
Opened by the litellm-providers price sync. Every price is read from the provider's own published source and gated before it is applied; the audit trail for each value is in the portal's sync history.
Note
Medium Risk
Changes only the cost catalog but directly affects reported spend and budgets, including large price increases for Kimi models.
Overview
Syncs OpenRouter token pricing (and related limits) in
model_prices_and_context_window.jsonand its backup for 7 models, so proxy spend and UI cost logs match OpenRouter’s current published rates.Kimi (
kimi-k3,~moonshotai/kimi-latest) and Qwenqwen3.8-27bsee materially higher input/output and cache-read costs. IBM Granitegranite-4.2-8blowers input and cache-read but raises output. DeepSeek pro entries (deepseek-v4-pro,v4-pro-0813,~deepseek/deepseek-pro-latest) get small price tweaks; the0813anddeepseek-pro-latestrows also dropmax_tokens/max_output_tokensfrom 393216 to 384000 and refresh matchingoff_peak_pricingvalues.Reviewed by Cursor Bugbot for commit bed94a4. Bugbot is set up for automated code reviews on this repo. Configure here.