fernel
Methodology v1.1 · published 2026-11-05

How Fernel estimates impact

Anthropic and OpenAI don't publish energy figures per token. Every number in Fernel is therefore a modelled estimate. We publish the model, every parameter and its range, so anyone can check, challenge or improve it. Fernel stores raw token counts, so a new methodology version recalculates your entire history.

What's included

Fernel counts the electricity used to serve your requests in the provider's data centres: accelerators, host servers and idle capacity, scaled by data-centre overhead (PUE). It converts that electricity to CO₂e with location-based grid intensity, plus a small uplift for the emissions of manufacturing the hardware. It does not include model training, your own computer, networking or water use.

The formula

equivalent output tokens = output
                         + input        × r_input
                         + cache writes × r_cache_write
                         + cache reads  × r_cache_read

energy (Wh) = equivalent output tokens / 1000 × E_class × PUE
CO₂e (kg)   = energy (kWh) × grid intensity × embodied uplift

Generating a token (decode) is the expensive step. Reading prompt tokens (prefill) is much cheaper per token. Reading from the prompt cache skips prefill entirely, but the cached context still has to be loaded and attended to. Every value has a low, central and high estimate. The dashboard shows the central value and the low–high range. The range compounds all lows and all highs, so it is wide on purpose.

Why cache reads matter

Coding agents re-send large contexts on every step, so cache reads are often more than 90% of the tokens a heavy user generates. Each one is cheap, but there are so many that they can dominate the total. The cache-read ratio is therefore our most influential and most uncertain parameter. Nobody has measured it directly, so we derive it two ways. First, from the memory traffic of attending to a cached context on every generated token. Second, from provider prices, which put cache reads at 0.5–2% of an output token's price and so bound the cost from above. Both land at about 1%. This is a per-token simplification: the real cost grows with context length multiplied by output length, so it fits typical agent turns of a few hundred output tokens best.

Parameters

Model classWh per 1k output tokens (low / central / high)
small0.02 / 0.07 / 0.25
mid0.07 / 0.25 / 0.80
large0.15 / 0.50 / 1.50
frontier0.30 / 1.00 / 3.00
Token typeCost relative to an output token
Uncached input0.050 / 0.150 / 0.350
Cache write0.050 / 0.150 / 0.400
Cache read0.003 / 0.010 / 0.030
Factorlow / central / high
PUE1.08 / 1.15 / 1.35
Grid, Anthropic (kg CO₂e / kWh)0.25 / 0.36 / 0.45
Grid, OpenAI (kg CO₂e / kWh)0.25 / 0.38 / 0.55
Grid, Google (kg CO₂e / kWh, provisional)0.20 / 0.33 / 0.50
Embodied hardware uplift1.05 / 1.10 / 1.25
Model name matchesProviderClass
/^gemini.*(flash-lite|lite)/googlesmall
/^gemini.*flash/googlemid
/^gemini.*(ultra|deep-think)/googlefrontier
/^gemini/googlelarge
/opus/anthropicfrontier
/sonnet/anthropiclarge
/haiku/anthropicsmall
/^claude/anthropiclarge
/(mini|nano)/openaismall
/^gpt-5.*-pro|^o\d-pro/openaifrontier
/^gpt-5|codex|^o\d/openailarge
/^gpt-4/openaimid
/^gpt/openailarge
anything elseotherlarge (assumed)

Sources

Improving this

If a provider publishes real figures, we'll adopt them in a new version. If you have better data or think a parameter is wrong, tell us. Each change gets a new version number and a changelog entry.