What we are measuring, and why
Before any number, four claims. Each one decides what the instrument is allowed to say later, so they come first rather than as an appendix.
Ecological is not a synonym for environmental.
Environmental thinking asks: what does this emit? It produces a footprint — one number, attached to an object, portable, comparable, marketable.
Ecological thinking asks a harder question: what does this depend on, what does it displace, and what depends on it? Ecology is the study of relations between living things and the conditions that sustain them. Its unit is not the object. Its unit is the flow: energy, water, materials and land, moving through a system that has a boundary and a limit.
Nothing is green in the abstract.the first rule, and the reason this page carries dates
A thing is only ever less or more costly than a specific alternative, in a specific place, at a specific time. “This model is sustainable” is not a claim that can be true or false. “This model used a quarter of the energy of that one, for the same task, on the same hardware, on the Dutch grid in September” can be.
Any score that does not carry its place, its time and its alternative is decoration. That is why every figure on this page is followed by the conditions that produced it, and why the label in §06 refuses to travel without them.
A datacentre is a machine for turning electricity into answers and warm air.
Every computation dissipates heat. Not as a defect to be engineered away — as the physical definition of what computing is.
Efficiency changes the ratio. It never reaches zero, and it never runs backwards. So the honest question is never “is this clean?” It is always “how much, for what?”
This is also why the arithmetic in Part III is so short. There is no modelling trick in it. A card draws a fixed number of watts whenever it is on, and the only question the estimator asks is how long was it on for your one answer. Everything else — the carbon, the water — is that number multiplied by a property of the place it ran.
The relation runs both ways
Ecology is not one-directional harm accounting. A thing sits inside a web: it consumes, and it also changes the behaviour of everything around it. An AI system has a physical cost, and it also shapes what millions of people decide to do next — what they buy, repair, replace, throw away, believe.
For most technologies the second effect is larger than the first, and almost nobody measures it. A model that draws a tenth of a watt-hour while persuading someone to replace a working appliance has not been cheap. This part of the account has no established method, and we say so rather than quietly leaving it out.
Cheaper per unit means more units. It has meant that since 1865.
Efficiency is impact per unit of output. Sufficiency is asking whether the output was needed.
The history of industrial efficiency is unambiguous: efficiency gains are consumed by volume growth, usually completely. Jevons observed it in coal and it has not stopped being true.
Which is why the label in §06 carries a sufficiency line and not only a grade. A grade tells you what something cost. A sufficiency line tells you what you could have done instead, and only the second one changes a decision.
A model is a file. It has no footprint until it runs.
What has a footprint is a use of a model, on particular hardware, in a particular building, on a particular grid, at a particular hour, to accomplish a particular task.
Every one of those words is a parameter, and dropping any of them produces a number that cannot be checked. This is why “which AI is greenest” has no answer, and why the question has to be rebuilt before it can be answered.
And the unit is the task, not the token
Tokens are a billing unit. They are what the vendor meters, so they are what everyone reports. But nobody wants tokens. People want a question answered, a document drafted, a bug found.
Measuring per token makes a verbose model look efficient and hides retries entirely. A model that answers correctly on the first attempt beats one that needs five — and per-token accounting ranks them the other way round.
The instrument
What comes out of the machine, what it is called, and why it is allowed to be a single number after all.
It is an account, not a score.
A score is a verdict. An account is a record you can audit, disagree with, and re-run with different assumptions.
The output of evaluating one use of AI is a task receipt: what was asked, what it cost, and whether it worked. The collection of receipts, and the method behind them, is the TELOS account.
What goes in
What comes out
A vector, never a bare number. Every line carries its boundary and its uncertainty.
- Energywatt-hours for the whole task, not one request
- Carbongrams CO₂e, both conventions — location and market
- Watermillilitres, both conventions — on-site cooling and off-site generation — weighted by local scarcity
- Capability deliveredwhat the task actually needed, not the model's benchmark score
- The ratiocapability ÷ impact. The headline
- The sufficiency linewhat the smallest model that would have finished this would have cost
- The gapswhat could not be known, listed rather than hidden
The same reading, in three sizes.
The account is what you open. The label is what travels — into a model card, a report, a procurement table. It may never travel stripped.
The components come before the single figure, the coverage is stated on the face, and the conditions ride along. A label without its hardware, batch, grid and date is a badge, and a badge is the thing §01 rules out.
grid 268 g/kWh · water 1.8+3.433 L/kWh · 2026-09-22
At the end of an answer, where a citation would sit. The only form allowed to carry no numbers, because it is one press from all of them.
For a table row. The ratio leads, because that is the question. The grade is the small strip, because it only reads watt-hours.
An inferred label shows a span, never a point. The third is drawn empty on purpose: nothing in the registry is metered, so there is no measured reading to show, and the form waits rather than borrowing an estimate.
c · the cardThe portable object, on the left. Everything the one-liner compresses, plus the sufficiency line and the conditions. The only form that survives being screenshotted out of context — which is the test a label has to pass.
The rule is not “never combine”. It is “no aggregate hides its weights”.
To reduce energy, carbon and water to one figure you must decide how much a litre of water is worth in grams of CO₂. There is no scientific answer to that — it is a judgement.
Once that judgement is baked into a single number, nobody can see it or argue with it. So the single number is permitted on one condition: the weighting is named, published, and swappable by the reader.
The method we adopt
Environmental Footprint 3.1 — the European Commission's own method, used in PEF and OEF. Sixteen impact categories and official factors that combine them into one score in points. Adopting a format rather than inventing one. Alongside it, AWARE for water, which converts cubic metres into scarcity-weighted equivalents so that a litre in a dry basin counts for more than a litre in a wet one; and ReCiPe 2016 or CE Delft's environmental prices as alternatives a reader can select.
Computed, as of TELOS-lite 1.1
Every session record and every label now carries the EF 3.1 single score, worked out with the Commission's published normalisation and weighting factors (JRC, EF 3.1). Each impact is first divided by what one average person on Earth causes in that category in a year, then weighted and added. So the score reads as a share of one person's yearly footprint: one point is a whole person-year, one micro-point (µPt) a millionth of it.
That is what the label means by “a person's footprint”. It is not a person's total impact, only the categories we can fill, and the label turns the share back into time: the podcast session behind café topic 319 (613 Wh, sealed as [t:2120e44b26a4eef8]) scores 10.5 µPt, which is about twelve minutes of what an average person causes in climate, water, fossil and mineral use. One request to Qwen: Qwen3.5-9B on this page's reference setup is 0.321 nPt, about 14.0 milliseconds.
The weighting barely changes the ranking today. Every impact below descends from the same joules, so the components move together and swapping EF for ReCiPe would reorder almost nothing. The weights begin to matter when real per-facility water and real hourly grid data replace the constants in §15. Build the mechanism now; do not oversell what it currently does.
EF weights impacts, not value. It gives a clean denominator and has no opinion about the numerator — correctly. The ratio still needs a capability measure on top, and choosing that remains a judgement we publish rather than derive.
Precision is not the constraint
Any unified score will never be exact. Largely beside the point: the spread between models on this axis is a factor of 7 — Qwen: Qwen3.6 35B A3B against Anthropic: Claude Opus 5.5. A weighting method arguable at ±30% still separates them cleanly. Order of magnitude is the useful resolution, and it is robust to every weighting choice on the table.
What precision is required for: comparing two similar models. That we refuse to do, loudly, wherever the inputs were inferred rather than counted.
The roadmap has one dimension. The instrument needs two.
The three tiers all answer the same question: how well do you know the energy.
| Tier | Where the numbers come from | Available |
|---|---|---|
| TELOS-lite | public data only — size counted, derived from the expert configuration, or inferred from price | now, all 465 models |
| TELOS-plus | your hardware, your batch, your grid, your facility's real PUE and WUE, real token counts | now, for anything you run yourself |
| TELOS-full | a meter on the wire, per request | now, on your own machine. Never from outside a closed API |
That is precision of the denominator. It is not the whole instrument. A TELOS-full with a physical meter still cannot say what one task cost, or whether it worked.
| Axis | What it fixes | State |
|---|---|---|
| Precision of impact — lite / plus / full | how much of the number is guessed | built, and on this page |
| Unit of measurement — hypothetical request / real session / completed task | what the number is per | not built |
A TELOS-lite that counts a real session is worth more than a TELOS-full that scores an imaginary prompt.where the next work goes
The data, and the calculation
What we actually hold, and exactly what is done with it. Every figure below was computed when you loaded this page. Where something is an assumption rather than a measurement, it says so on the line.
465 models. Eleven where nothing is guessed.
Merged from three sources: Artificial Analysis for capability, OpenRouter for the model list and prices, and each model's own repository for size and architecture.
Every model publishes what it charges. Fewer than a quarter publish what they are. 10 of 465 carry a counted size, a full architecture, an independent capability score and a price at once — and every one of them is from Qwen, Mistral or IBM. Not one from Anthropic, OpenAI or Google.
That ratio is not a gap in our work. It is the finding.§09
Four routes to one number, and the page always says which was used.
The physics downstream is identical in all of them. What changes is only how well the size is known — which is exactly what the route word on the label records.
Twenty inputs collapse into one thing: seconds of machine time.
Qwen: Qwen3.5-9B, one of the rows where nothing is inferred. Nothing below is hidden, and nothing is fitted.
There is no clever formula in it. Time × watts, then unit conversion. The difficulty is never the arithmetic — it is knowing the size, which §10 is about, and knowing the place, which §15 admits we mostly do not.
The scale is not ours. It is anchored on a figure someone else published and stands behind.
Google states 0.10 watt-hours for the median Gemini text prompt, measured at the same boundary this estimator uses. That sits on the C/D line.
C or better means: no worse than Google's median prompt.the whole of the grade, in one sentence
A grade with a ? after it means the model's size was inferred rather than counted, so the letter is an order of magnitude and the label shows a span instead of a point.
Capability for what it cost, across 98 models.
This is the number Part II asks for, and the result is the opposite of the industry's assumption.
| Model | Index | Wh | Grade | Points per Wh | Size known |
|---|---|---|---|---|---|
| Qwen: Qwen3.6 35B A3B | 18.2 | 0.0064 | A | 2,855 | derived |
| DeepSeek: DeepSeek V4 Flash 0423 | 34.3 | 0.0155 | A? | 2,216 | inferred |
| inclusionAI: Ling 3.0 Flash VL | 24.6 | 0.0137 | A? | 1,802 | inferred |
| Xiaomi: MiMo-V2.6-Flash | 37.9 | 0.0225 | B | 1,685 | derived |
| OpenAI: GPT-6 Luna | 38.1 | 0.0326 | B? | 1,170 | inferred |
| DeepSeek: DeepSeek V4.1 Flash | 39.5 | 0.0351 | B? | 1,124 | inferred |
| Qwen: Qwen3 Coder Next | 9.2 | 0.0084 | A | 1,092 | derived |
| Upstage: Solar Mini 4 | 24.1 | 0.0223 | B? | 1,082 | inferred |
| Anthropic: Claude Fable 5.1 | 53.4 | 0.2207 | D? | 242 #68 | inferred |
| Anthropic: Claude Opus 5 | 50.8 | 0.1654 | D? | 307 #55 | inferred |
| Anthropic: Claude Sonnet 4.6 | 30.1 | 0.1338 | D? | 225 #71 | inferred |
| OpenAI: GPT-5.6 Sol | 47.0 | 0.1131 | D? | 416 #43 | inferred |
| SpaceXAI: Grok 4.6 | 44.3 | 0.0915 | C? | 484 #32 | inferred |
| Google: Gemini 3.7 Flash | 39.1 | 0.0752 | C? | 520 #26 | inferred |
| Xiaomi: MiMo-V2.6-Pro | 46.3 | 0.0522 | C | 887 #13 | derived |
| Qwen: Qwen3.5-9B | 11.2 | 0.0264 | B | 424 #41 | counted |
| IBM: Granite 4.2 8B | 11.1 | 0.0252 | B | 440 #37 | counted |
Qwen: Qwen3.6 35B A3B delivers 7× more capability per watt-hour than Anthropic: Claude Opus 5.5, the cleverest model we can place on this axis at all. It is less clever — 18.2 against 57.6 — but it draws a fraction of the energy to be that clever.
Which turns “which model is best” into “which model is sufficient” — and that is where essentially all of the available saving lives. Not in making frontier models greener. In not calling them when something smaller would have done.
A batch shares one read of the weights. You do not.
The same weights, on a shared server and on your own card. Nothing changes but who you share the machine with.
Qwen: Qwen3.5-9B
24.5× more energy per request for the same answer.
IBM: Granite 4.2 8B
23.4× more energy per request for the same answer.
Anyone building a “run it locally, it's greener” story should meet these numbers first. Local is private. It is not clean.
water() multiplies kilowatt-hours by whatever cooling figure it is handed, so a run on your own machine is charged cooling-tower water it never used. Measured overstatement: 34%. The energy figures above are unaffected. Listed here rather than discovered later.The boundary, and the things that are wrong inside it.
A figure is meaningless until its boundary is stated. Ours is the accelerator, plus a facility overhead factor. Everything below is outside it.
The place is where this is weakest
Four of the six environmental parameters are assumptions with no source behind them, and none of them varies by model — they are global constants. So environmental impact here is energy × four constants, which means the impact ranking and the energy ranking are the same ranking. The environmental layer currently adds no information of its own.
| Input | Value | What it really is |
|---|---|---|
| grid carbon, location | 268 g/kWh | NL average, operator-set |
| grid carbon, market | 90 g/kWh | illustrative, so labelled in the code |
| water, off-site | 3.433 L/kWh | real — EcoLogits / Boavizta NL mix |
| water, on-site | 1.8 L/kWh | placeholder, so labelled in the code |
| facility overhead | 1.1 | assumption |
| embodied hardware share | 0.30 | industry midpoint |
Known defects, listed rather than discovered
- Water has no local flagA non-datacentre run is charged cooling-tower water it never used. 34% overstated for a local model on a consumer card.
- The place does not vary by modelFour constants applied to everyone, as the table above says.
- Everything is per hypothetical request1000 in, 300 out. No session, no retries, no record of whether the task succeeded. The largest gap, and §08's second axis.
- The registry holds two datesMost rows were pulled on 2 September; models released since were added by hand, and each carries its own retrieval date rather than being smoothed into the rest.
- Nothing is meteredZero of 465 models carry a measured energy figure. TELOS-full exists as a design, not as a row.
None of this is a reason to distrust the order of magnitude. It is the reason not to quote two similar models against each other.