Skip to content
CarbonlessBeta

Carbon report

www.theguardian.com/europe

Scanned · all pages on www.theguardian.com

Redirected here by the site from theguardian.com

0.175 g

cleaner than an estimated 75.3% of pages on the web 

  1. A+
  2. A
  3. B
  4. C
  5. D
  6. E
  7. F

A+ is 0.04 g or less per view, F is more than 0.359 g CO₂e.

Sign in to re-scan
What the browser rendered, so you can confirm a real page was measured.

The numbers

1.57 MBcold load, on the wire
1138 domains
1.23 MB90 requests
23 kB1% re-downloaded
0.233 g CO₂e
0.0033 g CO₂e
unknown
360 ms
0.001
47 ms

At 10,000 views a month this page emits about 21.0 kg CO₂e a year, roughly 86 km in an average petrol car. The estimate assumes 75% new and 25% returning visitors, a measured cache reload ratio of 1%, and world-average grid intensity. How we calculate this

What to fix

apply everything → ~0.072 g/visit, rating A

  1. Audit third-party servicessave ~0.069 g/visit (614 kB)High impact · moderate effort

    5 third-party domains account for 1.23 MB (78% of the page).

    Remove services that no longer earn their place; load the rest on interaction (facades for embeds, delayed consent-gated tags). Each third party is also a privacy and performance dependency.

    • assets.guim.co.uk618 kB
    • i.guim.co.uk413 kB
    • interactive.guim.co.uk166 kB
    • media.guim.co.uk30 kB
    • 0 B
  2. Reduce JavaScript payloadsave ~0.015 g/visit (138 kB)Medium impact · moderate effort

    47 scripts total 553 kB on the wire (2.16 MB decoded). Bundles this size usually carry a lot of unused code.

    Split bundles per route, tree-shake dependencies, and audit with a bundle analyzer or coverage profile. A 25% cut is a conservative target for bundles this size.

    • Notice.97af9.js95 kB
    • polyfill.min.js64 kB
    • index.client.web.e09f89c26980a44a8ee6.js48 kB
    • 9468.client.web.934edc10e2375f7184f5.js46 kB
    • wrapperMessagingWithoutDetection.js43 kB
  3. Verify your hosting energyMedium impact · moderate effort

    This host has not published renewable energy evidence with the Green Web Foundation, so its energy source is unknown.

    Choose a provider listed in the Green Web Directory, or ask your current provider to publish evidence (and a carbon.txt). This cuts the data-center share of every single page view.

    • carbon.txtNo carbon.txt found at the site root; publishing one is the lightest first step.
  4. Collapse the redirect chainMedium impact · quick fix

    The address that was scanned goes through 2 redirects before the document is served, ending at https://www.theguardian.com/europe. Every hop is a full round trip on a connection that has not warmed up yet.

    Point links, sitemaps and canonical tags at the final address, and make the host redirect in one hop rather than chaining http to https to www.

    • https://theguardian.com/redirects to https://www.theguardian.com/europe
  5. Optimize web fontssave ~0.0098 g/visit (88 kB)Advisory · quick fix

    10 font files total 251 kB.

    Subset fonts to used glyphs, prefer one variable font over multiple weights, serve WOFF2 only, and consider system fonts for UI text.

    • GuardianTextSansWeb-Bold.woff240 kB
    • GuardianTextEgyptianWeb-Bold.woff237 kB
    • GuardianTextSansWeb-Regular.woff236 kB
    • GuardianTextEgyptianWeb-Regular.woff236 kB
    • GuardianTextSans-Bold.woff218 kB
  6. Upgrade compression beyond gzipsave ~0.0057 g/visit (51 kB)Advisory · quick fix

    341 kB of text ships gzip-compressed; Brotli or Zstandard would cut roughly another 15-20%, and browsers without them fall back to gzip automatically.

    Serve precompressed Brotli for static text assets (highest level, compressed at build time) and enable Brotli or zstd for dynamic responses; keep gzip only as the fallback.

    • theguardian.com140 kB
    • Notice.97af9.js95 kB
    • wrapperMessagingWithoutDetection.js43 kB
    • gdpr-tcf.27718c8cb9d29947d2c1.bundle.js31 kB
    • messages17 kB
  7. Stop downloading the same asset twicesave ~0.0042 g/visit (38 kB)Advisory · quick fix

    4 assets were fetched more than once in a single page load (151 kB of repeated transfer).

    Usually a script injected twice or cache-busting query strings that differ per reference. Load each asset once and let the HTTP cache do its job.

    • polyfill.min.js2 downloads · 129 kB
    • frameworks.client.web.6b19980dfdb962b2f0d0.js2 downloads · 41 kB
    • index.client.web.e09f89c26980a44a8ee6.js2 downloads · 96 kB
    • graun.standalone.commercial.js2 downloads · 36 kB
  8. Simplify the document structureAdvisory · larger effort

    The page renders 4642 DOM elements, above the 1,500 guideline. Large trees cost memory and CPU on every visitor's device.

    Flatten wrapper markup, render long lists virtually or paginate, and prefer semantic elements over nested divs.

Where the bytes are

  • JavaScript553 kB · 47 req
  • Images443 kB · 32 req
  • Fonts251 kB · 10 req
  • Other151 kB · 5 req
  • HTML142 kB · 2 req
  • Data (XHR)19 kB · 3 req
  • CSS7.6 kB · 2 req
  • Data (fetch)2.2 kB · 12 req
Ten heaviest requests
ResourceTypeWire sizeCache-Control
theguardian.com/document140 kBmax-age=60, stale-while-revalidate=6, stale-if-error=864000, private
sourcepoint.theguardian.com/Notice.97af9.jsscript95 kBmax-age=3600
assets.guim.co.uk/polyfill.io/v3/polyfill.min.js?rum=0&features=es6%2Ces7%2Ces2017%2Ces2018%2Ces2019%2Cdefault-3.6%2CHTMLPictureElement%2CIntersectionObserver%2CIntersectionObserverEntry%2CURLSearchParams%2Cfetch%2CNodeList.prototype.forEach%2Cnavigator.sendBeacon%2Cperformance.now%2CPromise.allSettled&flags=gated&callback=guardianPolyfilled&unknown=polyfill&cacheClear=1other64 kBpublic, s-maxage=31536000, max-age=604800, stale-while-revalidate=604800, stale-if-error=604800, immutable
assets.guim.co.uk/polyfill.io/v3/polyfill.min.js?rum=0&features=es6%2Ces7%2Ces2017%2Ces2018%2Ces2019%2Cdefault-3.6%2CHTMLPictureElement%2CIntersectionObserver%2CIntersectionObserverEntry%2CURLSearchParams%2Cfetch%2CNodeList.prototype.forEach%2Cnavigator.sendBeacon%2Cperformance.now%2CPromise.allSettled&flags=gated&callback=guardianPolyfilled&unknown=polyfill&cacheClear=1script64 kBpublic, s-maxage=31536000, max-age=604800, stale-while-revalidate=604800, stale-if-error=604800, immutable
i.guim.co.uk/img/media/0578a021a41fd8c26cad300fb8352751f060fd27/177_0_1771_1417/master/1771.jpg?width=460&dpr=1&s=none&crop=4%3A5image59 kBmax-age=31536000
i.guim.co.uk/img/media/289807f15ef228d92904d17ae8389283713377b2/665_645_6220_4978/master/6220.jpg?width=460&dpr=1&s=none&crop=5%3A4image51 kBmax-age=31536000
assets.guim.co.uk/assets/index.client.web.e09f89c26980a44a8ee6.jsother48 kBpublic, max-age=315360000, immutable
assets.guim.co.uk/assets/index.client.web.e09f89c26980a44a8ee6.jsscript48 kBpublic, max-age=315360000, immutable
assets.guim.co.uk/assets/9468.client.web.934edc10e2375f7184f5.jsscript46 kBpublic, max-age=315360000, immutable
i.guim.co.uk/img/media/aad7e0bc0fcaf999aa4c0413a06d732abd4691b2/265_0_3413_2731/master/3413.jpg?width=460&dpr=1&s=none&crop=5%3A4image44 kBmax-age=31536000

Share this report

Live carbon badge preview
<a href="https://carbonless.cc/report/www.theguardian.com/europe"><img src="https://carbonless.cc/api/badge?url=https%3A%2F%2Fwww.theguardian.com%2Feurope" alt="Carbon rating for this page" width="150" height="30" loading="lazy" /></a>

The badge is a lightweight SVG (under 1 kB) served with long-lived caching, so a new scan can take up to a day to show through.