How these numbers are made
Every constant the toolkit uses, with its value, scope, source, and confidence — plus the arithmetic behind the headline claims, a changelog of what we've corrected, and a list of what's still under review. If a number on any tool page can't be traced to this page, that's a bug: tell me.
Figures reviewed: 2 Jul 2026 · Registry: constants.jsThe one idea that explains most disagreements: scope
Published estimates for "water per AI query" differ by more than 150× — not mainly because anyone is wrong, but because they draw the boundary differently. Three credible anchors, same question, three scopes:
Google's measured median text prompt (Aug 2025): inference energy incl. idle machines and overhead, but only on-site cooling water, and a median, not a mean. Source
Ren, Li et al., "Making AI Less Thirsty" (2023; CACM 2025): 500 mL per 10–50 GPT-3-era responses, including the water evaporated generating the electricity (scope 2). Source
Mistral's Large 2 LCA (Jul 2025): per 400-token response, including data-centre construction, hardware manufacture, and amortized training. Source
Where this toolkit sits: the calculator's 16 mL/query is a scope-2-inclusive estimate in the middle of the Ren et al. range. It is deliberately not Google's 0.26 mL (on-site-only medians understate what your usage causes system-wide) and not Mistral's 45 mL (lifecycle attribution is contested). Reasonable people can pick a different scope; the tool's relative comparisons survive any of them.
Uncertainty, stated plainly
Absolute values here carry roughly a 5–10× uncertainty range — data-centre location alone (WUE 0.2 vs 1.5+ L/kWh) moves them that much. What survives the uncertainty: relative comparisons between activities, and the direction of change from an action. That's why the tools lead with comparisons and plans, not decimal places. Research on communicating uncertainty finds numeric ranges do not reduce trust in the source — vague hedging does (van der Bles et al., PNAS 2020) — so we state ranges as numbers wherever they matter.
Water Footprint — the rates
| Constant | Value | Scope | Source | Confidence |
|---|---|---|---|---|
| Streaming | 0.15 L/hr | DC + network energy × blended WUE | ≈0.077 kWh/hr (IEA fact-check) × ~1.8–2.0 L/kWh | Solid |
| Video calls | 0.14 L/hr | Scope-2 inclusive | MIT Media Lab CO₂/min → kWh → litres chain | Estimate |
| Gaming | 0.18 L/hr | Device + server | Derived (200W device + server overhead) | Estimate |
| AI text query | 0.016 L | Scope-2 inclusive | Ren/Li et al. — mid of 10–50 mL range | Solid |
| Social & browsing | 0.022 L/hr | Scope-2 inclusive | Internal estimate — no external source yet | Under review |
| 0.008 L | Scope-2 inclusive | Berners-Lee, How Bad Are Bananas? (2021) + overhead | Estimate | |
| Google fleet water | ≈21 B L (2022) | Company-wide DC operations | Google Environmental Report — 5.6 B gallons, 2022; ~8.1 B gal by 2024 | Solid |
| Microsoft fleet water | 6.4 B L (FY2022) | Company-wide | Microsoft report via DCD, +34% YoY | Solid |
| Smartphone manufacture | ~13,000 L | Lifecycle virtual water | Trucost / Friends of the Earth (2015) | Dated |
| WUE range | 0.2–1.8 L/kWh direct | +0.7–2.0 indirect | ISO/IEC 30134-9 metric; industry avg ~1.8–1.9, hyperscale fleets ~1.1 | Solid |
Model Router — tiers, prices, and the headline claims
| Constant | Value | Scope | Source | Confidence |
|---|---|---|---|---|
| Input pricing (as of Jul 2026) | Haiku 4.5 $1 · Sonnet 5 $3 · Opus 4.8 $5 · Fable 5 $10 /MTok | Standard list input price; output is exactly 5× input on all four tiers, so savings ratios hold for output too. Fable 5 is the Mythos-class tier above Opus. Caveat: Sonnet 5 has $2/$10 introductory pricing through 31 Aug 2026 — during the intro the Haiku-vs-Sonnet cost saving is (2−1)/2 = 50%, not 67%. | Anthropic pricing docs | Solid |
| Per-tier water | 2 / 16.7 / 50 / 100 mL | Scope-2 inclusive, scaled by model size | Toolkit-internal estimates anchored to the 16 mL query figure above. Treat as illustrative ratios, not measurements. | Illustrative |
| Tokens per query | 1,000 | Assumption for at-scale $ math | Stated assumption (typical short-task input) | Assumption |
| Routing evidence | >85% cost cut at 95% quality | MT-Bench, learned router | RouteLLM (2024); see also FrugalGPT | Solid |
| Task-energy spread | generation ≈24× classification | Per 1,000 inferences | Luccioni et al., FAccT 2024 | Solid |
Derivations
Tokenizer note: Fable 5, Opus 4.7+, and Sonnet 5 use a newer tokenizer that produces ~30% more tokens for the same text than Haiku 4.5's. The at-scale math assumes equal token counts per query across tiers, so routing-to-Haiku savings are, if anything, understated — a deliberately conservative bias.
Prompt Efficiency & caching — what's verified
- Prompt caching: cache reads cost 0.1× the base input price — the "90% prefix savings" figure — with a 5-minute default TTL (writes cost 1.25×). Caveat the tool now states: savings require setting
cache_controlin the API call; prompt shape alone saves nothing. Anthropic docs. - Batch API: 50% cost reduction on batched requests — a cost lever; we no longer present batching as a measured water percentage. Anthropic docs.
- The scorer itself: heuristic pattern-matching that runs entirely in your browser — no AI model is called. Scores are directional guidance tuned for English prose prompts, not ground truth. Length is penalized only past ~300 words, and that penalty is the scorer's bluntest instrument: well-chosen few-shot examples improve reliability, per both major vendors' guidance.
Eval Bench — what the verdict means
- The demo scores pre-written illustrative outputs with deterministic keyword scorers, fixed so the lesson always lands. It is a teaching exhibit, not a live benchmark.
- The signal-vs-noise verdict compares the score delta to the example-to-example spread (not run-to-run noise — the demo is deterministic). It refuses a verdict below n=5. For the statistics a production eval deserves — paired differences, clustered standard errors, power analysis — see Anthropic's "Adding Error Bars to Evals". Upgrading the verdict to a proper paired test is on the roadmap below.
- Live-mode privacy, two paths. Bring-your-own-key runs go straight from your browser to Anthropic — this site's server never sees them. Free on-the-house runs (3/day, up to 2 examples) relay through kirahancock.com's serverless function to Anthropic using a dedicated, spend-capped site key; the relay pins the model to Haiku, caps output at 400 tokens, and stores and logs nothing.
Changelog
- 18 Jul 2026 — v1.8 (the analyst's toolkit). The four remaining "to 10/10" recommendations from the v1.7 audit, closed: Per-lens judging — the judge now scores four fixed lenses alongside its overall verdict (substance, format, tone, concision), each subject to the same order-swap consistency rule, so a result can tell you where the wins come from ("B leads on format 4/5, A holds substance") instead of only who won. Cross-example patterns — one model call reads the judge's per-example reasons and names what recurs across examples (with which examples show it and one concrete fix each); the Prompt C merge folds those patterns in when you've run it. Mini-checks — optional deterministic checks per example (contains / does not contain / regex / max words) run on both outputs next to the judge; a check failure is a hard fact a persuasive answer can't argue past, and checks travel with the promptfoo export as real assert entries. Named golden sets — save your example list (checks included) by name in this browser and reload it later; the example set is the durable asset, so it now has a shelf. Also: model outputs render their own markdown (bold, bullets, code) instead of showing raw asterisks — prompts stay literal, since you need their exact characters — and the dev test suite gained a full pipeline drive with the network stubbed, because every defect we've shipped was found by driving the tool, not by mounting it. At launch we also self-audited the toolkit's own footprint: pages transfer 94–233 KB including self-hosted fonts, ≈0.01–0.04 g CO₂e per first view computed with co2.js v0.19 under the Sustainable Web Design v4 model from measured (compressed) transfer sizes — the third-party badge services now require accounts, so we show the computation instead.
- 3 Jul 2026 — v1.7 (the auditor's punch list). A cold external-style audit of our own bench produced six findings, all closed: Two-models mode — hold your prompt constant and A/B Claude Haiku 4.5 against Sonnet 5, which is exactly the question the Model Router hands you ("does the cheaper tier hold on your task?"); a tie is reported as a vote for the cheaper tier, and the receipt shows what the choice costs. Judge choice — key users can judge with Sonnet 5 (a cross-tier judge reduces self-preference); the free relay stays Haiku-pinned. Trials — key users can run 3 generations per example and see win stability per example (outputs vary run to run; "stable 3/3" vs "flaky 2/3"). Measured receipts — token counts and cost now come from the API's own usage figures, not estimates, on both free and keyed paths; water uses the per-tier illustrative figures shared with the router. Corrections compound — verdict overrides write back into run history, and the align check now accumulates across runs with an explicit trust gate (5+ human signals at ≥80% agreement before we'll say the judge can run without you); run-to-run deltas are only claimed when the example set is unchanged. And one disclosure we owed you: when verification ideals come from the eye exam, they carry the challenger's style — your blind tap is the ground truth, but the challenger starts with home-field advantage in the A/B. Judge with Sonnet and add fresh examples to tighten that.
- 3 Jul 2026 — v1.6 (a memory, a conscience, and a diploma). After benchmarking against the leading professional eval platforms: the bench now remembers — your last runs persist in this browser and each new result shows the regression delta ("B won 1 of 2 → now 3 of 3, challenger edited since"); every result carries a run receipt (calls, ~tokens, ~cost at list rates, and ~water, illustrative, tied to the water tool); you can overrule the AI judge per example ("human-corrected" — your call outranks its); when your blind exam picks and the AI judge covered the same examples, an align check reports how often the judge agreed with you (agreement means you can trust it to re-run without you); and setups export as a ready-to-run promptfoo config plus JSON save/import — when you outgrow the free bench, it hands you to the professional stack instead of holding on. Deliberately out of scope, still: team annotation queues, production tracing, CI runners — that's what the export is for.
- 3 Jul 2026 — v1.5 (the eye exam). The Your-task front door was rebuilt around propose-then-ratify: paste one prompt and one or two real inputs — no “ideal answer” ever requested. The bench generates your prompt’s own answer plus deliberately different styles (each style is your prompt with a modifier appended, so task intent is held constant) and you pick blind, order-shuffled, at most three taps, with “equally fine” and “neither fits” escapes (your gripe is kept, in your words). Your picks become the ratified yardstick; the exam ends with a prescription of the properties you chose, a deterministic challenger prompt assembled from the winning modifier, and one-click A/B verification. Three outcomes are honestly distinguished: your prompt already matches your taste (a pass most tools never report), a style beat it, or your standard changes with the input — in which case one model call drafts a rule-aware prompt. Known limit, disclosed in-flow: you may recognise your own prompt’s voice; we can’t blind you to yourself. The two-prompt A/B bench stays one click away for people who arrive with both. Three one-tap sample scenarios (support tickets, a LinkedIn post, a customer reply — deliberately different domains) let a visitor feel the exam before bringing their own prompt; sample runs make real model calls and count as a normal free run.
- 3 Jul 2026 — v1.4 (newbie on-ramp). A first-time-user walkthrough (persona stress-test) scored the bench 5.1/10 for novices, so: a plain-English hero and a persistent 3-step path strip (demo → why → your task); jargon translated in place (test examples, before/after, "the plain ask" vs "with an output spec") with the t-test behind a "show the math" disclosure; Your-task now starts empty with instructive placeholders (the worked example is opt-in), Prompt A/B are labeled "your current prompt" / "the challenger" with a one-prompt helper and a copy-A-to-B shortcut; and live results end with a plain reading ("your challenger wrote the better answer on 2 of 2 — add 3 more examples to confirm") instead of statistics-speak. Later the same day: result verdicts gained a proper taxonomy (a split decision is named as such — each prompt winning on different inputs is signal, not noise), every result card shows the yardstick (your ideal answer) and both judge rationales when the orderings disagreed, and a "Suggest a merged prompt" button drafts a Prompt C from the judge's own reasons in one model call — read it, make it the new challenger, and re-run; it only earns the job by winning.
- 3 Jul 2026 — v1.3 (free tier + Live-mode polish). Eval Bench Live mode gained a free on-the-house path — 3 runs a day, up to 2 examples, relayed through this site's spend-capped key with the model and token limits pinned server-side — alongside the unlimited bring-your-own-key path (browser → Anthropic direct, unchanged), plus a 2-minute get-a-key guide. Same release: drafts persist across tab switches, runs are cancellable with partials kept, incomplete examples are flagged instead of silently skipped, and result colors no longer favor either prompt.
- 3 Jul 2026 — v1.2 (lever rebuild + explorables). The two under-review water levers were replaced with defensible ones: "switch to 720p" (resolution barely changes network energy per Carbon Trust) became "stream over Wi-Fi, not mobile data" (~25%, cellular uses several times more energy per GB), and "batch questions" (80%, unsupported) became "write one complete prompt instead of several rounds" (50%, fewer total queries). The calculator gained an editable WUE assumption — Efficient/Nordic ×0.5, Typical ×1, Hot & dry ×1.5 — so the location sensitivity taught on this page is now a lever you can move. The Eval Bench added a predict-before-reveal bet, and the tools now hand off to each other with context. Later the same day: Live mode became a real A/B eval — both prompts run on your golden examples and are judged twice with the order swapped, a win counting only when both orderings agree (the standard position-bias control), with the API call count shown before you run. The water tool gained a copyable embed badge and a "re-check in 2 weeks" calendar file (nothing leaves the browser), and every page got a social preview card. The router's ladder now includes the Mythos-class top tier — Claude Fable 5 at score 16+ — because a routing tool that omits the most resource-intensive tier undersells its own point.
- 2 Jul 2026 — v1.1 (correction release). Fixed after an external-standard audit: shower equivalence was ~300× off (0.13 L treated as a full shower; now 47.5 L per 5-min shower); Google's fleet figure was mislabeled litres (it's 5.6 B gallons ≈ 21 B L, 2022); Microsoft relabeled FY2022; phone manufacturing 900 L → ~13,000 L; the "540 mL per 4K hour" chip contradicted the model's own 150 mL/hr rate and was corrected; action-plan savings now combine multiplicatively instead of double-counting; router pricing updated to Sonnet 5 at current list prices (cost claim 73% → 67%) and its at-scale dollar math fixed (it previously assumed 1 token per query); prompt-check's compression score could exceed 100 and is now clamped; two hub claims we could not support were retired (720p = 40% water; batching = 80% water) — batching is now stated as the verifiable 50% cost discount.
- Earlier — v1.0. Initial release of the four tools.
Under review
- Social & browsing rate (0.022 L/hr) — unsourced; seeking a citable basis.
- Gaming derivation — the stated inputs (200W × 0.5 L/kWh) reproduce 0.10 L/hr, not the 0.18 used; the server-side share needs quantifying.
- Wi-Fi-vs-cellular factor (~25%) — direction is well supported (mobile networks use several times more energy per GB; Carbon Trust); the magnitude depends on your network mix, so treat it as an estimate.
- One-complete-prompt factor (50%) — arithmetic, not measurement: it assumes clarification rounds roughly double query counts for a typical task.
These pages practice what they preach: everything runs in your browser, nothing is logged, and this methodology page is plain HTML any crawler can read.