Home Indoor Environment Sensor Data Analysis Report
Subject of analysis: home indoor-environment sensor data (2023-2026)
Data source: BME280 (temperature/humidity/pressure) + SGP30 (air quality)
Analysis date: 2026-04-08
Data span: approximately 3 years (June 2023 – April 2026)
Sensor location: indoors
📋 Background
Data source: indoor-environment sensors (BME280 + SGP30)
Main factors affecting readings:
- volatile organic compounds (VOC): alcohol, perfume, cleaning products, cooking fumes, and similar sources can raise TVOC and interfere with SGP30’s eCO₂ estimate
- air conditioning/heating: causing seasonal temperature and humidity changes (cooling and dehumidification in summer, heating and lower humidity in winter)
- ventilation habits: affecting CO₂ and TVOC accumulation and dissipation
Sensor limitations:
- SGP30’s CO₂ is an algorithmic estimate, not a direct NDIR measurement
- when TVOC rises suddenly, the CO₂ reading also spikes artificially
- suitable for trend monitoring, but not for precise CO₂ quantification
📊 Executive summary
This study analyzes 271,142 sensor records from a home indoor-environment monitoring system, covering five metrics: temperature, humidity, pressure, eCO₂ (estimated CO₂), and TVOC.
⚠️ Key note: All CO₂ readings in this report are algorithmic estimates (eCO₂) from the SGP30, not direct NDIR measurements
Important background:
- SGP30 eCO₂ readings are based on data such as TVOC and are algorithmically estimated, rather than direct NDIR measurement, and are easily affected by volatile organic compound interference
- Elevated TVOC may come from everyday products such as alcohol, perfume, and cleaning products; it does not necessarily indicate pollution
- When TVOC rises suddenly, eCO₂ also spikes artificially—the report’s eCO₂ trend may reflect actual CO₂ accumulation and TVOC interference
- Seasonal temperature and humidity changes are mainly driven by air-conditioning/heating use and are normal
Main findings:
- Clear annual temperature variation: summer average temperature 28°C, winter 20°C, a temperature difference of 8°C (influenced by air conditioning/heating)
- Strong seasonal humidity variation: summer high 62%, winter low 29% (heating makes the air dry)
- Nighttime eCO₂ accumulation trend: eCO₂ readings in the early morning are higher than in the afternoon by 25% (possibly reflecting the combined effects of reduced ventilation and TVOC interference)
- Year-over-year TVOC increase: from 605 ppb in 2023 to 3,450 ppb in 2026 (requiring analysis alongside lifestyle habits)
- Extreme reading events: multiple readings above 15,000 ppm, almost certainly estimation errors caused by TVOC interference
1. Data overview
1.1 Data volume
| Sensor | Metrics measured | Records | Date range |
|---|---|---|---|
| BME280 | Temperature, humidity, pressure | 137,878 | 2023-06-24 ~ 2026-04-08 |
| SGP30 | CO₂, TVOC | 133,264 | 2023-07-11 ~ 2026-04-08 |
1.2 Annual data distribution
BME280 annual statistics:
| Year | Records | Average temperature | Temperature range | Average humidity | Average pressure |
|---|---|---|---|---|---|
| 2023 | 27,009 | 25.0°C | 11.0-30.9°C | 42.2% | 1006.7 hPa |
| 2024 | 51,665 | 24.2°C | 13.3-31.4°C | 41.0% | 1008.4 hPa |
| 2025 | 46,955 | 23.6°C | 11.2-30.9°C | 43.1% | 1007.3 hPa |
| 2026* | 12,249 | 20.3°C | 13.0-26.6°C | 32.3% | 1014.3 hPa |
*2026 data through April 8
SGP30 annual statistics:
| Year | Records | Average TVOC | Average eCO₂ (estimated) |
|---|---|---|---|
| 2023 | 25,057 | 605 ppb | 649 ppm |
| 2024 | 48,689 | 2,135 ppb | 921 ppm |
| 2025 | 46,288 | 2,163 ppb | 963 ppm |
| 2026* | 13,230 | 3,450 ppb | 1,139 ppm |
ℹ️ Trend interpretation: TVOC and eCO₂ show an upward trend year over year.Because SGP30 eCO₂ is estimated, higher TVOC causes eCO₂ to spike artificially as well, so this trend may reflect:
- more frequent indoor use of volatile products such as alcohol, perfume, and cleaning products
- changes in cooking habits
- emissions from new furniture or renovation materials
- Rising eCO₂ does not necessarily indicate actual CO₂ accumulation; assess it together with the TVOC trend
2. Time-series analysis
2.1 Daily variation pattern (24-hour cycle)
Daily temperature/humidity variation:
| Time period | Temperature | Humidity | Pattern |
|---|---|---|---|
| 00:00-06:00 | 23.6-23.8°C | 43.1-43.5% | Stable nighttime period |
| 06:00-12:00 | 23.5-24.2°C | 42.9-40.5% | Warming and drying |
| 12:00-14:00 | 24.3°C | 39.4-39.9% | Daily temperature high |
| 14:00-20:00 | 24.2-23.6°C | 39.0-39.8% | Gradual cooling |
| 20:00-24:00 | 23.5-23.7°C | 39.8-42.5% | Humidity recovery |
Daily eCO₂/TVOC variation:
| Time period | eCO₂ (estimated) | TVOC | Pattern |
|---|---|---|---|
| 00:00-06:00 | 905-1009 ppm | 2053-2429 ppb | Nighttime reading peak |
| 06:00-09:00 | 899-944 ppm | 1999-1805 ppb | Decline after ventilation |
| 14:00-17:00 | 801-846 ppm | 1805-1850 ppb | Daily low |
| 17:00-24:00 | 792-1015 ppm | 1834-2423 ppb | Evening rise |
📈 Key finding: eCO₂ reaches a peak at 00:00-03:00 (1009 ppm); it is lowest at 15:00-17:00 (801 ppm), a difference of 26%.
⚠️ Interpretation note: This trend may reflect both:
- actual CO₂ accumulation (less nighttime ventilation and occupants’ breathing)
- TVOC interference (volatile residues from evening cooking and cleaning)
- SGP30 alone cannot distinguish the contributions of the two
2.2 Seasonal variation
Monthly temperature/humidity:
| Month | Temperature | Humidity | Sensation |
|---|---|---|---|
| January–February | 20.0-20.3°C | 29-31% | Dry and cold |
| March–April | 21.3-23.2°C | 32-37% | Comfortable |
| May–June | 25.5-28.1°C | 41-43% | Warm |
| July–August | 27.8-28.2°C | 56-62% | Hot and humid |
| September–October | 23.2-26.8°C | 43-51% | Cool |
| November–December | 20.7-21.1°C | 31-34% | Dry and cold |
Monthly air quality:
| Month | eCO₂ (estimated) | TVOC | Reading status |
|---|---|---|---|
| January–March | 948-1228 ppm | 2838-3455 ppb | Readings somewhat high (winter closure + TVOC interference) |
| April | 1120 ppm | 3716 ppb | Readings high (TVOC interference evident) |
| May–June | 760-792 ppm | 1613-1815 ppb | Readings relatively low (ventilation period) |
| July–September | 654-784 ppm | 473-996 ppb | Readings lowest (summer) |
| October–December | 888-1021 ppm | 1382-2463 ppb | Readings moderate |
🌿 Seasonal pattern: eCO₂ and TVOC readings are lowest in summer (July–September) and highest in winter (January–March).
⚠️ Interpretation note: Because eCO₂ is affected by TVOC, high winter readings may partly result from elevated TVOC; they do not fully represent actual CO₂ accumulation.
3. Extreme-event analysis
3.1 Temperature extremes
Top 5 highest temperatures in the record:
- 31.35°C @ 2024-07-22 12:43
- 30.95°C @ 2025-07-22 16:34
- 30.94°C @ 2023-06-25 21:35
- 30.92°C @ 2025-07-22 16:54
- 30.89°C @ 2025-07-22 16:44
Top 5 lowest temperatures in the record:
- 11.01°C @ 2023-11-27 21:20
- 11.19°C @ 2025-02-03 19:44
- 12.74°C @ 2023-11-27 21:50
- 12.75°C @ 2025-01-17 08:31
- 12.81°C @ 2023-11-27 21:30
📊 Temperature span: 20.34°C (11.01°C – 31.35°C)
3.2 High-reading event analysis
Top 5 highest eCO₂ readings in the record:
- 20,694 ppm @ 2026-03-21 21:53
- 19,966 ppm @ 2026-04-04 15:32
- 19,730 ppm @ 2025-11-22 21:22
- 18,829 ppm @ 2024-03-16 18:04
- 17,358 ppm @ 2026-04-04 15:42
ℹ️ Reading interpretation: These extreme readings are almost certainly estimation errors caused by TVOC interference, rather than actual CO₂ accumulation.
Reasons:
- Actual indoor CO₂ concentrations rarely exceed 5,000 ppm (unless the space is extremely sealed and crowded)
- SGP30’s estimation algorithm produces a linked artificial spike when TVOC rises suddenly
- Readings above 20,000 ppm correspond to TVOC peak events (such as alcohol disinfection or heavy spray use)
Possible scenarios:
- The 21:00–22:00 evening peak: household activities (cooking, cleaning, and personal care)
- Weekend-afternoon peaks: family gatherings and cleaning activities
For precise CO₂ monitoring, consider upgrading to an NDIR-based sensor (such as Senseair S8 or MH-Z19B).
4. Status over the last 30 days (2026-03-09 ~ 2026-04-08)
4.1 Environmental metrics
| Metric | Average | Range | Status |
|---|---|---|---|
| Temperature | 22.2°C | 17.9-25.9°C | ✅ Comfortable |
| Humidity | 36.3% | – | ⚠️ Low (recommended 40-60%) |
| Pressure | 1008.0 hPa | – | ✅ Normal |
| eCO₂ (estimated) | 1,282 ppm | Peak 20,694 ppm | ⚠️ Readings high (possibly affected by TVOC interference) |
| TVOC | 5,044 ppb | Peak 60,000 ppb | ⚠️⚠️ Severely high |
4.2 Data completeness (last 12 months)
| Month | Records | Coverage |
|---|---|---|
| 2025-04 | 3,200 | 74.1% |
| 2025-05 | 3,740 | 86.6% |
| 2025-06 | 4,319 | 100.0% ✅ |
| 2025-07 | 4,464 | 103.3% ✅ |
| 2025-08 | 4,463 | 103.3% ✅ |
| 2025-09 | 3,099 | 71.7% ⚠️ |
| 2025-10 | 3,305 | 76.5% |
| 2025-11 | 2,574 | 59.6% ⚠️ |
| 2025-12 | 3,870 | 89.6% |
| 2026-01 | 3,660 | 84.7% |
| 2026-02 | 3,633 | 84.1% |
| 2026-03 | 3,813 | 88.3% |
| 2026-04* | 1,143 | 26.5% |
*April data through April 8
5. Conclusions and recommendations
5.1 Main findings
- Pronounced seasonality: Temperature and humidity show typical northern-climate characteristics: hot and humid in summer (28°C, 62% Humidity), dry and cold in winter (20°C, 29% Humidity)
- Interpretation: mainly affected by air-conditioning cooling/heating systems, representing normal indoor-environment variation
- Clear ventilation pattern:
- CO₂ early-morning peak (1009 ppm) vs afternoon low (801 ppm)
- TVOC lowest in summer (473 ppb), highest in winter (3455 ppb)
- Interpretation: reduced winter ventilation plus increased indoor activity (cooking and cleaning) raises readings
- Year-over-year TVOC increase: from 605 ppb to 3,450 ppb
- Interpretation: may reflect lifestyle changes (more frequent cleaning and disinfection, new furniture, changes in cooking methods, and so on).
- This does not necessarily mean worsening pollution; judge it in the context of specific household activities.
- High-reading events: CO₂ readings above 15,000 ppm were detected multiple times
- Most likely cause: estimation errors caused by TVOC interference with SGP30
- Common triggers: alcohol disinfection, perfume/spray use, cooking fumes, and cleaning-product evaporation
5.2 Suggested improvements
| Issue | Recommended action | Priority |
|---|---|---|
| Winter humidity too low (29%) | Add a humidifier; target 40–50% (during the heating season) | 🔴 High |
| High nighttime eCO₂ readings | Ventilate appropriately before bed and keep the bedroom air moving (but note that eCO₂ may be affected by TVOC interference) | 🟡 Medium |
| TVOC continues to rise | Record activities during high-reading periods (cleaning, cooking, etc.) and analyze correlations | 🟡 Medium |
| Data coverage fluctuates | Check sensor power and network stability | 🟡 Medium |
| eCO₂ reading reliability | For precise CO₂ monitoring, upgrade to an NDIR sensor (SGP30 is suitable only as a trend reference) | 🟢 Low |
5.3 Healthy reference standards
| Metric | Excellent | Good | Fair | Poor | Current status | Notes |
|---|---|---|---|---|---|---|
| Temperature | 20-26°C | 18-28°C | 16-30°C | <16 or >30°C | ✅ Good | Affected by air conditioning/heating |
| Humidity | 40-60% | 30-70% | 20-80% | <20 or >80% | ⚠️ Fair (Somewhat dry) | Humidification needed during the heating season |
| eCO₂* | <800ppm | 800-1000ppm | 1000-1500ppm | >1500ppm | ⚠️ Fair | *SGP30 estimate; spikes artificially when TVOC rises |
| TVOC | <500ppb | 500-1000ppb | 1000-3000ppb | >3000ppb | ⚠️ High | May be affected by everyday products |
⚠️ Important reminder: All CO₂-related conclusions in this report are based on SGP30’s algorithmic estimate (eCO₂). When TVOC rises, eCO₂ spikes artificially as well—the report’s eCO₂ trend reflects a combined effect of “actual CO₂ + TVOC interference” that cannot be separated on its own.
For accurate CO₂ monitoring, use an NDIR-based sensor (such as Senseair S8 or MH-Z19B).
Appendix: Technical information
- Database format: SQLite3
- Sampling frequency: approximately every 3–5 minutes
- Analysis tools: Python + SQLite3
- Data location:
/home/yangli/.openclaw/media/inbound/sensor_data---15ddecbb-d7ce-4e3e-bf24-c1604c598e67
Report generated: 2026-04-08 22:57 (Asia/Shanghai)
Analyst: Little Pliers 🦀