Why AI footprint estimates differ: published figures, each with its boundary and its date
Published figures checked against their primary sources on . SOMA's own figures are estimates computed from Factor version soma-ai-ef-2026.10-dataset-v3.0.0. Last updated .
Part of the SOMA AI Emission Factors cluster.
Why do published figures for one AI prompt differ so much?
Because they count different things. Google's August 2025 report gives 0.24 Wh for the median Gemini Apps text prompt when the whole serving stack is counted, and 0.10 Wh for the same prompt on a narrower accelerator-only method, a gap of 2.4 times inside one paper. Across the sources below, energy per response runs from about 0.02 Wh to about 40 Wh, carbon from under 0.01 g to about 17 g, and water from 0.12 mL to over 200 mL. Five choices drive that spread. They are what a prompt contains, which parts of the stack count, which grid and accounting basis apply, which lifecycle stages are included, and which water is counted. Each figure below carries its boundary and its date.
What has been published, with what boundary, and when?
The three tables list figures in order of publication, each as its publisher stated it, and each linked to the document that states it. A value in one row is not a correction of a value in another. Most rows answer a different question, and the boundary column says which.
| Value | Unit | Model or service | What the boundary counts | Publisher and primary source | Published |
|---|---|---|---|---|---|
| 0.047 | Wh per inference (0.047 kWh per 1,000) | Text-generation models, mean across a benchmark | Energy recorded by the authors on their own machines, as a benchmark across task types. Not a commercial service. | Luccioni, Jernite and Strubell | |
| 0.3 | Wh per query | GPT-4o, 500 output tokens | Modelled. H100 clusters at about 1,500 W per GPU including server and data-centre overhead, 70% of peak power, 10% GPU utilisation. Excludes training and embodied hardware. The author describes the assumptions as erring towards high energy. | Epoch AI (Josh You) | |
| 2.5 and 40 | Wh per query | GPT-4o with 10,000 and 100,000 input tokens | Same method as the row above, with long inputs. | Epoch AI (Josh You) | |
| 0.42 (±0.13) | Wh per query | GPT-4o, 100 input and 300 output tokens | Modelled from public API latency and throughput, published GPU power specifications and provider multipliers including PUE. | Jegham et al. | |
| 0.443 to 29.078 | Wh per query | 27 models with long prompts, 10,000 input and 1,500 output tokens | Same method as the row above. The low end is Llama 3.1 8B and the high end is DeepSeek-R1 on DeepSeek's servers. | Jegham et al. | |
| 0.032 | Wh per response (114 J) | Llama 3.1 8B | GPU energy recorded at 57 J, then doubled as an approximation for CPU, fans and other equipment. | MIT Technology Review | |
| 1.86 | Wh per response (6,706 J) | Llama 3.1 405B | Same doubling method as the row above. | MIT Technology Review | |
| 0.34 | Wh per query | Average ChatGPT query | Not stated. The post gives no method, token count or boundary. | Sam Altman | |
| 0.24 | Wh per prompt | Median Gemini Apps text prompt, May 2025 | Google's Comprehensive Approach. Active accelerators, host CPU and DRAM, idle machines and data-centre overhead. Excludes training. | Google (Elsworth et al.) | |
| 0.10 | Wh per prompt | Same median prompt | Google's Existing Approach. Active accelerator energy on a highly utilised benchmark, subsampled from the 10% most energy-efficient data centres. Google's blog calls this scenario optimistic. | Google (Elsworth et al.) | |
| 0.31 (IQR 0.16 to 0.60) | Wh per query | Frontier-scale models above 200 billion parameters, 300 median output tokens | Modelled for H100 nodes under production load. Full-node power with PUE sampled between 1.05 and 1.40. Idle capacity is explored separately. | Oviedo et al., Microsoft (Joule, 2026) | |
| 3.91 (IQR 2.15 to 7.05) | Wh per query | Same models, long queries of 5,000 median output tokens | Same method as the row above, for long test-time-scaling queries. | Oviedo et al., Microsoft (Joule, 2026) | |
| 18.35 to 49.53 | Wh per 1,000 queries | SmolLM3-3B, Phi-4-reasoning-plus and DeepSeek-R1-Distill-Llama-70B, reasoning off | GPU energy, as the score's column is labelled, on the project's custom datasets. | AI Energy Score v2 (Hugging Face and partners) | |
| 7,626.53 to 12,791.22 | Wh per 1,000 queries | Same three models, reasoning on | Same as the row above. | AI Energy Score v2 (Hugging Face and partners) | |
| 0.030, 0.099 and 0.367 | Wh per exchange of 928 input and 282 output tokens, before the reasoning uplift | SAEF classes A, B and C | Estimate. Benchmarked accelerator energy with host, idle and facility uplifts. | SOMA AI (under peer review) |
| Value | Unit | Model or service | What the boundary counts | Publisher and primary source | Published |
|---|---|---|---|---|---|
| 2.2 | g CO₂e per query | ChatGPT, 2023 | 0.382 g of operation plus 1.84 g of training amortised over an assumed query volume. Figures from the arXiv version. | Tomlinson, Black, Patterson and Torrance | |
| 1.25 to 1,325.12 | g CO₂e per 500 questions (0.0025 to 2.65 g per question) | Open models, each phase of 500 questions counted separately. 1.25 g is Cogito 8B on multiple choice, 1,325.12 g is DeepSeek-R1 70B on free response | Inference on a local Nvidia A100, converted at a global average of 480 g CO₂ per kWh. The paper does not say whether training or manufacturing is included. | Dauner and Socher, Frontiers in Communication | |
| under 0.3 to about 17 | g CO₂e per query | 27 models with long prompts, 10,000 input and 1,500 output tokens | Modelled energy multiplied by regional carbon intensity factors for each provider. The high end is DeepSeek-R1 on DeepSeek's servers. | Jegham et al. | |
| 1.14 | g CO₂e per response | Le Chat, 400-token response (Mistral Large 2 study) | Marginal inference impact, excluding users' terminals, from a lifecycle study following the GHG Protocol Product Standard and ISO 14040/44. Mistral reports training separately at 20.4 kt CO₂e, and states that Resilio and Hubblo reviewed the work. | Mistral AI with Carbone 4 and ADEME | |
| 0.03 | g CO₂e per prompt | Median Gemini Apps text prompt | Market-based grid factor of 94 g per kWh for 2024, plus Scope 1 and embodied Scope 3 terms. Excludes training. | Google (Elsworth et al.) | |
| 0.02 | g CO₂e per prompt | Same median prompt | Google's Existing Approach, as in the energy table. | Google (Elsworth et al.) | |
| 0.4 and 3.2 | g CO₂ per request | Kimi K3, 5,000 input and 387 output tokens, on a B300 node in Sweden and in Texas | Location-based electricity plus hardware manufacturing, which is 89% of the Sweden figure. Company press release, corrected on 21 October 2026. | Berget AI | |
| 0.0094 to 0.055 | g CO₂e per exchange of 1210 tokens | SAEF class B, EU North - Sweden to Asia Pacific - Singapore | Estimate. Electricity on a location-based lifecycle grid factor, plus embodied hardware, construction and amortised training. | SOMA AI (under peer review) |
| Value | Unit | Model or service | What the boundary counts | Publisher and primary source | Published |
|---|---|---|---|---|---|
| 16.9 (7.1 to 47.5 by location) | mL per request | GPT-3, medium-length response at 0.004 kWh server energy | US average of 2.2 mL on-site plus 14.7 mL off-site for electricity generation. Excludes embodied water. The authors summarise this as a 500 mL bottle for roughly 10 to 50 responses. | Li, Yang, Islam and Ren (UC Riverside and UT Arlington) | |
| under 4 to over 200 | mL per query | 27 models with long prompts, 10,000 input and 1,500 output tokens | Modelled, on-site cooling plus off-site electricity generation. The high end is DeepSeek-R1 on DeepSeek's servers, 34 mL for the same model on Azure. | Jegham et al. | |
| 0.32 | mL per query (stated as 0.000085 US gallons) | Average ChatGPT query | Not stated. The post does not say which water is counted. | Sam Altman | |
| 45 | mL per response | Le Chat, 400-token response (Mistral Large 2 study) | Marginal inference impact, excluding users' terminals, from the same lifecycle study as the carbon table. | Mistral AI with Carbone 4 and ADEME | |
| 0.26 | mL per prompt | Median Gemini Apps text prompt | Water consumed at the data centre, using a fleet water usage effectiveness of 1.15 L per kWh for 2024. The paper does not mention water used to generate the electricity. | Google (Elsworth et al.) | |
| 0.12 | mL per prompt | Same median prompt | Google's Existing Approach, as in the energy table. | Google (Elsworth et al.) | |
| 0.24 and 0.59 | mL per exchange of 1210 tokens | SAEF class B, US East - N. Virginia and EU North - Sweden | Estimate. On-site cooling plus water embedded in generation, with hydro allocated. | SOMA AI (under peer review) |
The AI Energy Score methodology is set out on the project's own page, and the Google narrower figures also appear in its blog post of the same date.
What does one prompt contain?
Usually an undisclosed number of tokens, and that number moves the result almost in proportion. Epoch AI assumes 500 output tokens, Jegham and co-authors use 100 input and 300 output for a short prompt, Mistral reports a 400-token response and Oviedo and co-authors sample around a median of 300 output tokens. SAEF's default exchange is 928 input and 282 output tokens. Google's paper does not state a token count for its median prompt and Altman's post does not state one for his average query. A median and an average are also different statistics of the same traffic.
The arithmetic on one factor shows the size of this choice. For SAEF class C, with nothing changed but the token counts, 100 input and 300 output tokens come to 0.216 Wh, 928 and 282 come to 0.367 Wh, and 10,000 and 1,500 come to 2.95 Wh. That is 13.6 times from the definition of a prompt alone. SAEF weights input tokens below output tokens, which is why the middle case is not simply three times the first.
Reasoning is the extreme case of the same effect. In the AI Energy Score post, DeepSeek-R1-Distill-Llama-70B goes from 49.53 to 7,626.53 Wh per 1,000 queries when reasoning is switched on, or 154 times. Oviedo and co-authors estimate a rise of 13 times for queries about 15 times longer than typical. The two figures rest on different models and workloads and do not need to agree.
Which parts of the serving stack are counted?
Anything from the accelerator alone to the whole facility. Google's own comparison is the cleanest illustration, because the prompt does not change. Its Existing Approach gives 0.10 Wh and its Comprehensive Approach, which adds host CPU and DRAM, idle machines and data-centre overhead, gives 0.24 Wh.
The same step appears elsewhere as a stated multiplier. MIT Technology Review doubles a GPU reading of 57 J to 114 J, so 0.016 Wh becomes 0.032 Wh. The AI Energy Score keeps GPU energy on its own, because that is what it uses to compare models. SAEF applies three published uplifts to accelerator energy. For class C that is 0.186 Wh × 1.5 (host) × 1.1 (idle) × 1.2 (facility) = 0.367 Wh per exchange, so about 49% of the final figure sits outside the accelerator.
Which grid and which accounting basis apply?
A location-based factor describes the grid where the electricity is drawn. A market-based factor nets off the buyer's contracted clean energy. Google's paper publishes both for 2024, which makes the difference easy to compute for one prompt. At the location-based 345 g per kWh, 0.24 Wh is 0.083 g CO₂e. At the market-based 94 g per kWh, it is 0.023 g. Google's published 0.03 g uses the market-based factor and adds its Scope 1 and embodied Scope 3 terms. The location-based sum above is our arithmetic and is not a figure Google publishes.
Region then does the rest. SAEF's implied electricity intensity runs from 0.038 kg CO₂e per kWh in EU North - Sweden to 0.501 in Asia Pacific - Singapore, which is 13.0 times. For a class B exchange of 0.099 Wh, electricity alone is 0.0038 g in the first and 0.049 g in the second. Berget AI's published comparison of one request in Sweden and in Texas shows the same lever on a different model and hardware.
Which lifecycle stages are included?
Electricity at the point of use is the common core, and sources differ on what they add. Epoch AI excludes embodied hardware and training. Google adds embodied Scope 3 and leaves training to future work. Mistral reports inference and training as separate results. Tomlinson and co-authors amortise training into the query, so 1.84 g of their 2.22 g is training.
The share of these extra terms depends on the grid. For a SAEF class B exchange, electricity is 90% of the 0.053 g total at the world-average grid and 40% of the 0.0094 g total in EU North - Sweden. The cleaner the grid, the more of the result is hardware and training, so an electricity-only figure and a lifecycle figure drift further apart exactly where the electricity is cleanest. SAEF reports model development as a separate line that is never added to these totals.
Which water is counted?
On-site cooling, or that plus the water consumed in generating the electricity. Li and co-authors publish both for GPT-3. Their US average is 2.2 mL on-site plus 14.7 mL off-site, 16.9 mL in total, so 87% of that figure is off-site. Google's 0.26 mL is water consumed at the data centre. Those two values also differ in model, year and hardware, so their ratio does not describe a change in efficiency.
SAEF prints the components separately for the same reason. A class B exchange in US East - N. Virginia is 0.003 mL on-site and 0.24 mL in total. In EU North - Sweden it is 0.001 mL on-site and 0.59 mL in total, higher even as the carbon falls, because of the water allocated to hydropower. Altman's post does not say which water its 0.32 mL represents, so it cannot be placed on either side of this line from the post alone.
How do I restate a published figure on another boundary?
Change one term at a time and label the result as your own arithmetic. The first block takes Google's energy figure and applies each of its two published grid factors.
# Restate one published energy figure on two carbon bases.
# Google's 2024 factors, from Elsworth et al. (arXiv 2508.15734).
wh_per_prompt = 0.24
location_based_g_per_kwh = 345
market_based_g_per_kwh = 94
def grams(wh, g_per_kwh):
return wh * g_per_kwh / 1000
print(grams(wh_per_prompt, location_based_g_per_kwh)) # 0.0828
print(grams(wh_per_prompt, market_based_g_per_kwh)) # 0.0226The second block is the calculation behind an inventory line. The full table of factors is in the SAEF CSV and each column is explained on the methodology page.
# One inventory line from SAEF. Factors are class B, kg CO2e per million billed
# tokens at the dataset's default input and output mix, version soma-ai-ef-2026.10-dataset-v3.0.0.
FACTORS = {
"us-east-1": 0.02606,
"eu-north-1": 0.00714,
}
def inventory_line_kg(billed_tokens, region):
return billed_tokens / 1_000_000 * FACTORS[region]
print(inventory_line_kg(1_000_000_000, "us-east-1")) # 26.06
print(inventory_line_kg(1_000_000_000, "eu-north-1")) # 7.14Which figure should go in a corporate inventory?
One that scales with your own activity and whose boundary you can state. A per-prompt headline describes someone else's traffic, so multiplying it by your message count inherits assumptions you cannot see. These five checks narrow the choice.
- Prefer a factor per token or per message over a per-prompt headline, and use your provider's token export where one exists.
- Check the boundary against the standard you follow. The GHG Protocol Scope 3 Standard sets the minimum boundary of Category 1 as all upstream, cradle-to-gate emissions of purchased goods and services, so an electricity-only figure leaves part of that boundary uncounted and the exclusion should be disclosed and justified.
- Use one accounting basis across the inventory where you can, and say so. A market-based figure for one service added to a location-based estimate for another produces a total that is hard to explain.
- Record the source, the version and the date. A figure from a page that changes silently cannot be rebuilt next year.
- Where a provider issues a figure for your own account and states its boundary, use that instead of a calculated estimate for that service.
The steps from usage export to finished line are in the Scope 3 guide.
Where do SAEF's own estimates sit in these tables?
In the same range for energy, and on a boundary that adds hardware and training for carbon. A class C exchange is 0.367 Wh, which is the same order as the 0.24 Wh, 0.3 Wh, 0.31 Wh and 0.34 Wh rows, although the token counts differ or are unstated. Class B is 0.099 Wh and class A is 0.030 Wh. Carbon includes embodied hardware, construction and amortised training on a location-based grid factor, so it should not be compared with a market-based figure without restating one of them first.
These are estimates built from public benchmarks, not readings from any provider's fleet. The method is under peer review (arXiv 2606.10660), and every value resolves to a versioned table at SOMA AI Emission Factors, so a reader can rebuild it.
Where do the widely repeated 4.32 g and 3 Wh figures come from?
The 4.32 g CO₂ per ChatGPT query traces to a Piktochart blog post, not to a study. It assumes 30,000 GPUs emitting 43,200 kg CO₂ a day spread over 10 million queries, and the post itself calls it an oversimplified calculation. It has no row in the tables above because it states no boundary.
The 3 Wh per query traces to de Vries, Joule, 18 October 2023, which takes a reported 0.3 Wh for a Google search and multiplies it by ten. It is a derived estimate from 2023, before providers published their own figures, and later work above sits roughly ten times lower for a short prompt.
A row needs a document we could open that states the value and enough of the method to fill the boundary column. Both origins were checked on 31 October 2026.
How do I compare any two AI footprint numbers?
Ask the same questions of both. If either one cannot answer, the comparison is not available yet.
- How many input and output tokens are in the unit, and is that stated or assumed?
- Which model or class of model, with reasoning on or off?
- Is the statistic a median, a mean or a single benchmark run?
- What is inside the energy boundary: accelerators, the whole server, idle capacity, the facility?
- Which region, and is the grid factor location-based or market-based?
- Are embodied hardware and amortised training included?
- For water, is it on-site cooling alone or also the water used to generate the electricity?
- When was it published, and on what hardware?
Get the documented figure for your organisation
SOMA turns your providers' usage exports into a finished Scope 3 Category 1 entry, with the tier, factor, version, sources and uncertainty attached, and with the questions above answered on the line itself. Write to lili@somaai.earth, or start with the methodology.
Keep reading
- Methodology. How SOMA's own estimates are built
- How to account for AI usage in a Scope 3 inventory. Turning a chosen figure into an inventory line, and where CSRD applies
- SOMA AI Emission Factors table and download. The factors by region and model class
