Real-Time IoT Dashboards: Building with Grafana and InfluxDB

At 2 a.m., a compressor in a cheese factory outside Leeds began to fail — no bang, no alarm, just a bearing temperature climbing half a degree an hour.

The sensors saw it. Readings landed in a database all night, faithfully. But data in a database is invisible. What saved the batch was a wall-mounted screen in the corridor, where one amber line had bent upwards away from its neighbours. The morning engineer glanced at it on the way to the kettle, frowned, and swapped the bearing before lunch.

IoT projects live or die not on whether they collect data, but on whether anyone can see it at the moment seeing matters. In 2026, the default way to see it is the same pair of tools everywhere: InfluxDB to remember, Grafana to explain. πŸ“ˆ


The Short Version

The dashboard is usually the last thing built — and the only part anyone ever sees. The mental model that actually works: the database remembers, the dashboard explains.

Every real deployment is the same five-stage pipeline:

  • Sensors publish readings (MQTT or HTTP, a few dozen bytes)
  • Telegraf — 300+ plugins — collects and forwards them
  • InfluxDB 3 stores the time series and answers queries in SQL
  • Grafana turns the answers into panels, refreshed every few seconds
  • Alert rules watch the queries when no human is looking

Every stage is replaceable, which is exactly why the stack has lasted. And it all runs on a Raspberry Pi in the shed — no cloud required.


InfluxDB 3 — Briefly

InfluxDB spent the early 2020s on a detour: version 2.0 bet on Flux, a query language most users never learned to love. By 2023 Flux was deprecated; in April 2025 came InfluxDB 3 — a ground-up rewrite in Rust on Apache Arrow and Parquet, queried in plain SQL. Faster, better compressed, open formats.

One trade to know: the free Core edition is optimised for recent data — superb as the fast front window of your telemetry, with the Enterprise tier handling long-horizon queries at scale. For dashboards, whose questions are overwhelmingly about now, that trade is usually fine. But make it knowingly — and if a tutorial's query starts with from(bucket:, check the date and keep scrolling.


Designing a Dashboard That Actually Helps

Most dashboards fail because they're organised around the data that exists, not the decisions someone must make. A good one has three layers:

  • Top: NOW — a handful of stat tiles with thresholds, readable from across the room
  • Middle: TREND — the last hours and days, where a bending line tells its story
  • Bottom: EVIDENCE — tables and per-device detail for whoever's already worried

Template variables let one dashboard serve fifty sites. Thresholds mean nobody memorises which number is bad. And the most important alert in any IoT system is the one that fires when a device goes quiet — silent death is how devices actually fail.

The corridor screen that saved the cheese had six panels. Not forty.


The Honest Limitations

Cardinality will find you — tag by anything unbounded and the database slowly strangles itself. Self-hosting is real, ongoing work; "the SD card filled after a year" is a rite of passage. And dashboards rot: renamed devices, retired measurements, stale thresholds. A dashboard is a living document pretending to be furniture — it needs an owner.


πŸ’‘ Final Thought

No standards battles here, no protocol wars — just two open-source tools that got good by being used for a decade. The deeper lesson: data you can't see might as well not exist. Every unwatched database is a story going untold — the bearing warming, the battery sagging, the greenhouse overheating on a Sunday.

Build the screen early, not last. Put it where people walk past.

Sensors collect data. Dashboards create attention — and attention is the thing that saves the batch.

→ Full breakdown: the complete pipeline with line protocol, InfluxDB 3's rewrite and what it means for your stack, the three-layer design method, alert tuning, where things stand in 2026, and the builder's checklist: Read the deep dive


Follow for more IoT data-engineering deep dives — part of my ongoing 101-story series. πŸ”¬

Comments

Popular posts from this blog

How Smart Grids & IoT Are Powering a New Era of Energy Efficiency ⚡🌍

Miraikan: The Future Is Here