Classroom Air Quality Sensor Readings

This dataset contains granular, real-time air quality sensor readings from classrooms, including CO2, temperature, humidity, and particulate matter levels, along with contextual information about sensor status, classroom, and school location. Designed for educational and facility management use, it enables data-driven decisions for ventilation, energy efficiency, and student wellbeing. The dataset is ideal for sustainability officers, adaptive learning platforms, and researchers analyzing indoor environmental quality in schools.

  • last updated 3 Feb 2026
  • by GoMask
The brief that made it

Real-time monitoring and alerting for classroom air quality

Sample rows

preview · 8 of 120 rows · all 18 columns
reading_idstringsensor_statusstringbattery_level_percentfloatschool_namestringsensor_idstringclassroom_idstringschool_idstringtimestampdatetimeco2_ppmfloattemperature_celsiusfloathumidity_percentfloatpm2_5_ugm3floatpm10_ugm3floatfloor_numberintegerclassroom_namestringlocation_citystringlocation_statestringlocation_countrystring
R001active96.3Sunrise ElementarySENSOR1001CLS101ASCH0012023-11-01T08:10:00Z420.319.744.810.212.11Room 101PortlandOregonUSA
R002active98.2Maple HighSENSOR1002CLS102BSCH0022023-11-01T08:22:00Z432.620.547.18.79.62Room 102TorontoOntarioCanada
R003active93.8Delhi Public SchoolSENSOR1003CLS103CSCH0032023-11-01T08:34:00Z410.218.655.35.86.21Lab ADelhiDelhiIndia
R004active91Lycée Henri IVSENSOR5002CLS104DSCH0042023-11-01T08:46:00Z445.921.362.111.112.82Room 104ParisÎle-de-FranceFrance
R005active95.7Maple HighSENSOR1002CLS105ESCH0022023-11-01T08:58:00Z430.719.441.57.98.51Music RoomTorontoOntarioCanada
R006active92.2St. Maria SchoolSENSOR1004CLS106FSCH0052023-11-01T09:10:00Z415.620.948.212.2152Room 106ManchesterEnglandUK
R007active87.5Desert Research SchoolSENSOR1005CLS107GSCH0062023-11-01T09:22:00Z597.223.965.519.716.83Room 107PhoenixArizonaUSA
R008active82.6Green Valley SchoolSENSOR2001CLS108HSCH0072023-11-01T09:34:00Z515.424.257.414.213.63Room 108Cape TownWestern CapeSouth Africa

What the 120 rows show

from the 120-row sample

Active (sensor status) stands out: mean battery_level_percent is 67.0, against 16.9 for the rest.

  • 65.2median battery_level_percent
  • 10location countries
  • 16location states
  • 17location cities
  • 454.1median co2_ppm
  • 20.6median temperature_celsius
Mean battery_level_percent by sensor_status117 rows
05010067.0active95 rows48.3inactive6 rows11.9maintena…7 rows0.0error9 rows
battery_level_percent117 rows, in bands of 10
015301158128814142710050100battery_level_percent →

Median 65.2, from 0.0 to 98.2.

school_name120 rows · top 10 of 25 values
  1. Maple High11
  2. St. Maria School11
  3. Green Valley School11
  4. Sunrise Elementary10
  5. Lycée Henri IV10
  6. Delhi Public School9
  7. Desert Research School8
  8. Tokyo International5
  9. Oslo Academy5
  10. Kathmandu Central5
18 columns by typefrom the column list below
  • string 10
  • integer 1
  • float 6
  • datetime 1

Columns

18 columns in three groups
blueprint · 18 columns
columntypedescriptionexample
Text 10 columns
reading_idstringUnique identifier for each air quality sensor readinguniqueR001
sensor_idstringUnique identifier for the IoT sensor deviceSENSOR1001
classroom_idstringUnique identifier for the classroom where the sensor is locatedCLS101A
school_idstringUnique identifier for the schoolSCH001
sensor_statusstringOperational status of the sensor at the time of readingactive · inactive · maintenance · error · optionalactive
classroom_namestringHuman-readable name or code for the classroom (e.g., 'Room 101')optionalRoom 101
school_namestringHuman-readable name of the schooloptionalSunrise Elementary
location_citystringCity where the school is locatedoptionalPortland
location_statestringState or region where the school is locatedoptionalOregon
location_countrystringCountry where the school is located10 countries · optionalUSA
Numbers 7 columns
co2_ppmfloatMeasured carbon dioxide concentration in parts per million (ppm)0 or more420.3
temperature_celsiusfloatMeasured temperature in degrees Celsius-40 to 6019.7
humidity_percentfloatMeasured relative humidity as a percentage (0-100)0 to 10044.8
pm2_5_ugm3floatMeasured particulate matter (PM2.5) concentration in micrograms per cubic meter (μg/m³)0 or more10.2
pm10_ugm3floatMeasured particulate matter (PM10) concentration in micrograms per cubic meter (μg/m³)0 or more · optional12.1
battery_level_percentfloatBattery level of the sensor as a percentage (0-100)0 to 100 · optional96.3
floor_numberintegerFloor number of the classroom within the school buildingoptional1
Dates and times 1 column
timestampdatetimeDate and time when the reading was recorded (ISO 8601 format)2023-11-01T08:10:00Z

Use it for

  • median battery…65.2117 rowsmean battery level pe…67.0acti…48.3inac…11.9main…0.0error

    An education dashboard

    Battery_level_percent by sensor_status and a breakdown of school_name. Excel, Power BI or Tableau.

  • Why do the 95 active rows have a mean battery_level_percent of 67.0?

    A root-cause class exercise

    Hand out the rows and one question. The answer is in the data, not in the brief.

  • A software demo

    Believable readings with sensor_id, classroom_id and school_id to fill a screen in front of a buyer.

Not quite right?

Make it yours.

Same 18 columns, your size and your rules. See 20 rows before you pay.

Preview 20 rows free

10,000 rows of yours: $12.99One-time. No subscription. All prices

This dataset120 rows18 columns
Yours10,000 rows18 columnslocation_city: UK only

blueprint · classroom-air-quality-sensor-readings

Behind this dataset

Same schema. As many rows as you need.

These 120 rows came out of a blueprint — 18 columns with generation rules behind each one. Open it in Data Factory to retune a column, add your own, wire in foreign keys, and run it at the size you actually need.

Rules it was built with
  • Each row represents a single classroom sensor reading.
  • Readings include timestamp, classroom ID, CO2, temperature, humidity, PM2.5, and occupancy status.
  • Sensors report at hourly intervals during school hours only.
  • Flag readings exceeding recommended thresholds as potential alerts.
  • Classroom IDs are anonymized to ensure privacy.
  • Missing or erroneous data points are marked accordingly.
Rows
Open the blueprint in Data Factory

1 credit per row. New accounts start with 25 free credits.

Exports
CSV, JSON, JSONL, Parquet, SQL, Excel, TSV, XML
Licence
yours to use, including commercially
API slug
classroom-air-quality-sensor-readings

What should your data show?

Preview 20 rows free
No signup. No card.