Sensor CSV analyser for indoor growing
Analyse growing-room temperature and humidity CSV files in your browser. Find gaps, time outside limits, VPD and day/night differences with sample data.
Drop your sensor CSV here
CSV format
UTF-8, comma delimiter, decimal point. Required columns: timestamp, temperature_c, humidity_pct. Optional: leaf_temperature_c, ppfd. Timestamps require seconds and Z or an offset, e.g. 2026-09-01T08:00:00+02:00. Temperature −20 to 60 °C, RH 0–100%, PPFD 0–4000. Maximum 5 MB, 50,000 rows and 366 days.
timestamp,temperature_c,humidity_pct,leaf_temperature_c,ppfd 2026-09-01T08:00:00+02:00,25,65,24,400
Upload CSV or open the sample data to begin.
Each value is held until the next record, capped at the sampling interval. Longer periods are gaps; nothing is extrapolated after the last record. Averages and excursion durations use covered time. Limits are your settings, not crop advice. Charts retain extrema while reducing points; calculations use every valid row.
How to use it
Try the sample data, or upload a CSV using the column names shown in the format guide. Timestamps need a timezone; temperature and humidity are required.
Set the expected recording interval, display UTC offset, day/night hours and your own limits. Reanalyse after changing settings.
Check missing and rejected records before interpreting averages. Compare the chart with time outside limits, then download the summary or attach it to an enquiry.
Find the gap before trusting the average
The sample contains a 48-hour record at 5-minute intervals. Loading it restores the example settings, including an upper humidity limit of 80%.
- Missing hours
- 1 h
- Relative humidity · Above upper limit
- 3 h
Reading the result
The sample has one hour of missing coverage and three covered hours above the humidity limit. Missing time is not treated as a normal reading. The same method is applied to your file; the example does not describe a real Hamfy installation.
Use the toolCommon questions
Does uploading send my CSV to Hamfy?
No. The file is analysed in your browser. Only if you attach the result and submit an enquiry is the displayed text summary sent. Analytics never receives CSV contents or filenames.
What does time above a limit mean?
Each measurement is held until the next record, capped at the expected interval. Longer gaps are excluded. The result describes covered time and depends on the limits you selected.
Need a technical review of your growing data?
Turn sensor exports into a clear report on measurement quality, climate patterns and the checks that matter next.