Getting started with Grafana: best practices to design your first dashboard
At its core, observability is about helping humans understand and optimize complex systems. It enables engineering teams to ask questions on the fly, and to learn not only when something goes wrong but why. Observability also allows organizations to proactively identify and address performance issues — before their end users even have a chance to notice.
For over a decade, Grafana dashboards have empowered organizations to achieve these (and more) observability goals by unifying and displaying data in beautiful graphs, charts, and other visualizations. And while Grafana is well-known for its ease-of-use, we also realize that a little guidance can go a long way when it’s time to build your first dashboard.
In this blog post, which is geared towards those getting started with Grafana, we break down some of the key principles behind effective dashboard design. From knowing your audience to choosing which metrics to include, here are some helpful guidelines to start creating stunning and informative Grafana dashboards — and transform your data into actionable insights — today.
Note: To learn more about Grafana dashboard design and see demonstrations, check out our “Getting started with Grafana dashboard design” webinar.
Know your audience (and what they want to know)
One of the golden rules of designing a Grafana dashboard is to do so with a specific purpose or use case in mind. Your dashboard should either tell a story through a logical progression of data (such as large to small or general to specific), answer a question, or both. To do this effectively, you need to understand the intended users or audience for your dashboard.
For example, an engineer has a very different goal when using a Grafana dashboard compared to a product manager. The engineer likely wants visualizations that can quickly convey whether their service or system is performing as expected and help them pinpoint the cause of an issue if degradation occurs. A product manager, on the other hand, might use a Grafana dashboard to understand how customers are accessing and interacting with their app. Bottom line? There’s an incredibly wide range of use cases for Grafana dashboards, both in professional and personal settings.
This means, before you start designing your dashboard, you should put yourself in the shoes of your intended user, outlining their specific goals and needs when it comes to data visualization. As part of that exercise, also consider the delivery method and level of interaction required — a dashboard shown in a PDF report, for example, won’t be interactive, but it could be the best way to send a monthly performance report to your leadership team.
Take advantage of visual hierarchies
After defining your audience and their goals, it’s time to think about how to most effectively display information in your dashboard. This is where the concept of visual hierarchies comes into play.
A visual hierarchy is a pattern in which some elements stand out and attract attention more than others, thereby suggesting a hierarchy of importance. By using a visual hierarchy, you can guide your viewer to the information you want them to focus on the most.
There are several categories of visual hierarchy to consider:
- Alignment: This is the order in which you present or organize your content, which has a significant influence on engagement. In English-speaking countries, for example, users tend to scan page content — whether in a book, on the web, or in a Grafana dashboard — in a “Z” pattern from left to right and top to bottom. Knowing this, you’d likely want to place key content in the top left corner of your dashboard.
- Size: This one is fairly straightforward: the bigger the size of the component, the greater the perception of importance. For example, you could emphasize key metrics in a large stat panel, and then place supporting data and other details beneath it in smaller panels.
- Color: Our eyes are drawn to bright, saturated colors. If the color of an object is visually distinct from its background, the viewer will likely notice it first. So, if you’re forced to use larger panels in the middle of your dashboard — for a geomap, for example — but want to emphasize information in the top panels, you could use color to direct a user’s attention back to the top.
- Shape: Complex shapes that stick out from their surroundings also help draw attention.
Remember that everything in your dashboard should be important, but not everything will be equally important. Again, the power of visual hierarchies is that they can help guide your users to the most important information in your dashboard.
Lastly, in thinking about these visual cues, accessibility is always important. For instance, to accommodate colorblind users, avoid red and green color combinations, as these can be difficult for them to see.
Choose the right metrics
Metrics are another important consideration in dashboard design. In order to choose the right metrics to highlight, you again should think about your intended user and the information they need to draw conclusions and take action.
Operations and engineering teams, for example, tend to prioritize metrics that can help them maintain consistent SLOs, improve uptime, and reduce MTTR. For these types of dashboard users, it’s helpful to use the RED method to define your metrics. RED stands for:
- Rate: requests per second
- Errors: number of requests that are failing
- Duration: amount of time these requests take, and distribution of latency measurements
The RED method can help you gauge how happy your customers are when using your service. In the dashboard below, our service consists of three tiers: a load balancing tier, a web application tier, and a backend database, and we’re tracking RED metrics for each tier.
While the RED method is meant to observe the service layer, there’s also the USE method to observe the infrastructure layer. This method helps track the underlying infrastructure resources, such as CPUs, memory, disk, and network components, that support a service or application. USE stands for:
- Utilization: the percentage of time a resource, such as a CPU, is busy
- Saturation: the amount of work a resource has to do, often represented by queue length or node load
- Errors: the count of error events
The USE method is something a network admin or engineer, for example, may use to ensure resources don’t get oversaturated and lead to performance issues.
Another set of metrics to consider is the Four Golden Signals of Monitoring. Defined in the Google SRE handbook, these metrics include:
- Latency: the time taken to serve a request
- Traffic: a measure of how much demand is being placed on your system. For a web service, this is typically reflected by HTTP requests per second.
- Errors: the rate of requests that fail (e.g., with an HTTP 500 status code)
- Saturation: how “full” your system is, in terms of memory and I/O, for example. This is important because many systems experience performance degradation before they reach 100% utilization.
These are core, baseline metrics to monitor system performance. As Google puts it, if you can only measure four metrics of your user-facing system, these are the four to focus on.
Iterate, iterate, iterate
Observability is a journey, not a destination. It requires careful planning, effective feedback loops, and continuous improvement. The same applies to dashboard design: you will (and should) always be iterating.
The definition of a “bad” metric or a “good” metric, or even a positive state vs. a negative state, may change for you and your users over time. Even if you feel like you’ve built that perfect dashboard, remember there’s always an opportunity to evolve or improve.
To learn more and see demos related to dashboard design, watch our on-demand webinar, “Getting started with Grafana dashboard design.” You can also reference our gallery of dashboard templates and our technical docs.
Happy designing!
Grafana Cloud is the easiest way to get started with metrics, logs, traces, and dashboards. We have a generous forever-free tier and plans for every use case. Sign up for free now!