← ALL NOTES
PROGRAMMATIC / / 11 MIN READ

The Environmental Cost of Programmatic: Toward Sustainable Ad Tech

The Environmental Cost of Programmatic: Toward Sustainable Ad Tech

Programmatic advertising generates 215,000 metric tons of CO2 equivalent every month across five major economies, the United States, United Kingdom, Germany, France and Australia, according to the IAB Tech Lab Sustainability Playbook: a footprint equivalent to the impact of 24 million gallons of gasoline consumed. Five economies, one month, one sales channel. Little of that carbon comes from the creative itself. It comes from the machinery ad operations teams run daily: bid requests, auctions, redirects, sync pixels, trackers, and the logs that record all of it. The useful part is where the waste sits: in request volume and page weight, both of which publishers control directly, and both of which cost money independent of their carbon.

Where the carbon actually sits

Every impression starts as a request you own. The wrapper fires a bid request to every header partner; each partner scores the opportunity, auctions it internally or forwards it toward buyer seats, and returns a response. The creative that finally renders is one output of a process that touched a dozen systems upstream. Data moved between all of them, models ran on all of them, and logs accumulated on every hop.

Run the arithmetic on one slot. Six header partners, each fanning the request to four buyer seats, produce 24 bid requests for a single ad opportunity. Give that page five ad slots and 10 million monthly pageviews, and the property generates roughly 1.2 billion bid requests a month. The impression sells once; the upstream work runs 24 times per slot.

One ad slot, 24 bid requests
Header fan-out multiplies one ad opportunity before a single creative renders, and Global Placement Id deduplication collapses the count.

Two practices multiply that count further. Replication copies a bid request and sends it down parallel paths, so the same opportunity auctions twice or more with no additional demand attached. Bid caching stores a buyer's response past its useful life and applies it to a later impression, which clears an auction that should never run, manufactures discrepancy between systems, and burns storage on both ends. Anyone who has reconciled a monthly billing report has met both problems; the atmosphere meets them too.

What changed in 2026 is that the trade body wrote the fix down and opened it for comment.

Page weight is a carbon line item

Request volume is upstream cost. Page weight is downstream cost, and it lands on readers' devices. The Web Almanac's 2025 measurements put the median home page at 2.86 MB on desktop and 2.56 MB on mobile, with mobile weight growing 8.4 percent from 2.4 MB in 2024. Ad tech and analytics scripts drive additional weight on top of that median, so a monetized page stacks further transfer onto numbers that already trend upward.

Tracking compounds the transfer. An academic study of web tracking on arXiv found that tracking increases data transmissions upwards of 21 percent, implying around 11 megatons of additional greenhouse gas emissions every year. That study covers the open web, not advertising alone, but the mechanisms overlap heavily: identifier syncs, measurement tags, verification pixels, and third-party scripts ship bytes the editorial content never requested.

Median home page weight, 2024 versus 2025
Page weight keeps climbing, and ad tech and analytics scripts add further transfer on top of the median.

Every byte crosses a network, lands in a data center, and draws power at both ends. A performance budget and an emissions profile move together, which turns your Core Web Vitals work into carbon work, and vice versa. For a publisher above one million monthly pageviews, the ad stack is the largest part of the page that no editor owns, which makes it the largest controllable weight on the property.

The standards now name the waste

The IAB Tech Lab opened Programmatic Best Practices version 1.0 for public comment on September 16, 2026, with the comment window running through October 16, 2026. The document states two practices aimed straight at the request-volume problem. First, do not store or apply bids beyond the impression expiration, imp.exp, or the bid expiration, bid.exp. Second, do not engage in replication of bid requests. The stated rationale reads like an ad operations memo: reducing the volume of requests and redundant auctions for the same ad opportunity reduces volume and processing costs throughout the supply chain.

Impression and bid expirations exist because impressions expire. A response cached for minutes describes an auction that already closed. Applying it creates a phantom transaction: the buyer believes it won, the seller may have sold the slot elsewhere, and reconciliation teams spend human hours and server cycles on the difference. Replication is the blunter version of the same waste, an auction run twice for one opportunity, with the extra round canceling out downstream.

Turn both practices into contract language. Ask every demand partner, in writing: do you replicate bid requests for the same opportunity, and do you store or apply bids past exp? Log the answers, re-ask quarterly, and treat any discrepancy spike above your normal band as a symptom of one practice or the other.

What the playbook assigns to each side

The same Sustainability Playbook distributes responsibility across the chain, and the distribution matters because it marks which levers belong to whom.

  • Data centers. Technology companies reduce greenhouse gas emissions by using low carbon and renewable energy in data centers. You do not operate those facilities, but you choose your CDN, your host, and your image pipeline, and you can ask monetization partners where their auction servers draw power.
  • Buy-side routing. Buyers influence campaign footprints through supply path optimization, routing spend through low-carbon paths. In practice that means fewer intermediaries between a DSP and your page. A publisher with a clean, direct supply path becomes the low-carbon option, which is a competitive position rather than a compliance cost.
  • Duplicate requests. Sell-side practice includes reducing duplicate bid requests using the Global Placement Id. The GPID is a persistent identifier for a specific placement: when every request for that placement carries the same value, downstream systems can recognize duplicates and stop re-auctioning the opportunity. Applied to the example above, six consolidated calls replace 24 scattered ones.
  • Video. OpenRTB 2.6 pod bidding significantly lowers the amount of video ad requests. One request can describe every pod in a stream instead of one request per pod, which for a video property is the largest single reduction in request volume available from the protocol itself.

At OnlyMedia, we run OpenRTB 2.6 seats and Prebid for header and server-side demand, and we filter seats before they ever reach a page. Server-side consolidation is the structural version of the same idea: one hop fans out to buyer seats from the server instead of six scripts competing for bandwidth on the reader's device. Fewer bytes on the page, fewer separate auctions, the same or better demand.

Fewer auctions, honest prices

Request volume is also a symptom of price distrust. In a chain where clearing prices jump around and winners sometimes do not pay, everyone over-requests to compensate: buyers fan wider, sellers call more partners, and the same opportunity auctions repeatedly in search of a price that sticks. Honest auction mechanics reduce the need for all of it.

We publish the full detail on our auction mechanics: expected-value ranking, first-price with bid shading, and reserve prices. Expected-value ranking weighs bids by what they will actually pay, not what they claim, which shrinks the make-good cycle, and every make-good avoided is a second auction for inventory already sold once. First-price with bid shading removes the incentive to bid-strategize, steadies clearing prices, and cuts the request churn that price uncertainty creates. Reserve prices set above zero keep bids that cannot clear out of the auction entirely, and an excluded bid never travels the chain at all.

Auction integrity and carbon efficiency are one project, not two. A chain that runs one honest auction per impression burns a fraction of the compute of a chain that runs four overlapping auctions and reconciles them afterward. Publishers feel the difference as discrepancy rate, buyers as cleaner delivery, and the grid as fewer wasted cycles.

The request-volume checklist

None of the following requires a replatform. Every item is config, contracts, or hygiene, and a team above one million monthly pageviews can implement the full set inside a quarter.

  1. Count requests per impression first. Instrument the wrapper or server-side container to log outbound requests per slot, per page. You cannot manage a number you have never measured, and first measurements rarely flatter the setup.
  2. Stamp Global Placement Ids everywhere. One placement, one GPID, across the wrapper, the ad server, and every partner config.
  3. Audit for replication and expired bids. Send the two written questions from the standards section to every seat, and re-ask quarterly.
  4. Move video to pod bidding. OpenRTB 2.6 pod bidding significantly lowers the amount of video ad requests, and video requests are among the heaviest a property emits.
  5. Cut partners that carry no spend. Rank partners by spend per request over a rolling 90 days. A partner with a strong pitch and a near-zero win rate still costs a request on every single impression.
  6. Lazy-load below the fold. A request for a slot the reader never scrolls to is waste twice over: carbon upstream and cost downstream.
  7. Set a weight budget for the ad stack. Decide how many kilobytes the advertising and analytics layer may ship per page, then enforce it exactly like a performance budget, because it is one.
  8. Prefer direct seats over chains. Ask each partner whether its demand arrives from direct DSP seats or from another hop, and treat every extra hop as another auction, another log, another transfer.

Every item cuts either request count or byte count. Both reductions move cost and carbon in the same direction, and none of them adds a tag, a vendor, or a budget line.

Readiness doubles, and expectations follow

IAB Europe's State of Readiness report for 2026 surveyed 135 companies between November 2025 and January 2026, and found that the proportion of companies estimating environmental impact across all campaigns doubled from 2025 to 2026. Doubling sounds fast until you notice the direction of travel: the industry is graduating from rare, one-off audits toward routine estimation. Routine estimation changes what lands in your inbox, because a buyer that estimates every campaign will ask placement-level questions and will expect numbers, not assurances.

The questions arrive in a predictable shape: where ads serve, how heavy the serving pages are, how many requests an impression triggers, and what the supply path looks like. Prepare a standing answer: a short document holding your median page weight, your wrapper partner count, your GPID coverage, and your deduplication policy. Agencies field these questions in RFPs already; a publisher with the numbers on hand clears them in minutes instead of weeks.

Buyers verify the answers against the seat map. Our partners page covers the DSP seats, SSP pathways, agency direct lines, and measurement studies behind our inventory, which is precisely the artifact set a buyer will ask to see.

Two cautions on measurement. Do not let carbon estimation become a reason to bolt another tag onto every page: a tag that adds weight to measure weight cancels its own argument. And treat offsets as a payment mechanism, not a reduction; the reductions live in your wrapper configuration and your page weight, and no purchase replaces them.

The economics point the same way

The commercial logic and the environmental logic converge on identical actions. Every redundant bid request costs someone compute, and the chain prices that cost back to you through fees, discrepancy, and slower pages. Cleaner paths produce faster loads, better viewability, and fewer reconciliation hours, and viewability is the first input most buyers price.

We are an ad network, an SSP and an agency in one company, and that shape exists so the buyer's path and the publisher's report come from the same books: expected-value auctions, honest pricing, and reporting both sides trust. The about page lays all of it out. We work with thousands of publishers, and every publisher in our demand network clears one million monthly pageviews or more. At OnlyMedia, we pay Net 30, CPM based. No chasing, no sliding terms, because a payout you can forecast removes a cost that never shows up on a carbon report but shows up in every finance meeting.

Where to start

The comment window on the Programmatic Best Practices runs through October 16, 2026, and public comment is how soft guidance hardens into enforcement. File comments as a publisher: the expiration and replication rules only work if the sell side implements them, and no one else owns your placements. Then open the wrapper configuration and count what one slot costs. The monthly figure is 215,000 metric tons across five economies. The fixes are local, cheap, and already inside your permissions.

WRITTEN BY THE DEMAND DESK MORE NOTES →