Skip to main content
GullySystem

How to Design an IoT Monitoring Dashboard

By Ganesh HS, Strategy and Technology, GullySystem

A good IoT monitoring dashboard is built around the decision a specific user needs to make, not around every reading a sensor produces. It should show current state, trend and clear alarm or disconnected status at a glance, with a way to acknowledge an alert and record what was done about it.

Start With Who Is Looking and What They Need to Decide

An operator on the floor, a maintenance technician, and a business owner reviewing performance each need a different view of the same underlying data. The operator needs current status and an obvious alarm; the technician needs enough trend history to diagnose a fault; the owner usually needs a summary, not a live feed of every sensor.

Designing one dashboard to serve all three at once tends to satisfy none of them well. It's worth defining these audiences and their specific decisions before laying out a single screen, rather than treating "the dashboard" as one undifferentiated deliverable.

Show Readings, Trends and Thresholds Together, Not Numbers Alone

A single current number rarely tells a viewer whether something is fine or drifting toward a problem. Showing a short trend line alongside the current value, with the threshold marked on it, lets someone see at a glance whether a reading is stable, climbing, or already close to the line that matters.

Data freshness deserves equal prominence — a timestamp showing when the reading last updated, visible without hunting for it, so a viewer can tell the difference between "this is current and normal" and "this hasn't updated in an hour and might not be normal at all."

Make Normal, Alarm, Disconnected and Maintenance States Visually Distinct

One of the most common dashboard design failures is showing a disconnected sensor with the same visual treatment as a normal reading, just with an old value frozen on screen — which reads to a viewer as "everything is fine" when it's actually "we don't know." These states need to look clearly different, not just be technically distinguishable in a tooltip.

A device deliberately taken offline for scheduled maintenance is a fourth state, separate from an unplanned disconnection — otherwise routine maintenance work generates the same alarming appearance as an actual fault, and people learn to dismiss it, alarm fatigue that then carries over to real problems.

Support Acknowledgement, History and Role-Specific Views

Consider a warehousing and 3PL company monitoring cold-chain temperature across six warehouses on one dashboard. Without an acknowledgement step recording who saw an alert and when, and what was done about it, there's no way to answer a client's question after the fact about how a temperature excursion was actually handled — the dashboard becomes a display rather than a working record.

Role-based access matters too: a client checking on their own stored goods shouldn't see every other client's data, and a technician responding to an alert doesn't need access to unrelated business reporting. Building this in from the start avoids retrofitting access controls later, once more people already have broader access than they should.

Test Whether Operators Can Actually Spot and Act on Exceptions

The real test of a dashboard isn't whether it looks organised in a demo — it's whether someone who's never seen it before can glance at it and correctly identify which asset needs attention right now, within a few seconds. This is worth testing directly with the actual people who'll use it, before treating the design as finished.

It's also worth deliberately testing a failure scenario during that review — simulate a disconnected sensor, or an alarm alongside several normal readings — and watch whether the person testing it notices it without being told where to look.

Annotated equipment dashboard

A mock dashboard screen annotated with call-outs explaining each design decision: how the four states (normal, alarm, disconnected, maintenance) are visually separated, where the freshness timestamp sits, how the acknowledgement control works, and which elements change for a different role's view of the same data.

Frequently asked questions

How do we show stale sensor data?

As a distinct, clearly different visual state from a normal current reading — greyed out or flagged, with the last-updated timestamp visible — rather than quietly displaying the last known value as if it were current.

Should alarms be treated differently from trends?

Yes. An alarm needs a persistent, hard-to-miss treatment that typically requires an acknowledgement before it clears, while a trend chart is passive information someone checks when they choose to. Blending the two into one visual style makes real alarms easy to overlook among routine data.

Next step

Have a specific situation to work through?

This article covers the general case. Tell us what you're actually dealing with and we'll respond directly.

Discuss Your Requirement