fix(dashboard): correct Opus 4.7 input rate from $5/Mtok to $2.50/Mtok

The previous value was Opus 4.5/4.6 pricing. Opus 4.7 input is $2.50/Mtok,
output $12.50/Mtok. The dollar-saved headline was overstated by 2×.

OUTPUT_TOKEN_RATE (5×) and cache multipliers (1.25×/0.10×) remain correct
as those ratios are consistent across all Claude models.
This commit is contained in:
Steven Chong
2026-05-21 11:36:37 -04:00
parent a197f8729d
commit a0f282f262
+5 -5
View File
@@ -178,15 +178,15 @@ interface Totals {
const OUTPUT_TOKEN_RATE = 5.0;
/** Per-million-token input rate ASSUMED for the headline dollar figure.
* Source: [docs-pricing] — Claude Opus 4.7 base input is $5.00/Mtok.
* Source: [docs-pricing] — Claude Opus 4.7 base input is $2.50/Mtok.
*
* This is exposed on /proxy-stats as `pricing_assumptions.input_per_mtok`
* so the operator can see what we assumed and override if they're
* running against a non-default deployment (Bedrock/Vertex add a 10%
* premium per [docs-pricing], Sonnet would be $3/Mtok, etc.). The
* previous value here was $15/Mtok — that was Opus 3 pricing and over-
* stated dollar savings by 3× on Opus 4.x deployments. */
const ASSUMED_INPUT_USD_PER_MTOK = 5.0;
* previous value here was $5/Mtok — that was Opus 4.5/4.6 pricing and over-
* stated dollar savings by 2× on Opus 4.7. */
const ASSUMED_INPUT_USD_PER_MTOK = 2.5;
export class DashboardState {
private recent: RecentRow[] = [];
@@ -801,7 +801,7 @@ const DASHBOARD_HTML = `<!doctype html>
</div>
<div class="card"><div class="label">$ saved</div>
<div class="value pos" id="m_usd">$0.00</div>
<div class="small" id="m_usd_sub">at $5/M input tokens (Opus 4.7)</div>
<div class="small" id="m_usd_sub">at $2.50/M input tokens (Opus 4.7)</div>
<details class="math"><summary>show calculation</summary>
<div class="formula" id="m_usd_math"></div>
</details>