← All writing
Policy · · 7 min

Web sustainability

The same work under a different budget heading. The carbon numbers are shakier than the posts suggest.

Performance

Three years of asking. Third-party scripts, oversized images, six font weights, a video autoplaying on the homepage. Each time, agreed in principle, never scheduled, because it competed against features and lost.

Last fall their new operations director asked whether the website had a carbon footprint and whether we could reduce it. Same list. Approved in two weeks, with a budget, out of a different pot.

I have complicated feelings about that and I’ve been sitting on this post since.

The same work, a different budget line

The first thing to say, plainly: the work is the same work.

There is no separate discipline here. Reducing a site’s environmental impact means transferring fewer bytes, executing less code, and making fewer requests, which is the list I’ve been writing on this blog since about 2014 under the heading “performance.”

What changes is who’s persuaded. A performance argument is technical, so it’s evaluated by people who think of it as my department, and it competes for the development budget against things that are visible. A sustainability argument connects to something the business already has a commitment about, often a public one, increasingly one they’re asked about in procurement questionnaires by their own customers. So it’s evaluated by someone else, against a different set of alternatives, out of a different pot.

That’s not a trick. It’s the same fact about the world reaching a different decision-maker.

Be careful with the numbers

Now the part I’d want anyone using this argument to get right, because the field has a credibility problem and it would be easy to make it worse.

Estimating a web page’s carbon footprint is genuinely hard, and the published models disagree with each other by large factors. The per-gigabyte energy figures that circulate come from studies with different system boundaries, different assumptions about network equipment, and different vintages of hardware, and the headline numbers have been revised downward substantially over the years as the methodologies improved.

There’s also a marginal-versus-average problem that most write-ups skip. Much of the network’s energy use is roughly fixed: routers and base stations draw power whether or not your bytes are traveling through them. So the saving from transferring one megabyte less is not one megabyte’s share of the network’s total consumption, and treating it that way overstates the case, sometimes considerably.

The direction is solid and the magnitude is contested, and if you present a precise number to somebody who knows that, you've lost the argument and the next one.

So my rule: use the calculators as a relative measure, before and after, on the same methodology, and never quote an absolute figure as though it were established. “We reduced the transfer per page view by 70%” is defensible and checkable. “This saves 400 kg of carbon a year” is a number I cannot stand behind and somebody eventually will ask.

The strongest version isn’t about bytes

Here’s the argument I’ve come to think is the sturdiest, and it barely appears in the literature.

The largest environmental cost associated with a phone is not the electricity it uses. It’s the manufacturing: the mining, the fabrication, the shipping. A device’s lifetime footprint is dominated by having been made.

Which means the single most environmentally significant thing about software is whether it lets a device stay useful. A site that’s unusable on a five-year-old mid-range Android is contributing, in a small way, to that phone being replaced early. Multiply across an industry that has spent 15 years assuming everyone has this year’s hardware.

That argument doesn’t depend on any contested per-gigabyte figure. It depends on a fact about manufacturing that nobody disputes, and it connects directly to a thing I can measure: does this page work acceptably on old hardware.

And it converges with everything else I care about. The site that works on a cheap old phone is also the accessible one, the fast one, the one that works on a bad connection in a rural area, and the one that degrades when the JavaScript fails. They’re the same site. I’ve been making four separate arguments for a decade and they have one conclusion.

What to actually do

The list, which will surprise nobody who’s read anything else here.

Third-party scripts, measured and cut, which is nearly always the biggest single win and the one with the least design impact.

Images at the right dimensions and a sensible quality, in a modern format. Still the largest transfer category on most sites.

Fonts: fewer weights, self-hosted, subset.

Video: never autoplay, never as a background, and a poster image with a play button. Video is by a distance the heaviest thing anybody puts on a page and an autoplaying background loop is the single most wasteful pattern in common use.

Caching set properly, so returning visitors transfer almost nothing.

And two that are specific to this framing.

Hosting that runs on renewable power, which is a real and checkable property and one of the very few changes here that’s a procurement decision rather than an engineering one. It’s also the one with the best ratio of impact to effort, since somebody else does the work.

And deleting things. A page that doesn’t exist has no footprint. Most of the sites I audit have several hundred pages, of which perhaps 80 get meaningful traffic. Pruning the rest is the most environmentally effective thing on this list and also, coincidentally, the thing I’ve been trying to get paid for since 2020.

The greenwashing risk

Which brings me to the uncomfortable half.

A website’s footprint is small relative to almost anything else a business does. For the client above, it is a rounding error next to their vehicle fleet. And there is an obvious failure mode where a company with a serious problem elsewhere gets to publish a nice paragraph about their lightweight homepage, and the paragraph does the work of looking responsible.

I don’t think that makes the work pointless, and I’d rather name it than pretend it isn’t happening. The changes are real, they’re cheap, they make the site better on every other axis, and refusing to do them because the framing might be misused would be a strange kind of purity.

But I’d be wary of writing the paragraph for them, and I’ve started being explicit in reports that this is one small item and not a claim about the organization.

Pragmatism or opportunism

The honest summary of my position: I used an environmental argument to get approval for work I’d wanted done for three years for entirely different reasons, and it worked, and I’d do it again.

Whether that’s pragmatism or opportunism probably depends on the day. What I’d say for it is that every single change on that list is one I’d defend on its own merits in any of four different framings, and I’ve spent a decade watching the other three lose.

Read similar posts
6 min

srcset, revisited

The exact bug I wrote about in 2018, on a site built last year, by a competent team, with a modern pipeline. Which tells you which parts of this got fixed in eight years.

7 min

Web fonts are the budget

I measured a client's homepage in August and the fonts were 41% of it, which makes them the largest avoidable cost on the page and also the one line item nobody will let you touch.