This is the first in a series of posts where I explore various aspects of my indoor environment. You can read part 2 on water quality here and part 3 on EMF and electromagnetic radiation here.

Most people think of Quantified Self as being mainly focused on gaining knowledge about one’s body and health. That’s a fine generalization, but most of us pay little attention to the environment around us, which can have a bigger impact on our lives than the number of steps we take! My particular interest is in understanding the risks and potential negative health effects caused by factors such as air quality, the water we drink and shower with, and different types of electromagnetic radiation (wifi, cellphone towers) that the modern world has surrounded us with. Over the next series of posts, I will be sharing what I’ve learned about various aspects of my indoor environment, starting with air quality, and steps I’m taking to better optimize my living space.

Air quality

Why Is Indoor Air Quality So Important?

Poor air quality has been linked to numerous acute and chronic conditions, from decreased concentration and cognitive function to sleep issues and the development of autoimmune conditions, asthma, or even cancer.

What Can (and Should) We Measure?

Air contaminant sources
  • Temperature: Ideal indoor temperatures range from 73° F to 79° F in the summer, and 68° F to 75° F in the winter. [1]
  • Humidity: High humidity levels in the home can lead to mold growth. Ideally, indoor humidity should be in the range of 30-60 percent. [2]
  • Particulate Matter (PM): There are two categories of PM – coarse dust particles (PM10) between 2.5 to 10 micrometers in diameter. Sources include dust, pollen, and mold.  Fine particles (PM2.5) are 2.5 microns (µ) in diameter or smaller. Fine particles are produced from all types of combustion, including motor vehicles, power plants, residential wood burning, forest fires, agricultural burning, and some industrial processes. For PM2.5, the short-term standard (24-hour or daily average maximum level) is 35 micrograms per cubic meter of air (µg/m3) and the long-term standard (annual average) is 15 µg/m3. For PM10, the short-term standard is 150 µg/m3 (there is currently no long-term standard). [3]
  • Carbon Monoxide (CO): Carbon monoxide (CO) is a poisonous, colorless, odorless, and tasteless gas. It is produced by the incomplete combustion of carbonaceous fuels such as wood, gasoline, coal, natural gas and kerosene. Average levels in homes without gas stoves vary from 0.5 to 5 parts per million (ppm). The maximum permissible exposure limit (PEL) for carbon monoxide is 50 parts per million (ppm) parts of air (55 milligrams per cubic meter (mg/m3)) as an 8-hour time-weighted average. [4]
  • Nitrogen Dioxide (NO2): A red-brown gas produced when fuel burns. It is present in vehicle exhaust and the fumes from burning fuel oil, propane, kerosene, natural gas, or wood, as well as appliances such as gas stoves, portable heaters, fireplaces, and gas-fueled clothes dryers. Long-term (annual mean) levels should remain below 40 µg/m3, and short-term (hourly mean) levels should remain below 200 µg/m3. [5]
  • Carbon Dioxide (CO2): A gas mainly emitted by humans, and correlates with human metabolic activity. CO2 at levels that are unusually high indoors may cause drowsiness, headaches, or result in functioning at lower activity levels. Levels above 1,000 ppm indicate inadequate ventilation. [6]
  • Volatile Organic Compounds (VOC): Chemicals that easily enter the air as gases from some solids or liquids. Examples include acetone, benzene, ethylene glycol, formaldehyde, methylene chloride, perchloroethylene (dry cleaning), toluene, xylene, and 1,3-butadiene. Sources include cleaning products, cosmetics, refrigerants, air fresheners, upholstered furniture, carpets, paints, varnishes, plywood floors, and pressed wood products. Short-term exposure to high levels of some VOCs can cause headaches, dizziness, lightheadedness, drowsiness, nausea, and eye and respiratory irritation, and chronic long-term exposure can lead to serious health issues. There are currently no federally enforceable standards for VOCs in non-industrial settings, but average tVOC concentrations between 50 ppb and 325 ppb are considered acceptable but should not peak above 500 ppb. [7]

Measuring Air Quality

Indoor air quality monitors

There is a wide selection of air monitoring devices available today, from industrial-grade equipment that costs thousands of dollars to consumer-grade, “internet of things”-enabled devices that cost a few hundred dollars, and their features and measurement capabilities can vary widely.

I was most interested in understanding the air quality in my bedroom (since that is where I spend a third of my life) and wanted the ability to access readings from a large number of sensors. Since none of the consumer devices I researched had all of the features/sensors I wanted, I built my own.

AirPi Air Quality Monitor

AirPi indoor air quality monitor

There is an open source air monitoring kit called the AirPi. You have to purchase the components and assemble everything yourself (soldering required!), then connect it to a Raspberry Pi – a low-cost, linux-based computer that’s about the size of a deck of cards and runs the code needed to read the sensor data.

The AirPi uses a number of inexpensive sensors – one for temperature and humidity, another that measures atmospheric pressure and temperature, ones specifically for nitrogen dioxide (NO2) and carbon monoxide (CO), and a general air-quality sensor that detects numerous airborne contaminants (VOCs), light level, and a microphone to monitor ambient noise levels. After soldering and assembling the AirPi, then configuring and connecting it to my Raspberry Pi, I set the unit up in my bedroom and started taking readings:

AirPi air quality readings

The chart above shows a 24-hour snapshot of readings taken in my bedroom, starting at midnight. Overall there’s really nothing too remarkable about the data. The humidity and pressure trends mirrored the outdoor weather data for that day. There’s a quick drop in temperature data around 6 a.m., most likely from the bedroom door being briefly opened, then closed. The light-level values are inverse to brightness (lower value equals brighter), so it’s easy to observe sunrise to sunset, as well as moments I turned on the lights or was watching TV before bed. And the spikes in volume were most likely due to my dog barking. But here is where things get interesting – I share my bedroom with my girlfriend and my (80 lb.) dog. And we usually keep the door closed while we are sleeping, which explains why humidity and temperature would rise slightly overnight due to there being warm bodies in the room.

AirPi Air Quality Readings

Looking at some of the other sensors, we can see that air quality goes down overnight – there is a buildup of carbon monoxide and carbon dioxide from breathing (picked up by the CO and VOC sensors). And when I wake up in the morning and open the bedroom door, there is an immediate improvement in air quality as the gas buildup dissipates.

I happen to live in New York City, in an apartment building that is across the street from a large grocery store, and delivery trucks come in waves throughout the day starting around 7 a.m.. You can see the air quality drop, and nitrogen dioxide rises due to vehicle exhaust. My bedroom windows are a little bit drafty, so some of that exhaust is clearly making it’s way into my home.

Sensor Calibration Challenges

Now, looking at the previous graphs, some of you may be asking, “what the heck does ‘1500 ohms’ or ‘3000 mV’ mean? The answer is that these sensors only return raw resistance values, which must then be converted into a real-world measurements using a corresponding response/calibration curve. Normally this would be done in a lab with very expensive testing equipment (in a vacuum).

AirPi sensor calibration

Unfortunately, the sensor datasheets don’t provide the exact equations to use (although one could try to fit an equation to the curve shown in the datasheets), so, at this time I can only reliably use the AirPi sensors to observe overall trends versus calibrated values.

Foobot Indoor Air Quality Monitor

The AirPi was insightful, but I wanted something that I could set up quickly, had calibrated sensors, and most important, had an API that would allow me to more easily access the raw data.

Foobot indoor air quality monitor

After doing some research, I purchased a Foobot, a $199 USD connected indoor air-quality monitor. It measures temperature, humidity, total VOCs, PM2.5 particulate matter, carbon dioxide, carbon monoxide, and provides its own proprietary “air quality” score (measured on a scale from 0-100). After downloading my data via their API, I constructed a number of graphs showing the Foobot data side by side:

Foobot air quality readings

Again, it shows that temperature and humidity are generally within recommended ranges (with humidity slightly rising while sleeping and CO2 spiking overnight due to poor ventilation). The VOC reading is a bit misleading because the CO2 levels are included, so if they are subtracted (and note CO2 is in ppm, while tVOC is in ppb), VOCs don’t seem to be cause for concern.

So, while the Foobot provides convenience and calibrated sensors and can measure particulate matter, it doesn’t offer a number of readings I could obtain with an AirPi (mainly NO2, light, and sound). So, in the near term I guess I will need to run both monitors and aggregate the data they each provide.

Opening Windows – Dust and Exhaust

If your home has elevated levels of carbon monoxide/carbon dioxide or VOCs, obviously the best thing you can do is simply open a window to provide ventilation and fresh air. While this is possible for me during the day, it’s not possible during the evening for security reasons. Additionally, as my home’s windows face the street, there’s a tradeoff of getting added ventilation with increasing the dust/particulate matter getting inside from the street. I just can’t win!

Indoor air quality with window opened

Air Filtration Using a HEPA Filter

After doing a bit of research, I purchased an indoor air purifier (with HEPA filters). The product claims to capture 99.97% of the microscopic particles (0.3 microns and larger) that pass through their filters – including airborne particles like dust, pollen, tobacco smoke, cooking smoke, fireplace smoke, pet dander, and mold spores. This particular model can circulate all of the air in a 400 sq ft room several times per hour. The unit is lightweight, so I can easily move it from my living room to my bedroom at night. The chart below shows the short-term impact the air purifier had on reducing PM, but it’s unable to reduce VOCs and carbon dioxide from the air:

Indoor air quality using HEPA air purifier

I think the air purifier is good to use a few times per week in different rooms to pull any lingering airborne particles out of the air (especially if suffering from any allergies), but fortunately my bedroom’s PM levels aren’t very high to begin with (unless I leave my windows open for an extended period of time, or in my living room if I cook a meal in my kitchen).

What About Outdoor Air Quality?

My efforts have been focused on indoor air quality mainly because it’s something I have the ability to control. Outdoor air quality is equally important, and it’s very much dictated by where you live. Ozone (aka smog), factories, outdoor fires, diesel exhaust, and soot.

Plume Air Report

I use a website/app called Plume Air Quality Report that provides me with an outdoor air report alert every morning. If it’s a particularly poor air quality day, it will recommend not doing strenuous activity (outdoor sports, cycling, etc.) or bringing babies outdoors.

What’s Next?

My goal is to address any underlying air quality issues in my home, then develop an integrated system that could automatically, say, turn on the HEPA filter or provide some other ventilation when air quality goes below a given threshold, using services such as IFTTT. Unfortunately, no one air quality monitor out there provides the comprehensive insights I want, so I will need to combine data from multiple devices.

For anyone who tracks their sleep, combining sleep and air-quality data can provide some interesting correlations like what temperature provides the best quality of sleep, or how does rising carbon dioxide/carbon monoxide levels and poor ventilation affect sleep?


I think ultimately it’s important for everyone to have baseline understanding of their air quality in their homes in order to address any potentially serious problems like carbon monoxide and VOC exposure (in which case you should also hire a professional indoor air quality specialist). A lot of small changes (like opening doors windows, moving cleaning supplies out of living areas, finding and fixing leaky gas-powered appliances, etc.) can make a huge impact. Does everyone need to be doing this as obsessively as me? No, but EVERYONE should regularly check their smoke and carbon monoxide detectors!!

Have you done any of your own indoor air-quality monitoring experiments? Would love to hear what you’ve learned – leave a comment below!

Tools and Resources

Other Indoor Air Quality Sensors:

Disclosure: If you purchase any items or services through links on this site, I may earn a (small) commission that helps offset some of my hosting costs. I appreciate your support! Rest assured, any content I post reflects my own opinions and are in no way influenced by any affiliate relationships.


[1] New York City Department of Heath

[2] OSHA

[3] EPA, Particulate Matter (PM) Standards

[4] EPA, Carbon Monoxide’s Impact on Indoor Air Quality

[5] WHO Air quality guidelines for particulate matter, ozone, nitrogen dioxide, and sulfur dioxide

[6] OSHA Technical Manual (OTM), Indoor Air Quality Investigation

[7] California Environmental Protection Agency, Indoor Air Quality Guidelines