CSV Upload
Upload a CSV file of readings straight from the app, no code needed. The file is read in your browser and stays there until you send it.
CSV upload is on General crates.
Upload a file
Open the crate. Under Send data, find Upload a CSV and tap Choose file. The file needs a header row.
The app guesses which column is which. Change any that are wrong:
| Field | Options |
|---|---|
| Time | A column with the time of each row, or Time of sending |
| Device | A column with the device name, or One device for all rows plus a Device name (csv_upload by default) |
| Metric | Each number column (every column of numbers becomes a metric), or one column that holds the metric name |
| Value | When the metric comes from a column: the column with the number |
First points shows the first readings as they will be sent, with their time, device, metric and value.
Tap Send N points. A progress bar shows how far it got. Tap Stop to stop part way.
When it's done, the readings show up in Grafana within a few seconds.
Two shapes of file
Wide: one row per time, one column per metric. Leave Metric on Each number column.
time,device,temperature,humidity
2026-10-20T08:00:00Z,greenhouse-1,18.4,72
2026-10-20T09:00:00Z,greenhouse-1,20.1,68
Long: one row per reading, with the metric name in a column. Pick that column as Metric and the number column as Value.
time,device,metric,value
2026-10-20T08:00:00Z,greenhouse-1,temperature,18.4
2026-10-20T08:00:00Z,greenhouse-1,humidity,72
Times can be date strings, or Unix times in seconds or milliseconds.
Rows without a device, a readable time or a number are skipped, and the app tells you how many.
Big files
The app sends the file in batches the size your plan allows (100 readings on Free, 250 on Maker), no faster than your batch rate limit. If it's told to slow down, it waits and tries again.
If the file has more readings than your crate takes for the rest of today, the app warns you before you send. The extra readings are refused until the next day (UTC), or move the crate to Maker in Settings. See Plans and limits.