Request Access to Climatiqs data tool kit.
All posts
December 6, 2023

A Guide to Carbon-Aware Computing

A Guide to Carbon-Aware Computing

Estimated reading time: 6 minutes

This post is the next installment of our Cloud Computing series, which dissects how to measure greenhouse gas emissions from operating data centers and cloud services. Today’s post will cover the concept of carbon-aware computing and how you can “greenify” your software regardless of your infrastructure.

Check out other posts in this series to learn about additional ways to reduce your computing footprint, the primary sources of greenhouse gas emissions in data centers, the role of the big three, namely AWS, Azure, and GCP, and how you can assess emissions from your cloud computing activities, including on-prem data centers and hybrid set-ups. Sign up for our free newsletter to stay up-to-date on new articles.


  • Carbon-aware computing is an essential principle, with location shifting, time shifting, and demand shaping being the primary ways of reducing carbon emissions. 
  • While it may not be practical to make software carbon efficient, small adjustments to existing infrastructure, such as choosing a region with a greener grid, time-shifting computing jobs, and utilizing virtual machines at close to 100% capacity, can significantly lower carbon emissions. 
  • Additionally, it is important to focus on optimizing hardware utilization, as embodied emissions make up a significant proportion of the total emissions. 
  • By following these guidelines, individuals and businesses can not only reduce their carbon footprint but also save on costs and resources in the long run.

Computing is a considerable driver of carbon emissions (2.5% to 3.7% of global carbon emissions) and increasingly on the agenda of enterprises who are keen to reduce their carbon footprint. Next to hardware-centric approaches like redesigning data centers and extending the product life of servers, redesigning software to make it carbon-aware can be an equally important factor. 

Enter Carbon Aware Computing, a topic that is championed by the Green Software Foundation in particular. This concept entails developing software that understands its carbon emissions and adjusts its behavior according to the electricity grid on which it’s running.

Carbon Aware Computing: A Quick Overview

The overarching principle of carbon-aware computing is that you should do more when the electricity is greener, and less when it is not. This is most often accomplished in three ways:

  • Location-shifting: You switch your servers around to where the grid is greener.
  • Time-shifting: You run your time-insensitive jobs, such as machine learning model training or batch processing, when the percentage of renewable electricity in the grid is the highest.
  • Demand-shaping: Your software performs fewer tasks during the high-emission periods.

If your infrastructure provider allows you to do these things easily, like Cloudflare’s Green Compute, you should absolutely take advantage. However, if you don’t have these tools available, you can still achieve significant emission reductions by making small adjustments to your existing infrastructure - without needing to make your software carbon-aware. Let’s take a look.


While the composition of power grids varies quite a bit between the worst and the best (Wyoming and Sweden have approximately a 10x difference in CO2e per kWh), the day-to-day or month-to-month variations within a region are much smaller.

So picking a region with a renewable-heavy grid for the deployment of your software gets you a long way when trying to reduce your cloud carbon footprint. Some cloud providers, such as GCP, even have tools to help you find the best regions based on respective carbon emissions.


The average CO2e emissions of a local grid mix vary significantly over time due to hour-to-hour variance of the current mix of energy sources, the grid production of renewables, and general demand for electricity, e.g. see the hourly changes in the US electricity generation and consumption. Many grids have a daily pattern following one of these shapes:

  • Daytime has more green electricity available due to a high percentage of solar energy within the grid mix. This typically excludes the mornings and afternoons, when the electricity demand of households is increased, e.g. for cooking.
  • Nighttime has more green electricity available due to a high percentage of wind energy in the mix.

Electricity Maps offers a useful overview of the current electricity sources by region and allows you to spot trends that are relevant to your region. You can take advantage of the variances in your grid mix by scheduling your jobs during the times when your grid composition is more favorable instead of implementing more complex dynamic scheduling.

The Impact of Hardware Utilization on Emissions

The right deployment and scheduling can significantly reduce the emissions of your cloud usage - although this is only affecting the emissions from the energy consumption of the servers. The biggest share of cloud computing emissions are not from electricity usage, but rather the embodied emissions. 

Embodied emissions refer to the emissions associated with the production and disposal of servers and their components. For consumer laptops, embodied emissions make up 75-85% of total emissions, i.e. the electricity emissions for the usage only cause 15-25% of the overall footprint - and the general pattern is the same for servers.

Carbon-aware computing only focuses on the electricity use of your servers and not the production, lifetime, and disposal, where a majority of the emissions come from. So in addition to optimizing the load of our software, we should also optimize how well we use the physical hardware before we have to replace it.

Cloud data centers typically replace servers every 4-5 years, making it essential to use them as efficiently as possible. Reducing the number of physical servers and utilizing rented servers at as close to 100% capacity can significantly lower the environmental impact. Plus, it often leads to better use of computing resources, therefore also resulting in cost savings.

So what is the right thing to focus on? If you’re not actively building infrastructure for other people to host their services, here is where you’ll likely get the most bang for your buck in regard to optimizing your computing carbon emissions:

  1. Don’t spend excessive time building software that reacts dynamically to the electricity grid, as the benefits are marginal.
  2. Review your cloud deployment and select cloud regions with a greener grid. Cloud providers will often give you this information. Otherwise, you can leverage Climatiq’s Cloud Computing features to understand the carbon footprint of the different regions. If you are not using one of the big three (AWS, Azure, or Google Cloud), Electricity Maps is a good source for realtime grid emissions for your data center locations.
  3. Conduct research on your cloud provider to see if they offer ways to switch locations and shift load to reduce emissions. We have compiled an initial comparison of cloud providers and their locations in a previous blog post
  4. Make use of carbon-reducing service offerings by the Cloud Providers, e.g. the spot instances by AWS, which allow you to run your jobs on idle EC2 instances and result in both carbon and cost savings.
  5. Try to utilize rented virtual machines with a capacity utilization of 100% as much as possible. Services such as serverless or managed platforms allow your cloud providers to utilize the underlying infrastructure more efficiently than you could yourself.

Hopefully, you now have a better understanding of how to reduce your computing emissions. Check out this post for more ways to reduce your computing footprint. 

To help you navigate the complex realm of carbon emissions calculations, we offer a variety of resources which you can access through our blog. Sign up for our free newsletter and look out for upcoming posts that offer practical advice on embedding emissions calculations for better decision-making.