Landauer Gap
For AI and ML engineers · open method

Know the energy, cost and carbon of every AI run.

Estimate a training run before you pay for it, measure real joules while it runs, and fail the build when a job goes over its energy budget. Every number traces back to physics: today’s hardware spends hundreds of millions of times more energy per operation than the Landauer limit.

  • ±0.4%from published GPT-3, BLOOM and Llama 3 energy figures
  • 3 toolscalculator, joules CLI and a CI budget check, one account
  • Openevery formula shown, every assumption editable
real output · MacBook Air, every core busy
$ joules -- sh -c 'for i in $(seq $(getconf _NPROCESSORS_ONLN)); do python3 -c "x=0
for i in range(100000000): x+=i" & done; wait'
joules · 15.45 s · exit 0
  Apple SoC (CPU + GPU + ANE)   71.5 J   4.6 W avg
  total  71.5 J = 19.9 mWh
  cost <0.0001 · CO₂ 0.00735 g at 370 g/kWh

Free account. By continuing you agree to the Terms and Privacy policy.

Estimate, measure, enforce

01 · Calculator

Estimate before you train

Model size, tokens and hardware in; electricity, cost, CO₂ and the Landauer gap out, with every step of the derivation shown. Ranked what-ifs tell you which change saves the most.

6 × params × tokens → kWh → g CO₂
02 · joules CLI

Measure what really ran

Like time, but for energy. Reads NVIDIA, AMD, Intel and Apple meters with zero dependencies, then calibrates the calculator to your real utilisation and power draw. joules proxy puts an energy receipt on every AI response; joules agent splits a GPU cluster’s energy between its Slurm jobs and Kubernetes pods.

joules -- python3 -c "sum(range(10**8))"
03 · CI checks

Fail the build when energy grows

A GitHub Action measures your benchmark on every pull request, compares it with the base branch and comments the change. Another fails the check when a planned run goes over your kWh or CO₂ budget.

joules ci --budget 10 -- python3 -c "sum(range(10**7))"

An open leaderboard of real joules per token

Spec sheets say watts. Nobody publishes what a local model really costs per token on a given card. Run one command and your measurement joins the board: the median of everyone’s runs for each model and machine, with no names attached.

Which is cheaper per token: a 4090 at home or an H100 in the cloud? An 8B or a 70B quantised? Now you can look it up instead of guessing.

ModelHardwareJ / token

Loading the live board…

Compliance

Energy figures for EU AI Act documentation

Providers of general-purpose AI models must keep technical documentation that includes the model’s known or estimated energy consumption (AI Act, Article 53 and Annex XI). Where the energy is not known, Annex XI allows it to be estimated from the computational resources used. That is exactly what Landauer Gap computes, with the method written out.

Pro reports are PDFs with the inputs, the derivation, the assumptions and a report ID. Anyone can check the ID by running the same inputs again. The same figures support Scope 2 carbon reporting (CSRD, GHG Protocol) and customer sustainability questionnaires.

Landauer Gap is a calculation tool, not legal advice. Check your obligations with your own counsel.

  • Training compute6 × parameters × tokens, from your run’s numbers
  • Energyaccelerators, servers and facility (PUE), measured or estimated
  • Carbon and costyour grid’s intensity and your price per kWh
  • Audit traila report ID that the same inputs always reproduce

Pricing

Free
$0 forever
  • Training and inference calculator
  • joules CLI and the public leaderboard
  • Saved runs and side-by-side comparison
  • 100 API calls a month
Pro
$19 per month · cancel any time
  • Measured energy reports per project, as PDFs for AI Act and carbon reporting
  • Energy alerts to Slack, Discord or any webhook
  • Team workspace for up to 10 people
  • 20,000 API calls a month, 120 a minute, 10 keys
Landauer Gap
/workspace/calculator
1Start from a published run or your own accelerator
2Describe the workload: model size and tokens
3Read the gap, then the cheapest fixes
Tap ? beside any field for help · ⌘K for every command

Config

every field is live
Published runs
Hardware
W
TFLOPS
Training run
B
B
%
Serving
B
M
%
Location
g/kWh
$/kWh
Facility and physics
% W
×
×
K
Landauer gap
—
energy per operation ÷ physical minimum

Gap scope

LIVE—
joules per operation · log scale

Derivation

recomputed on every keystroke

Close the gap

same work, one change at a time · ranked by CO₂ saved
ChangeEnergyCO₂CostSaved

Energy breakdown

facility total
PartEnergyShareCO₂

D3 lens

Landauer → E = mc² → rs
Physical minimum for this work—
Mass equivalent of the energy—m = E / c²
Schwarzschild radius of that mass—
Δr_s per bit = 2 G k_B T ln 2 / c⁴

Reproduce

Sign in

Save runs, track your hardware and use the API.

Your new API key

Copy it now and keep it secret, like a password. It is shown only once; we store only a fingerprint of it.

To use it with the joules CLI, run this once in your terminal. It saves the key on your computer, so every terminal can use it.

This is part of Pro

Save this run

›
↑↓ move↵ runesc close