<?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: guillermo llopis</title>
    <description>The latest articles on DEV Community by guillermo llopis (@guillermo_llopis_591d99e6).</description>
    <link>https://dev.to/guillermo_llopis_591d99e6</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%2F4237119%2F239ce0c4-11bb-40a2-a637-580c7c9343cc.png</url>
      <title>DEV Community: guillermo llopis</title>
      <link>https://dev.to/guillermo_llopis_591d99e6</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/guillermo_llopis_591d99e6"/>
    <language>en</language>
    <item>
      <title>The same AI query can emit 12 times more carbon depending on the cloud region</title>
      <dc:creator>guillermo llopis</dc:creator>
      <pubDate>Tue, 10 Nov 2026 13:37:58 +0000</pubDate>
      <link>https://dev.to/guillermo_llopis_591d99e6/the-same-ai-query-can-emit-12-times-more-carbon-depending-on-the-cloud-region-2g6b</link>
      <guid>https://dev.to/guillermo_llopis_591d99e6/the-same-ai-query-can-emit-12-times-more-carbon-depending-on-the-cloud-region-2g6b</guid>
      <description>&lt;p&gt;&lt;em&gt;Two choices you already make as a developer, the region and the model size, move the estimate more than anything else.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;I am CTO of SOMA AI, which publishes the dataset used here.&lt;/p&gt;

&lt;p&gt;When we built our emission factors for AI inference, I expected the model to be the whole story. It is not. The place where the model runs matters almost as much, and it is a setting most teams pick once, by latency or habit, and never revisit.&lt;/p&gt;

&lt;p&gt;Here is what the numbers say. All of them are estimates from the SOMA AI Emission Factors (CC BY 4.0, DOI 10.5281/zenodo.20443585), for one mid-size AI exchange of 1,210 tokens. They are location-based grid averages, not renewable contracts.&lt;/p&gt;

&lt;h2&gt;
  
  
  One exchange, 12 times apart
&lt;/h2&gt;

&lt;p&gt;Across the 143 AWS, Azure and Google Cloud regions in the dataset, the lowest estimate is on the Quebec grid, where the dataset maps AWS ca-central-1. It comes to 0.008 g CO₂e. The highest is Bahrain, at 0.095 g. That is about 12 times more for identical work.&lt;/p&gt;

&lt;p&gt;Closer to home, the spread inside the EU is about 7.4 times. Sweden is lowest at 0.009 g and Poland highest at 0.070 g. The EU-27 average is 0.029 g and the world-average grid gives 0.053 g. Spain sits at 0.022 g, rank 12 of 27.&lt;/p&gt;

&lt;p&gt;Why does the grid change the number so much? Because electricity is most of the footprint on a fossil-heavy grid and a small part on a clean one. On the world-average grid, electricity is 90% of the estimate for one exchange. The rest is server hardware, the data-centre building and the amortised training of the model. That remainder is about 0.006 g wherever the query runs, which is why even the cleanest grid does not reach zero.&lt;/p&gt;

&lt;p&gt;One detail matters to platform teams. A query is served where the data centre is, not where the user sits. So the factor to use is the region in your cloud usage export, not your office's country.&lt;/p&gt;

&lt;h2&gt;
  
  
  Model size multiplies everything
&lt;/h2&gt;

&lt;p&gt;Region is half of the picture. The other half is the model class. This table shows the estimated g CO₂e for the same 1,210-token exchange on three grids.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Model class&lt;/th&gt;
&lt;th&gt;Quebec (Canada)&lt;/th&gt;
&lt;th&gt;World average&lt;/th&gt;
&lt;th&gt;Bahrain&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Class A, small&lt;/td&gt;
&lt;td&gt;0.002&lt;/td&gt;
&lt;td&gt;0.016&lt;/td&gt;
&lt;td&gt;0.028&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Class B, mid&lt;/td&gt;
&lt;td&gt;0.008&lt;/td&gt;
&lt;td&gt;0.053&lt;/td&gt;
&lt;td&gt;0.095&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Class C, frontier&lt;/td&gt;
&lt;td&gt;0.033&lt;/td&gt;
&lt;td&gt;0.201&lt;/td&gt;
&lt;td&gt;0.355&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Compare the corners and you find the uncomfortable result. A frontier model on the cleanest grid (0.033 g) can emit more than a small model on the dirtiest one (0.028 g). So looking only at the region, or only at the model, can send you in the wrong direction.&lt;/p&gt;

&lt;h2&gt;
  
  
  What a dev or platform team can do
&lt;/h2&gt;

&lt;p&gt;There are three practical moves, and none needs a research project.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Know the region. Cloud platforms state it in the usage export next to the token counts. If you cannot say where your AI calls are served from, that is the gap to close before anything else.&lt;/li&gt;
&lt;li&gt;Where you can choose, choose with both variables in mind. The region is the largest lever after the model class, with no change to the work. Whether latency, data residency and price allow a cleaner region is your call, but now you can put a number on the trade.&lt;/li&gt;
&lt;li&gt;Right-size the model. If a small model does the job for a routing, classification or summarisation step, the class A row above is the reason to use it.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;If you also have to report this, report the location-based figure. A market-based one beside it makes sense only if the provider documents its renewable contracts for that region.&lt;/p&gt;

&lt;h2&gt;
  
  
  Limits worth stating
&lt;/h2&gt;

&lt;p&gt;These are annual 2023 averages, mostly Ember yearly data on a lifecycle basis, with US subregions from EPA eGRID 2023. A country's average is not the mix of a specific data centre, which may sit on a cleaner or dirtier part of the grid or buy renewable electricity. The modelled range of the models inside a class, around the class value, is −41% to +48% for class A, −39% to +24% for class B and −67% to +55% for class C. Water is not part of this comparison.&lt;/p&gt;

&lt;p&gt;We also know of one error in this dataset version. Azure canadaeast and Google Cloud northamerica-northeast1, both in Quebec, are mapped to the Canada-wide average rather than the Quebec grid. They will be corrected in the next version. The method paper, arXiv 2606.10660, is under peer review, and corrections go into the next dataset version.&lt;/p&gt;

&lt;h2&gt;
  
  
  Try it on your own usage
&lt;/h2&gt;

&lt;p&gt;The full ranking of 209 countries and every mapped cloud region is on the source page, and the free calculator applies the region for you. Full table and method are at the &lt;a href="https://somaai.earth/ai-footprint/answers/ai-carbon-footprint-by-country" rel="noopener noreferrer"&gt;original page&lt;/a&gt;, and you can run your own numbers in the &lt;a href="https://somaai.earth/ai-footprint/calculator" rel="noopener noreferrer"&gt;free calculator&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Disclosure: I am CTO of SOMA AI, which publishes the dataset used here.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>cloud</category>
      <category>sustainability</category>
      <category>devops</category>
    </item>
  </channel>
</rss>
