Monitoring air quality with S5P TROPOMI data

Google Earth
Google Earth and Earth Engine
7 min readApr 17, 2020


By Justin Braaten, Technical Writer, Earth Engine

It’s vital for the health of the planet and its inhabitants to have access to outdoor air that’s safe to breathe. However, there are many regions of the world where people are subjected to unhealthy levels of air pollution, and where vulnerable ecosystems are being damaged due to unsafe air quality. In the United States, poor air quality is the cause of around 60,000 premature deaths annually and over $150 billion in costs related to air pollution-driven illnesses.

During this time of shelter in place, social distancing, and lockdowns, many areas are experiencing a reduction in emissions. We’re gaining a new perspective on air quality in the absence of typical emission from transportation and other sources. Pollution is down, and NO2 concentration has decreased in many cities and transportation corridors as evidenced by NASA and ESA satellites.

Mean continental tropospheric nitrogen dioxide concentration, March 2019. Concentration increases along the gradient from purple to yellow.

By monitoring air quality, meteorologists can forecast and warn vulnerable communities to stay inside on unsafe air quality days. In addition, scientists can monitor air quality retrospectively to understand the impacts that anthropogenic and natural processes have on the emission of air pollutants. Some changes in the concentration of air pollutants are visible from satellites. One such instrument collecting these measurements is the Tropospheric Monitoring Instrument (TROPOMI) sensor onboard the Sentinel-5 Precursor (S5P) mission satellite currently in orbit.

The S5P mission satellite was launched in October 2017 to ensure data continuity following Envisat and NASA’s Aura retirements and the upcoming launch of Sentinel-5. S5P has the TROPOMI multispectral sensor onboard that collects reflectance of wavelengths associated with a variety of atmospheric constituents, including aerosol, carbon monoxide, formaldehyde, nitrogen dioxide, ozone, sulphur dioxide, and methane. S5P also provides cloud characteristic data. The goal of this post is to provide a brief overview of emissions data from TROPOMI, illustrate potential uses of Earth Engine to analyze and display the data, and should be seen as a how-to guide, rather than a source of conclusions about social distancing and its impact on air quality.

Wildfire emissions

Biomass burning from wildfires can result in the emission of a large volume of smoke aerosols. The daily cadence of S5P global observations means aerosol plume transport can be tracked over days and weeks. The figure below is an image collection animation that depicts circulation of aerosols produced by the massive 2019–2020 Australian brush fires that eventually impacted air quality for cities in South America. The UV aerosol index data used here is useful for tracking other aerosol plumes such as dust outbreaks and volcanic ash.

Aerosol plume from the massive 2019–2020 Australian brush fires traveling east across the Pacific Ocean. Animation inspired by Sara Aparício.

Animations are a great visualization tool, but to quantify temporal change in air pollution, it can be helpful to use some image math. In the following example, we subtract two dates that represent carbon monoxide (CO) before and during the 2019 wildfires in the Amazon to highlight regions that experienced at least a doubling in concentration, resulting in the World Health Organization issuing an air pollution warning.

Carbon monoxide concentration difference before and during the 2019 Amazon wildfires. Concentration increases along the gradient from purple to yellow for Before and During maps, and black to white for the Difference map, which has been masked to highlight regions that experienced at least a doubling of carbon monoxide during the fires.

Anthropogenic emissions

Burning fossil fuels for industry, heat, and transportation contributes to air pollution. The nitrogen dioxide (NO2) data layer is particularly well-suited to this type of analysis because it has a short lifetime, which means it is detected near its source. For example, we can examine the spatial correspondence between population density (Gridded Population of World dataset) and NO2 concentrations on the East Coast of the United States by visualizing population density and high NO2 concentrations side by side.

Spatial correspondence between points of high population density and high tropospheric nitrogen dioxide concentration are apparent in the eastern United States. Population density increases along the gradient from white to purple, nitrogen dioxide from dark purple to yellow.

As suggested in the side-by-side maps above and in the following chart, as population density increases, so does NO2 concentration (learn more about charting with the Earth Engine UI chart widget).

Relationship between population density and winter season tropospheric nitrogen dioxide (NO2) concentration for states east of the Mississippi River. Interpolated median and interquartile range NO2 lines are presented for population density bins from 0 to 20,000 persons/km2 at a 2,000 persons/km2 increment, with a final bin for areas with greater than 20,000 persons/km2.

At present, much of the world is practicing social distancing to reduce the impact of the novel coronavirus. As the number of people commuting to work decreases, so does the nitrogen dioxide emitted into the atmosphere (see NASA interpretation). TROPOMI and Earth Engine allow scientists to begin to investigate these relationships and patterns in near real-time at regional to global scales. One user, Cristina Vrinceanu, made a handy Earth Engine App that implements the slider widget to visualize the reduction of nitrogen dioxide concentration in regions currently locked down. In particular, Cristina’s app and accompanying Medium article examines northern Italy, a region that, among others, is experiencing a lockdown to combat the spread of the virus.

Earth Engine App demonstrating the usefulness of the slider widget for comparing NO2 concentration for two time periods. (App by Cristina Vrinceanu).

Another useful way to visualize air pollutant concentration change over time is with a year-over-year chart. The following chart demonstrates this by comparing nitrogen dioxide concentration for 2020 to 2019 by day-of-year over northern Italy.

Year-over-year median NO2 time series comparing 2020 to 2019 concentrations for northern Italy’s Po Valley (including Milan, Bologna, and Venice).

Important considerations

There are many phenomena that can influence patterns of air pollution concentration. It’s important to consider all potential sources of emission, pollutant chemistry, transport, and bias in measurement, as well as meteorological and environmental conditions before drawing conclusions about changes over time and their drivers. Here we look at a few phenomena that contribute to patterns of pollutant concentrations found in the data: seasonal oscillations, weather, and cloud cover.

In some regions of the world, the right combination of ecology, climate, weather, geography, and emissions produce oscillations in pollutant concentration. For example, China’s Hebei province experiences seasonal trends in NO2 concentrations, as evident in the following figure showing observations from the past 21 months plotted with a harmonic trend line. The trend line is useful for highlighting the regular seasonal oscillation, as well as collapsing the high variance during the winter months due to weather. Using trendlines and rolling averages over weeks or months is recommended to avoid drawing conclusions from single data points that may represent anomalous weather-related observations. If you’re interested in learning more about seasonal trends in NO2, see Lamsai et al. (2010).

NO2 concentration over southern Hebei province, China. Points are observations; the line is a harmonic trend function to illustrate seasonal oscillation.

Similarly, ozone also expresses a seasonal oscillation as demonstrated in the following plot showing observed and harmonic interpolated data for the atmosphere above the Great Lakes region of the United States (learn more about harmonic modeling in Earth Engine).

Ozone concentration time series for the Great Lakes region, United States. Points are observations; the line is a harmonic trend function to illustrate seasonal oscillation.

A particularly important consideration is cloud cover, which can bias results by obscuring the sensor’s view of the lower atmosphere. Below, we demonstrate the high variability of cloud cover per pixel for the region over northern Italy for the NO2 product. For instance, note the high cloud cover fraction near the end of January 2019 compared to the same period a year later when cloud cover was much lower. We recommend that you filter data to include only pixels that have low cloud cover when comparing observations over time. Learn more about cloud cover considerations in this article by the Copernicus program.

Cloud fraction median and interquartile range time series for the NO2 data product over northern Italy. Cloud fraction can be quite variable through time; best practices recommend limiting the S5P data to cloud-free or near cloud-free situations in order to provide reliable assessments of the changes in air quality.

TROPOMI Explorer App

To facilitate quick and easy S5P TROPOMI data exploration and provide a jumping-off point for further analysis, we’ve built an interactive app that allows you to view changes in pollutant concentration over time using side-by-side or swipe map visualization and time series charts. Give it a try!

Interactive TROPOMI data exploration app built using Google Earth Engine Apps.

Though many of us may be self-isolating, we don’t develop in a vacuum; we take much inspiration from our talented and engaged user community. See some of the ways others are analyzing and exploring S5P TROPOMI data with Earth Engine:

We are motivated by our users to continue to build tools and provide support for understanding our impacts on the planet, and we acknowledge and appreciate your efforts to keep other global challenges like climate change, and social inequality as urgent issues. We hope you’ve enjoyed this brief glimpse at S5P TROPOMI data, and look forward to learning about what you discover (see code snippets in the Data Catalog to get started).