<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: CarbonLayer</title>
    <description>The latest articles on DEV Community by CarbonLayer (@carbonlayer).</description>
    <link>https://dev.to/carbonlayer</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4061493%2Fd79a815a-b05e-47a6-a164-ee5778468f53.jpg</url>
      <title>DEV Community: CarbonLayer</title>
      <link>https://dev.to/carbonlayer</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/carbonlayer"/>
    <language>en</language>
    <item>
      <title>The Impact Receipt: Carbon Should Travel With Every AI Request</title>
      <dc:creator>CarbonLayer</dc:creator>
      <pubDate>Sun, 23 Aug 2026 00:50:56 +0000</pubDate>
      <link>https://dev.to/carbonlayer/the-impact-receipt-carbon-should-travel-with-every-ai-request-d99</link>
      <guid>https://dev.to/carbonlayer/the-impact-receipt-carbon-should-travel-with-every-ai-request-d99</guid>
      <description>&lt;p&gt;Latency and tokens already travel with an AI request.&lt;/p&gt;

&lt;p&gt;Carbon usually does not.&lt;/p&gt;

&lt;p&gt;It remains trapped inside a provider dashboard, separated from the model, region, workload, and time window that produced it. That makes the number difficult to compare, difficult to audit, and nearly useless for routing decisions.&lt;/p&gt;

&lt;p&gt;Carbon should be treated as an infrastructure metric. It should travel with the same request context as latency and tokens.&lt;/p&gt;

&lt;p&gt;What an Impact Receipt contains&lt;br&gt;
An Impact Receipt is a portable record attached to an AI request. It describes the workload, where and when it ran, the estimated or measured impact, and the evidence behind that result.&lt;/p&gt;

&lt;p&gt;At minimum, it should include:&lt;/p&gt;

&lt;p&gt;Area    Fields&lt;br&gt;
Request Provider, model, input tokens, output tokens, timestamp&lt;br&gt;
Execution   Region, route, duration, latency, time window&lt;br&gt;
Impact  Energy, carbon, water, units&lt;br&gt;
Evidence    Data source, version, system boundary, resolution&lt;br&gt;
Basis   Measured, modeled, or unavailable&lt;br&gt;
Status  Verified, unverified, or unavailable&lt;br&gt;
Tradeoffs   Cost, latency, availability, alternative route&lt;br&gt;
The important part is not simply adding more fields. It is keeping the evidence attached to the number.&lt;/p&gt;

&lt;p&gt;A carbon value without an execution region is incomplete. A water value without duration and system boundaries is incomplete. A modeled estimate presented as a measurement is misleading.&lt;/p&gt;

&lt;p&gt;Modeled does not mean useless&lt;br&gt;
Most AI infrastructure will not have a direct meter for every individual inference.&lt;/p&gt;

&lt;p&gt;That does not make modeling worthless. It means the result needs to say what it is.&lt;/p&gt;

&lt;p&gt;A modeled attribution can support comparison and planning. It should not quietly become a measured facility flow. Likewise, a grid-level estimate should not be presented as a precise facility-level observation.&lt;/p&gt;

&lt;p&gt;The receipt should make the distinction explicit:&lt;/p&gt;

&lt;p&gt;{&lt;br&gt;
  "impact": {&lt;br&gt;
    "energy": {&lt;br&gt;
      "value": null,&lt;br&gt;
      "unit": "Wh",&lt;br&gt;
      "basis": "modeled",&lt;br&gt;
      "status": "unverified"&lt;br&gt;
    },&lt;br&gt;
    "carbon": {&lt;br&gt;
      "value": null,&lt;br&gt;
      "unit": "gCO2e",&lt;br&gt;
      "basis": "modeled",&lt;br&gt;
      "status": "unverified"&lt;br&gt;
    },&lt;br&gt;
    "water": {&lt;br&gt;
      "value": null,&lt;br&gt;
      "unit": "L",&lt;br&gt;
      "basis": "modeled",&lt;br&gt;
      "status": "unverified"&lt;br&gt;
    }&lt;br&gt;
  },&lt;br&gt;
  "evidence": {&lt;br&gt;
    "source": null,&lt;br&gt;
    "source_version": null,&lt;br&gt;
    "system_boundary": null,&lt;br&gt;
    "spatial_resolution": null&lt;br&gt;
  }&lt;br&gt;
}&lt;br&gt;
This is only the shape of the record, not a claim that these values are currently available for every request.&lt;/p&gt;

&lt;p&gt;If the evidence is missing, the correct answer is unverified or unavailable. It is not zero.&lt;/p&gt;

&lt;p&gt;“Unverified” should be a first-class result&lt;br&gt;
A successful API response does not prove that its environmental attribution is correct.&lt;/p&gt;

&lt;p&gt;A test that uses the same credentials or code path as the action it is checking may only prove that the action returned successfully. It does not necessarily prove the external result.&lt;/p&gt;

&lt;p&gt;Environmental reporting has the same problem. A number can be present without being sufficiently supported.&lt;/p&gt;

&lt;p&gt;“Unverified” preserves that distinction. It tells the operator:&lt;/p&gt;

&lt;p&gt;The request completed.&lt;br&gt;
An attribution may have been calculated.&lt;br&gt;
The available evidence does not justify calling it verified.&lt;br&gt;
That is more useful than false certainty.&lt;/p&gt;

&lt;p&gt;From reporting to sustainable operations&lt;br&gt;
A portable receipt makes several operational decisions possible:&lt;/p&gt;

&lt;p&gt;Compare providers using carbon alongside latency and cost.&lt;br&gt;
Route flexible workloads toward lower-impact regions or time windows.&lt;br&gt;
Identify when a smaller model is sufficient.&lt;br&gt;
Measure the effect of caching, batching, or token limits.&lt;br&gt;
Audit whether a sustainability claim still holds after infrastructure changes.&lt;br&gt;
Keep carbon, energy, and water data attached to the workload instead of a dashboard screenshot.&lt;br&gt;
The receipt should also preserve tradeoffs. A lower-carbon route may have higher latency, different availability, or a different price. Hiding those costs makes the metric less trustworthy.&lt;/p&gt;

&lt;p&gt;Sustainability is not achieved by producing a green number. The useful loop is:&lt;/p&gt;

&lt;p&gt;Measure → compare → reduce → report the evidence and tradeoffs.&lt;/p&gt;

&lt;p&gt;CarbonLayer is exploring whether the Impact Receipt should serve primarily as a live routing signal, a post-run audit record, or both.&lt;/p&gt;

&lt;p&gt;If you operate AI infrastructure, which field would you require before trusting an environmental metric in production?&lt;/p&gt;

</description>
      <category>ai</category>
      <category>sustainability</category>
      <category>devops</category>
      <category>cloud</category>
    </item>
    <item>
      <title>Your AI API Tells You Latency and Tokens. Why Not Carbon?</title>
      <dc:creator>CarbonLayer</dc:creator>
      <pubDate>Sat, 22 Aug 2026 02:45:18 +0000</pubDate>
      <link>https://dev.to/carbonlayer/your-ai-api-tells-you-latency-and-tokens-why-not-carbon-ff</link>
      <guid>https://dev.to/carbonlayer/your-ai-api-tells-you-latency-and-tokens-why-not-carbon-ff</guid>
      <description>&lt;p&gt;When an AI request finishes, most APIs tell you:&lt;/p&gt;

&lt;p&gt;The response&lt;br&gt;
Latency&lt;br&gt;
Token usage&lt;br&gt;
Sometimes the estimated dollar cost&lt;br&gt;
That is useful.&lt;/p&gt;

&lt;p&gt;But most APIs do not tell you how much energy the request used, what its carbon impact was, or whether its water estimate was measured or modeled.&lt;/p&gt;

&lt;p&gt;That missing layer makes it difficult to build genuinely carbon-aware AI products.&lt;/p&gt;

&lt;p&gt;The request is the useful unit&lt;br&gt;
Annual sustainability reports are too broad for developers.&lt;/p&gt;

&lt;p&gt;A monthly average cannot tell you what happened during a specific workload, model choice, or routing decision.&lt;/p&gt;

&lt;p&gt;The useful unit is the same unit developers already understand: the inference request.&lt;/p&gt;

&lt;p&gt;For each request, an AI platform should help answer:&lt;/p&gt;

&lt;p&gt;How much energy did this use?&lt;br&gt;
What carbon impact should we attribute to it?&lt;br&gt;
Was the value measured or modeled?&lt;br&gt;
What assumptions and system boundaries apply?&lt;br&gt;
Can the result be compared across workloads?&lt;br&gt;
That data can support internal reporting, customer disclosures, workload optimization, and carbon-aware routing.&lt;/p&gt;

&lt;p&gt;Trust starts with honest labels&lt;br&gt;
The easiest way to make environmental data useless is to present estimates as facts.&lt;/p&gt;

&lt;p&gt;A facility meter does not automatically reveal the exact water consumed by one inference. Grid-level carbon data does not provide perfect facility-level precision. A water rate without duration and system boundaries is not a defensible total.&lt;/p&gt;

&lt;p&gt;Useful infrastructure should make those limitations visible.&lt;/p&gt;

&lt;p&gt;That means:&lt;/p&gt;

&lt;p&gt;Clearly separating measured and modeled values&lt;br&gt;
Showing the basis of each estimate&lt;br&gt;
Disclosing resolution limits&lt;br&gt;
Keeping direct facility measurements separate from workload allocation&lt;br&gt;
Avoiding false precision&lt;br&gt;
The goal is not to produce a reassuring number.&lt;/p&gt;

&lt;p&gt;The goal is to produce a number an engineering team can actually trust.&lt;/p&gt;

&lt;p&gt;Carbon-aware inference should be part of the API&lt;br&gt;
CarbonLayer is built around this idea.&lt;/p&gt;

&lt;p&gt;It provides a carbon-aware inference API that makes per-call impact visible alongside normal inference usage:&lt;/p&gt;

&lt;p&gt;Energy attribution&lt;br&gt;
Carbon attribution&lt;br&gt;
Modeled water attribution&lt;br&gt;
Clear measured-versus-modeled labeling&lt;br&gt;
Carbon-aware dispatch&lt;br&gt;
Savings reporting for teams that want to optimize over time&lt;br&gt;
This turns environmental impact from a static report into usable infrastructure data.&lt;/p&gt;

&lt;p&gt;You can start with one workload, inspect the impact of real requests, and decide where the information changes an engineering or product decision.&lt;/p&gt;

&lt;p&gt;No green dashboard theatre required.&lt;/p&gt;

&lt;p&gt;Start with the workload you already have&lt;br&gt;
You do not need to redesign your entire AI stack.&lt;/p&gt;

&lt;p&gt;Choose one repeatable inference workload:&lt;/p&gt;

&lt;p&gt;Customer support responses&lt;br&gt;
Document classification&lt;br&gt;
Embeddings&lt;br&gt;
Image generation&lt;br&gt;
Internal copilots&lt;br&gt;
Batch processing&lt;br&gt;
Measure the request-level impact. Compare the results with latency, token usage, and cost.&lt;/p&gt;

&lt;p&gt;Then ask the practical questions:&lt;/p&gt;

&lt;p&gt;Is a slightly slower route materially lower-impact?&lt;br&gt;
Can lower-carbon windows handle batch workloads?&lt;br&gt;
Should customers see impact metadata?&lt;br&gt;
Which workloads are worth optimizing first?&lt;br&gt;
Those are better questions than whether an entire AI product is simply “sustainable.”&lt;/p&gt;

&lt;p&gt;Make every inference count&lt;br&gt;
AI developers already track tokens, latency, and dollars because those metrics affect product decisions.&lt;/p&gt;

&lt;p&gt;Energy and carbon deserve the same treatment.&lt;/p&gt;

&lt;p&gt;Not because every request can be perfectly measured. It cannot.&lt;/p&gt;

&lt;p&gt;Because better-labeled estimates are still more useful than invisible impact, and transparent limitations are better than false certainty.&lt;/p&gt;

&lt;p&gt;Try CarbonLayer free with up to 50,000 calls:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://carbonlayer.polsia.io" rel="noopener noreferrer"&gt;https://carbonlayer.polsia.io&lt;/a&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>machinelearning</category>
      <category>devtools</category>
      <category>sustainability</category>
    </item>
    <item>
      <title>Why "water usage" numbers in AI infrastructure are almost always wrong</title>
      <dc:creator>CarbonLayer</dc:creator>
      <pubDate>Mon, 17 Aug 2026 01:53:55 +0000</pubDate>
      <link>https://dev.to/carbonlayer/why-water-usage-numbers-in-ai-infrastructure-are-almost-always-wrong-m5n</link>
      <guid>https://dev.to/carbonlayer/why-water-usage-numbers-in-ai-infrastructure-are-almost-always-wrong-m5n</guid>
      <description>&lt;p&gt;Every water and carbon number you see reported for data center operations is, more often than not, a market-based average — blended across a grid region, smoothed across a reporting period, often built from utility-level estimates rather than the facility itself.&lt;/p&gt;

&lt;p&gt;That's not malicious. It's just what the existing frameworks (like ISO/IEC 30134) were built to produce: a defensible average, not a traceable measurement.&lt;/p&gt;

&lt;p&gt;The problem shows up the moment you try to do per-inference accounting. If your water/carbon number can't tell you which basin or which grid node it came from, it's not measurement — it's a regional estimate wearing a specific-looking decimal point.&lt;/p&gt;

&lt;p&gt;At CarbonLayer we split these into two explicit categories instead of blending them:&lt;/p&gt;

&lt;p&gt;Modeled — projections built on climate-scenario water-gap data (we work with 5 climate models × 2 warming scenarios), useful for forward risk, explicitly not a claim about what happened&lt;br&gt;
Measured — facility-level, tied to the actual site an inference workload ran on, with regional water-stress scoring (via WRI Aqueduct) layered in&lt;br&gt;
Reporting these as one blended number is how you get compliance theater: technically defensible, operationally meaningless. Reporting them separately is more honest and, frankly, more useful — a facility operator or regulator can act on "here's our modeled exposure vs. here's what we actually measured" in a way they can't act on a single smoothed average.&lt;/p&gt;

&lt;p&gt;We think this distinction becomes mandatory as soon as regulation catches up — the two legislative failures we've been tracking (Texas's water-reporting rider, Rhode Island's energy-benchmarking bill) both died in part because there was no measurement standard underneath the mandate. You can't legislate what you haven't defined how to measure.&lt;/p&gt;

</description>
      <category>sustainability</category>
      <category>datacenter</category>
      <category>climatetech</category>
      <category>ai</category>
    </item>
    <item>
      <title>When "Water Reporting Required" Doesn't Mean What It Sounds Like: Texas and Rhode Island, Two Ways a Mandate Dies</title>
      <dc:creator>CarbonLayer</dc:creator>
      <pubDate>Sun, 16 Aug 2026 04:08:43 +0000</pubDate>
      <link>https://dev.to/carbonlayer/when-water-reporting-required-doesnt-mean-what-it-sounds-like-texas-and-rhode-island-two-ways-26fh</link>
      <guid>https://dev.to/carbonlayer/when-water-reporting-required-doesnt-mean-what-it-sounds-like-texas-and-rhode-island-two-ways-26fh</guid>
      <description>&lt;p&gt;Data centers use enormous, and growing, amounts of water for cooling. In the last two years, at least two states tried to write laws requiring data centers to report that usage. Neither one produced what its own sponsors promised — and the two failures didn't even fail the same way.&lt;/p&gt;

&lt;p&gt;Texas: the mandate that became a survey&lt;/p&gt;

&lt;p&gt;In 2023, Texas state representative Armando Walle authored Rider 6 (GAA VIII), directing the Public Utility Commission, the Texas Water Development Board, and the Texas Commission on Environmental Quality to jointly develop a data reporting mechanism for large power users, including their water use. Walle's own press release called it "a critical early step" [1] — language that, read closely, was already hedging what the rider would actually deliver.&lt;/p&gt;

&lt;p&gt;What it delivered: a voluntary survey, not a mandatory disclosure regime, per the PUC's own FAQ on the program [2]. The underlying docket shows the filing history behind it [3].&lt;/p&gt;

&lt;p&gt;Rhode Island: the mandate that never left committee&lt;/p&gt;

&lt;p&gt;S2776 and its House companion H7331 [4] bundled three things: data center-specific cost allocation, a siting consultation requirement, and a water-use disclosure and planning requirement for facilities of 50 MW or greater.&lt;/p&gt;

&lt;p&gt;The Rhode Island PUC's own testimony to the Senate Commerce Committee (March 10, 2026) [5] is the clearest documentary evidence of why this stalled: the bill required data centers to develop a water plan, but created no matching requirement for water suppliers to develop a data-center rate — regulating demand-side planning while leaving the supply-side rate structure untouched. Both bills were held for "further study" and died when the session ended in June 2026, never reaching a floor vote.&lt;/p&gt;

&lt;p&gt;Two failure depths, same underlying pattern&lt;/p&gt;

&lt;p&gt;Texas got a law passed, then watched it shrink to a voluntary survey. Rhode Island's water provision never survived committee, with the state's own regulator identifying the design flaw likely responsible. Different depths, same conclusion: even where nobody disputes that data-center water use deserves scrutiny, turning that agreement into enforceable, adequately-designed law has failed twice, two different ways.&lt;/p&gt;

&lt;p&gt;Sources&lt;/p&gt;

&lt;p&gt;Rep. Armando Walle press release — &lt;a href="http://www.wallefortexas.com/press/2026puc" rel="noopener noreferrer"&gt;www.wallefortexas.com/press/2026puc&lt;/a&gt;&lt;br&gt;
Texas PUC, Energy and Water Use Survey FAQ — &lt;a href="http://www.puc.texas.gov/industry/water/utilities/energy-and-water-use-survey/faq/" rel="noopener noreferrer"&gt;www.puc.texas.gov/industry/water/utilities/energy-and-water-use-survey/faq/&lt;/a&gt;&lt;br&gt;
Texas PUC docket, Control Number 59281 — interchange.puc.texas.gov/Search/Filings?ControlNumber=59281&lt;br&gt;
Rhode Island Bill H7331 (2026) — legiscan.com/RI/bill/H7331/2026&lt;br&gt;
RI Public Utilities Commission testimony on S2776, Senate Commerce Committee — &lt;a href="http://www.rilegislature.gov/senators/SenateComDocs/2026%20Commerce/S2776%20RI%20Public%20Utilities%20Commission.pdf" rel="noopener noreferrer"&gt;www.rilegislature.gov/senators/SenateComDocs/2026%20Commerce/S2776%20RI%20Public%20Utilities%20Commission.pdf&lt;/a&gt;&lt;/p&gt;

</description>
      <category>datacenterwater</category>
      <category>wateraccountability</category>
      <category>climatepolicy</category>
      <category>wue</category>
    </item>
    <item>
      <title>Why "Same Operator" Doesn't Mean "Same Water Risk"</title>
      <dc:creator>CarbonLayer</dc:creator>
      <pubDate>Sat, 15 Aug 2026 03:29:14 +0000</pubDate>
      <link>https://dev.to/carbonlayer/why-same-operator-doesnt-mean-same-water-risk-3odd</link>
      <guid>https://dev.to/carbonlayer/why-same-operator-doesnt-mean-same-water-risk-3odd</guid>
      <description>&lt;p&gt;We've been building out CarbonLayer's facility-level water stress metrics, and one pattern keeps showing up in the underlying research: the biggest variable in water stress isn't the operator, or even the infrastructure standard a facility is built to. It's the site.&lt;/p&gt;

&lt;p&gt;The problem with fleet-level numbers&lt;/p&gt;

&lt;p&gt;Most water usage reporting for data centers happens at the company or portfolio level — one WUE (Water Usage Effectiveness) figure representing an entire fleet. That number is easy to report and easy to compare. It's also structurally incapable of showing you the thing that actually matters: whether any specific facility sits in a water-stressed region.&lt;/p&gt;

&lt;p&gt;Two facilities built to the identical infrastructure standard, run by the identical operator, can have completely different water risk profiles — because water stress is a function of local supply and demand, not build spec. A facility in a water-scarce region can carry a deficit for most of the year while a sister facility, averaged into the same company-wide number, sits in a low-stress basin. Blend them into one figure and the site carrying the real risk disappears into the average.&lt;/p&gt;

&lt;p&gt;This isn't a hypothetical edge case — it's the norm. Water availability is regional and seasonal; data center portfolios are geographically distributed by design. The mismatch between how the risk actually varies and how it typically gets reported is the gap CarbonLayer exists to close.&lt;/p&gt;

&lt;p&gt;Modeled vs. measured — a separate axis entirely&lt;/p&gt;

&lt;p&gt;The other place aggregation causes false confidence: conflating modeled stress signals (built from frameworks like WRI Aqueduct) with audited or measured facility data. These are different confidence levels. A modeled estimate is a reasonable starting signal. A third-party audited figure is a verified claim. Reporting them side by side as if they're interchangeable is how a portfolio ends up looking safer on paper than it is on the ground.&lt;/p&gt;

&lt;p&gt;Why we measure at the facility level&lt;/p&gt;

&lt;p&gt;This is the core design decision behind CarbonLayer: metrics at the facility level, not the company level, with modeled and measured signals kept explicitly separate rather than blended into one sustainability score. If you're an operator, regulator, or customer trying to assess real exposure, the resolution you measure at determines whether the risk is visible at all.&lt;/p&gt;

&lt;p&gt;Where this is going&lt;/p&gt;

&lt;p&gt;We're expanding audited facility coverage (Toronto and Singapore next) and working on a standard for disclosing modeled vs. measured water metrics side by side, instead of as one blended number.&lt;/p&gt;

&lt;p&gt;If you work in data center ops, ESG reporting, or hydrology/geospatial data and have thoughts on how facility-level disclosure should work — I'd like to hear them.&lt;/p&gt;

</description>
      <category>sustainability</category>
      <category>datacenters</category>
      <category>esg</category>
      <category>climatetech</category>
    </item>
    <item>
      <title>Every inference call already returns your response. We added three more fields: cost, CO2, and water.</title>
      <dc:creator>CarbonLayer</dc:creator>
      <pubDate>Sat, 15 Aug 2026 03:02:43 +0000</pubDate>
      <link>https://dev.to/carbonlayer/every-inference-call-already-returns-your-response-we-added-three-more-fields-cost-co2-and-3mjj</link>
      <guid>https://dev.to/carbonlayer/every-inference-call-already-returns-your-response-we-added-three-more-fields-cost-co2-and-3mjj</guid>
      <description>&lt;p&gt;Most carbon/sustainability tooling for AI means a separate dashboard, a monthly export, or a spreadsheet someone fills in manually. We built it into the call itself.&lt;/p&gt;

&lt;p&gt;Point your existing model API calls at our endpoint at carbonlayer.polsia.io. Same response you already parse — plus:&lt;/p&gt;

&lt;p&gt;{&lt;br&gt;
  ...your normal response,&lt;br&gt;
  costUsd: 0.0021,&lt;br&gt;
  co2Grams: 4.7,&lt;br&gt;
  savedWaterMl: 12.3&lt;br&gt;
}&lt;br&gt;
No separate integration. No batch job reconciling usage logs against a sustainability report six months later. The number is attached to the call, generated by the routing decision, at request time.&lt;/p&gt;

&lt;p&gt;If you're already switching between model providers or regions for latency/cost, you're one header away from also seeing the environmental cost of that same decision — check the docs at carbonlayer.polsia.io to see the exact fields.&lt;/p&gt;

</description>
      <category>sustainability</category>
      <category>api</category>
      <category>webdev</category>
      <category>climatetech</category>
    </item>
    <item>
      <title>Why "Data Center Water Usage" Numbers Are Mostly Guesses — and How We're Fixing That</title>
      <dc:creator>CarbonLayer</dc:creator>
      <pubDate>Sat, 15 Aug 2026 00:42:35 +0000</pubDate>
      <link>https://dev.to/carbonlayer/why-data-center-water-usage-numbers-are-mostly-guesses-and-how-were-fixing-that-32jl</link>
      <guid>https://dev.to/carbonlayer/why-data-center-water-usage-numbers-are-mostly-guesses-and-how-were-fixing-that-32jl</guid>
      <description>&lt;p&gt;Every data center water/energy stat you've seen in a headline this year is probably a model, not a measurement. That distinction matters more than it sounds like it should — and it's currently playing out in real policy decisions, not just spreadsheets.&lt;/p&gt;

&lt;p&gt;The trigger for this post: Louisville just moved to ban new data centers outright. Stacy Griggs wrote a good breakdown of why that's the wrong tool for the job — and the core argument tracks with what I keep seeing from the technical side: a moratorium isn't a policy, it's a symptom. It's what a city does when the only inputs available are fear and headlines, because nobody handed them facility-level numbers to make a real cost/benefit call. Ban-or-blind-trust is a false choice, and it's a data availability problem before it's a political one.&lt;/p&gt;

&lt;p&gt;The actual technical problem: Most public water-stress numbers for data centers come from vendor-published PUE, generic regional averages, or top-down estimates that don't account for facility-specific cooling systems, local water sourcing, or recycling infrastructure. Two facilities in the same city, same operator, same building spec, can have wildly different actual water demand depending on how they're built and run. Regulators and communities making zoning and moratorium decisions are working off averages that hide that variance completely — which is exactly how you end up with a binary ban/no-ban choice instead of a nuanced one.&lt;/p&gt;

&lt;p&gt;What we're building at CarbonLayer: We're extending the ISO/IEC 30134 data center efficiency framework — the standard that gave the industry PUE and WUE — to produce a facility-level metric we call WUE+: water usage effectiveness that incorporates on-site recycling and is layered against regional water stress data from WRI Aqueduct.&lt;/p&gt;

&lt;p&gt;The core design decision: modeled and measured data are never merged into one number. A model gives you a directional estimate. An audit gives you a verified fact. Collapsing those into a single score is how the industry got into a trust problem in the first place — so we tag every metric with its provenance and let the two live side by side instead of averaging away the uncertainty.&lt;/p&gt;

&lt;p&gt;Where we are: Currently auditing facilities across our initial footprint, expanding to Toronto and Singapore next based on where operators and regulators are asking for coverage.&lt;/p&gt;

&lt;p&gt;If you're working on infra observability, ESG tooling, or anything touching facility-level resource accounting, curious what you're running into — drop it in the comments.&lt;/p&gt;

</description>
      <category>sustainability</category>
      <category>datacenter</category>
      <category>climatetech</category>
      <category>esg</category>
    </item>
    <item>
      <title>Cooling AI Doesn't Remove Water Use — It Just Moves It Off Your Balance Sheet</title>
      <dc:creator>CarbonLayer</dc:creator>
      <pubDate>Fri, 14 Aug 2026 04:47:57 +0000</pubDate>
      <link>https://dev.to/carbonlayer/cooling-ai-doesnt-remove-water-use-it-just-moves-it-off-your-balance-sheet-1eb2</link>
      <guid>https://dev.to/carbonlayer/cooling-ai-doesnt-remove-water-use-it-just-moves-it-off-your-balance-sheet-1eb2</guid>
      <description>&lt;p&gt;A data center that switches from water-based cooling to air-based cooling can report a large drop in onsite water use. That drop is real. What's rarely reported is where the water demand went — because it didn't disappear, it moved upstream, past the fence line, to somewhere the facility's water report doesn't reach.&lt;/p&gt;

&lt;p&gt;The tradeoff is physics, not a design choice&lt;/p&gt;

&lt;p&gt;Cooling a data center is fundamentally a trade between water and electricity:&lt;/p&gt;

&lt;p&gt;Water-based cooling (evaporative cooling towers) uses less electricity, more water — water evaporates and carries heat away directly.&lt;br&gt;
Air-based cooling uses more electricity, less water — mechanical refrigeration replaces evaporation with power-hungry compressors.&lt;br&gt;
Switch from one to the other and you haven't eliminated a resource cost. You've traded which resource you're consuming, and where.&lt;/p&gt;

&lt;p&gt;Where the "eliminated" water actually goes&lt;/p&gt;

&lt;p&gt;Air cooling's extra electricity has to be generated somewhere, and most generation methods use water: thermoelectric power plants (coal, gas, nuclear) use water for their own cooling; even accounting for hydropower's evaporative losses, generating electricity has a water footprint. So a facility that reports "we cut onsite water use by switching to air cooling" is often reporting a real local win while quietly increasing the indirect water footprint embedded in the extra electricity it now draws.&lt;/p&gt;

&lt;p&gt;Studies estimating full-chain water intensity of electricity generation regularly find the indirect water footprint of the power used to run a data center exceeds the facility's onsite water use — by multiples, not percentages — once you account for the water consumed generating that electricity upstream. The number depends heavily on the grid mix (thermoelectric-heavy grids carry a much bigger indirect water footprint than wind or solar-heavy ones) and the local water source (freshwater withdrawal versus a coastal or reused-water source changes the stakes entirely).&lt;/p&gt;

&lt;p&gt;Why "moving the tradeoff" isn't neutral&lt;/p&gt;

&lt;p&gt;This wouldn't be a big deal if water stress were geographically uniform. It isn't. 62% of Texas's AI data center capacity sits in high water-stress zones — regions where water is already a contested resource for agriculture, municipal use, or drought management. A facility can cut its own reported water use while increasing draw on a grid whose generation mix pulls water from a stressed source hundreds of miles away, and both changes can be true at once, reported separately, by different parties, with no line connecting them.&lt;/p&gt;

&lt;p&gt;The community absorbing the onsite water reduction gets a genuine local win. The community whose grid now serves more electricity demand doesn't see it show up as an AI data center's problem — it shows up as "the grid," a boundary that conveniently ends the accounting.&lt;/p&gt;

&lt;p&gt;The point isn't that cooling should stop being efficient&lt;/p&gt;

&lt;p&gt;Air cooling isn't wrong. Efficiency gains onsite are real and worth having. The problem is reporting one side of a two-sided tradeoff as if it were a net reduction, when the honest description is a resource shift whose full footprint depends on where the extra electrons came from.&lt;/p&gt;

&lt;p&gt;That's the boundary CarbonLayer's water accounting is built to close: tracking water at the generation source behind the electricity, not just the meter at the cooling tower, so "water positive" claims can't hide a shifted cost outside the reporting boundary.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>watertech</category>
      <category>sustainability</category>
      <category>datascience</category>
    </item>
    <item>
      <title>Your Carbon Dashboard Doesn't Tell You What It's Guessing</title>
      <dc:creator>CarbonLayer</dc:creator>
      <pubDate>Fri, 14 Aug 2026 04:39:13 +0000</pubDate>
      <link>https://dev.to/carbonlayer/your-carbon-dashboard-doesnt-tell-you-what-its-guessing-1na1</link>
      <guid>https://dev.to/carbonlayer/your-carbon-dashboard-doesnt-tell-you-what-its-guessing-1na1</guid>
      <description>&lt;p&gt;Ask most carbon or water dashboards for a number, and you get one number. Ask what produced it, and the honest answer is usually: some of it was measured, and some of it was estimated — and the dashboard doesn't tell you which parts are which.&lt;/p&gt;

&lt;p&gt;What's actually measurable at a data center&lt;/p&gt;

&lt;p&gt;A handful of things are directly instrumented, no modeling required:&lt;/p&gt;

&lt;p&gt;Facility-level power draw (metered at the utility connection)&lt;br&gt;
PUE — power usage effectiveness, the ratio of total facility power to IT equipment power&lt;br&gt;
Water intake at the cooling system&lt;br&gt;
These are meter readings. They're as close to ground truth as this domain gets.&lt;/p&gt;

&lt;p&gt;What isn't measurable — and has to be modeled&lt;/p&gt;

&lt;p&gt;Nobody has a meter on a single inference request. Attributing a slice of that facility-level power draw, water intake, or carbon output to one API call requires a model: an assumption about how load is distributed across concurrent requests, how much of a GPU's draw belongs to your prompt versus the ten others sharing the batch, how cooling load correlates with compute load versus ambient temperature that day.&lt;/p&gt;

&lt;p&gt;That's not a flaw — it's unavoidable. But it means every per-inference number you've ever seen from a carbon tool is, structurally, a modeled estimate wearing the same formatting as a measured fact. Nothing on the dashboard tells you which one you're looking at.&lt;/p&gt;

&lt;p&gt;Why this distinction breaks silently&lt;/p&gt;

&lt;p&gt;Two failure modes, both common:&lt;/p&gt;

&lt;p&gt;Comparing a modeled number against a measured one as if they're the same kind of fact — e.g., benchmarking your model's per-inference carbon (modeled) against a competitor's facility-reported PUE (measured) and drawing a conclusion neither number supports.&lt;br&gt;
Compounding modeling error invisibly — a model with a modest per-call error margin, aggregated across millions of inferences, can produce a monthly total that's confidently wrong by a wide margin, with no flag anywhere that the number was ever a model in the first place.&lt;br&gt;
Neither failure is caused by bad math. It's caused by treating "modeled" and "measured" as if they're interchangeable once they hit a dashboard.&lt;/p&gt;

&lt;p&gt;The fix: say which one you're looking at&lt;/p&gt;

&lt;p&gt;This isn't a call for perfect measurement — direct per-inference metering doesn't exist yet, maybe doesn't exist ever, at reasonable cost. The fix is disclosure, not precision: tag every number with where it came from.&lt;/p&gt;

&lt;p&gt;That's why CarbonLayer's API returns carbonSource, waterSource, and energySource alongside every figure — explicit, machine-readable flags for whether a given number is measured (from a meter) or modeled (attributed via an allocation method), so a router, a dashboard, or a compliance report downstream can decide how much weight to put on it instead of inheriting silent uncertainty as if it were fact.&lt;/p&gt;

&lt;p&gt;If your current carbon tooling can't answer "was this number measured or modeled?" for every figure it gives you, that's the gap — not the precision of the number itself.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>sustainability</category>
      <category>api</category>
      <category>machinelearning</category>
    </item>
    <item>
      <title>Why the Same Data Center Can Report a 7x Emissions Spread Depending on Who's Counting</title>
      <dc:creator>CarbonLayer</dc:creator>
      <pubDate>Fri, 14 Aug 2026 04:25:52 +0000</pubDate>
      <link>https://dev.to/carbonlayer/why-the-same-data-center-can-report-a-7x-emissions-spread-depending-on-whos-counting-26ib</link>
      <guid>https://dev.to/carbonlayer/why-the-same-data-center-can-report-a-7x-emissions-spread-depending-on-whos-counting-26ib</guid>
      <description>&lt;p&gt;Ask three carbon accounting frameworks to report the emissions of the same data center, in the same country, in the same year, and you can get numbers that differ by a factor of 7. Not because anyone is lying. Because "emissions" isn't one number — it's a methodology choice wearing a number's clothes.&lt;/p&gt;

&lt;p&gt;The two accounting standards that disagree&lt;/p&gt;

&lt;p&gt;Location-based accounting measures the actual emissions intensity of the grid a facility draws from — the physical mix of coal, gas, nuclear, and renewables serving that specific region, at that specific time.&lt;br&gt;
Market-based accounting lets a company buy Renewable Energy Certificates (RECs) or offsets and report as if it drew clean power, regardless of what the local grid actually generated when the servers were running.&lt;br&gt;
Both are "correct" under different reporting standards (the GHG Protocol permits both, reported side by side). But only one describes what actually happened at the facility. The other describes what was purchased on paper.&lt;/p&gt;

&lt;p&gt;Why this isn't a rounding error&lt;/p&gt;

&lt;p&gt;A data center in a coal-heavy grid can buy enough RECs to zero out its market-based number while its location-based number — the actual carbon intensity of the electrons it drew — stays high. Report the market-based number alone, and a facility running on a dirty grid at 2pm on a hot day looks indistinguishable from one running on hydro at midnight.&lt;/p&gt;

&lt;p&gt;Neither number is fake. But they answer different questions:&lt;/p&gt;

&lt;p&gt;Location-based: what did this facility actually draw from the grid?&lt;br&gt;
Market-based: what did this company pay to offset?&lt;br&gt;
Most public sustainability reporting picks whichever number is smaller and calls it "emissions," full stop — no methodology footnote, no disclosure of which standard produced it.&lt;/p&gt;

&lt;p&gt;Why this matters more for AI inference than almost anything else&lt;/p&gt;

&lt;p&gt;Data center load isn't constant — it spikes with usage, time of day, and now, increasingly, with model routing decisions. A router that shifts inference to "the greenest region" using a market-based, annually-averaged REC number can be routing to a facility that, at that literal moment, is drawing from a coal-heavy grid at peak demand. The certificate says clean. The grid says otherwise.&lt;/p&gt;

&lt;p&gt;The fix isn't picking a side — it's disclosure&lt;/p&gt;

&lt;p&gt;The honest answer isn't "location-based is right, market-based is wrong." It's that any number reported without stating which methodology produced it is not a number you can act on, compare, or route decisions against. If your carbon dashboard gives you one figure with no methodology field, you're being asked to trust an average you can't audit.&lt;/p&gt;

&lt;p&gt;That's the bar we hold CarbonLayer's own numbers to: every inference-level carbon and water figure ships with the accounting method that produced it, not just a total.&lt;/p&gt;

</description>
      <category>sustainability</category>
      <category>ai</category>
      <category>datascience</category>
      <category>webdev</category>
    </item>
    <item>
      <title>Accountability Doesn't Scale on Its Own..</title>
      <dc:creator>CarbonLayer</dc:creator>
      <pubDate>Thu, 13 Aug 2026 02:44:56 +0000</pubDate>
      <link>https://dev.to/carbonlayer/accountability-doesnt-scale-on-its-own-21c4</link>
      <guid>https://dev.to/carbonlayer/accountability-doesnt-scale-on-its-own-21c4</guid>
      <description>&lt;p&gt;Nobody held accountable for anything is the default state of most systems — not because people are bad, but because accountability is expensive and diffusion is free. Spread the blame across enough departments, models, or grid operators, and nobody owns the number.&lt;/p&gt;

&lt;p&gt;We're watching this happen at a national scale right now, with institutions built on the premise that someone answers for what they do — falling short of that premise more visibly than usual. Say that out loud and people nod. It's not controversial to notice when the people meant to answer for outcomes stop being asked to.&lt;/p&gt;

&lt;p&gt;AI has the same problem, just younger. A model gives an answer, uses power, pulls water, and nobody downstream knows how much, where, or under what assumptions. "Carbon neutral" gets stamped on a report built on averaged grid factors from three years ago and a REC purchased somewhere else on the continent. It's not lying, exactly — it's the diffusion trick, run through a spreadsheet.&lt;/p&gt;

&lt;p&gt;Imagine the alternative. Imagine every institution, every leader, every one of us treated "I'll answer for this specific decision" as the baseline instead of the exception. Not a slogan — a habit. It changes the math on everything, because the people making calls know the calls are traceable back to them.&lt;/p&gt;

&lt;p&gt;That's the principle we're building CarbonLayer on, just applied to inference instead of institutions. We don't average your carbon footprint across a fleet, offset it with credits purchased somewhere else, or hand you a "sustainability score" nobody can trace. We measure what a single inference actually cost — this model, this region, this grid, this moment — and we label whether that number is measured directly or modeled from an assumption, every time, no exceptions.&lt;/p&gt;

&lt;p&gt;Individual accountability, run at the smallest unit that matters. One inference, one number, one source you can check.&lt;/p&gt;

&lt;p&gt;We're not trying to make AI a little greener at the margins. We're trying to prove that accountability at the smallest scale is possible at all — and if it's possible for a single inference, it's possible for a company, a grid, a country. Every number we publish is a small bet that specificity beats averaging, and that betting proves something bigger than our product.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>webdev</category>
      <category>accountability</category>
      <category>climatetech</category>
    </item>
    <item>
      <title>Why "carbon per AI inference" is harder than it sounds (and where we need help)</title>
      <dc:creator>CarbonLayer</dc:creator>
      <pubDate>Mon, 10 Aug 2026 16:07:29 +0000</pubDate>
      <link>https://dev.to/carbonlayer/why-carbon-per-ai-inference-is-harder-than-it-sounds-and-where-we-need-help-jd0</link>
      <guid>https://dev.to/carbonlayer/why-carbon-per-ai-inference-is-harder-than-it-sounds-and-where-we-need-help-jd0</guid>
      <description>&lt;p&gt;Data center power draw, PUE, and water intake are directly measurable at the facility level. Attributing a slice of that to one single inference is not — it requires a model, and every modeling choice is a place to be wrong.&lt;/p&gt;

&lt;p&gt;At CarbonLayer we publish per-inference carbon and water numbers with no offsets and no averaging across a facility. Every number is tagged measured or modeled, because collapsing that distinction is exactly how "water positive" and REC-backed claims end up hiding the actual grid draw.&lt;/p&gt;

&lt;p&gt;A few of the harder problems in that pipeline:&lt;/p&gt;

&lt;p&gt;Attribution math — splitting facility-level draw across concurrent workloads without just averaging it away&lt;/p&gt;

&lt;p&gt;Grid carbon intensity — the same country/year can show a 7x spread depending on which methodology and source you use&lt;/p&gt;

&lt;p&gt;Indirect water — the water cost of generating the electricity, which often exceeds onsite cooling water and varies heavily by grid mix and region&lt;/p&gt;

&lt;p&gt;Location-based vs. market-based accounting — making sure a REC or offset never quietly substitutes for the real number&lt;/p&gt;

&lt;p&gt;We're not asking for funded work. We're asking: if you've worked with grid intensity data, utility filings, PUE disclosures, or data center water permitting, we want you to try to break our model. &lt;/p&gt;

&lt;p&gt;Tell us where the attribution logic is wrong, where we're citing a bad source, or where "measured" is doing work it hasn't earned.&lt;/p&gt;

&lt;p&gt;Comment or reach out if that's the kind of problem you like taking apart.&lt;/p&gt;

</description>
      <category>sustainability</category>
      <category>climate</category>
      <category>datascience</category>
      <category>opensource</category>
    </item>
  </channel>
</rss>
