How the Green Index is calculated
Methodology version 1.0.0
The Green Index is a score from 0 to 100 calculated deterministically from the data of a single measurement: same inputs, same score, every time. No value produced by a language model enters this calculation. Every threshold in use is listed below, in the version the score is calculated with today.
How the score is composed
Six sub-scores, each from 0 to 100 and rounded to an integer, combined with these weights. The total is rounded once, at the end, over the already rounded sub-scores.
| Sub-score | Weight | What it measures |
|---|---|---|
| Estimated emissions | 35% | Estimated grams of CO2e for one page view |
| Transferred weight | 20% | Bytes transferred on the first visit, with an empty cache |
| Waste | 15% | Unused CSS and JavaScript, plus image bytes spent beyond the rendered size |
| Hosting power supply | 15% | Outcome of the check on how the hosting is powered |
| Third parties | 10% | Weight and number of third-party domains |
| Technical hygiene | 5% | Eight technical checks, each either passed or not |
How measurements become a score
Emissions and page weight become a score by linear interpolation between these anchors. Below the first value the score is 100, above the last one it is 0.
Estimated emissions per page view (g CO2e)
| Measured value | Score |
|---|---|
| 0.10 | 100 |
| 0.25 | 85 |
| 0.50 | 70 |
| 1.00 | 45 |
| 2.00 | 20 |
| 4.00 | 0 |
Weight transferred on the first visit (MB)
| Measured value | Score |
|---|---|
| 0.5 | 100 |
| 1.0 | 85 |
| 2.0 | 65 |
| 4.0 | 40 |
| 8.0 | 15 |
| 12.0 | 0 |
The other three formulas
- Waste: start from 100 and subtract up to 65 points in proportion to the share of unused CSS and JavaScript, plus up to 35 points in proportion to the share of image bytes spent beyond the rendered size. An image counts as oversized when its natural area is more than twice the area it is rendered at.
- Hosting power: 100 when the check confirms renewable energy according to the Green Web Foundation, 0 when it rules it out, 35 when the outcome cannot be determined. With an undetermined outcome the measurement does not meet every threshold.
- Third parties: start from 100 and subtract up to 55 points in proportion to the share of bytes served by third-party domains, saturating at 50 per cent of the total weight, plus up to 45 points in proportion to the number of distinct third-party domains, saturating at twenty domains.
- Technical hygiene: eight checks worth 12.5 points each. Where there is nothing to judge the check counts as passed: a page with no fonts is not at fault over font-display.
The eight technical hygiene checks
- Text resources above 1 KB arrive compressed, with gzip, br or zstd.
- Static resources declare a cache lifetime of at least one day.
- At least 80 per cent of image bytes are in AVIF, WebP or SVG.
- No image below the fold is loaded without the lazy attribute.
- Every image declares its own dimensions or aspect ratio.
- No third-party script blocks rendering inside the page head.
- Every font declares font-display swap or optional.
- The document does not exceed 1500 nodes.
From score to grade
| Green Index | Grade |
|---|---|
| 90 and above | A+ |
| 80 to 89 | A |
| 70 to 79 | B |
| 60 to 69 | C |
| 45 to 59 | D |
| 30 to 44 | E |
| 0 to 29 | F |
When a measurement meets every threshold
The report states whether the measurement meets all five of these conditions and, if one is missing, which one and by how much. This assessment stays in the report: a verifiable measurement is issued for every measured page and carries only the figure, not this outcome.
- A Green Index of at least 70 out of 100.
- An estimate of at most 0.50 g CO2e per page view.
- Renewable hosting power confirmed.
- No finding of critical severity.
- A completed measurement, with no limits exceeded and at least 10 resources.
How emissions are estimated
The estimate uses the Sustainable Web Design v4 model (swdm-v4) through the CO2.js library, declaring model and version explicitly. The coefficients are not rewritten: the value comes from the library and is never recalculated elsewhere.
The calculation weighs the two passes of the measurement with a fixed ratio of 0.75 for the first visit, with an empty cache, and 0.25 for the return visit, with a warm cache.
The calculation takes the bytes that actually travelled over the network, the carbon intensity of the electricity grid in the site country, and the outcome of the check on how the hosting is powered.
It is a model estimate, not a direct measurement of emissions: it depends on the model assumptions about device, network and data centre.
Versions and measurements already issued
The methodology version is stored on every measurement. If a threshold or the model changes, the version is incremented and values calculated earlier are not silently recalculated: a measurement stays readable under the rules of the day it was issued.
Where the model and the data come from
- The Sustainable Web Design v4 model, with its coefficients and assumptions, is published by Sustainable Web Design. sustainablewebdesign.org
- The hosting power outcome and the CO2.js library that applies the model both come from the Green Web Foundation. thegreenwebfoundation.org
Both sources are third parties and maintained by them: no number of theirs is rewritten here, the model and version used for the calculation are declared instead.
Verifying a measurement
Every verifiable measurement carries a code and a fingerprint of the measured data. At https://ecowebmeter.it/en/verifica you can check whether it is still valid and what it measured.