Back to notes

Building Effective Dashboards with Metabase

Lessons learned from building production dashboards that people actually use, focusing on Metabase as a self-hosted BI tool.

After building dozens of dashboards across different projects, I’ve learned that the hardest part isn’t the technical implementation — it’s making dashboards that people actually open every day.

The Problem with Most Dashboards

Most dashboards fail because they try to show everything. You end up with a wall of charts that nobody reads. The best dashboards answer one or two specific questions clearly.

At Pacific Gold, we went through three iterations of the production KPI dashboard before finding the right balance. The first version had 15 charts. The final version has 4 — and gets 10x more daily views.

Why Metabase

For a self-hosted, open-source BI tool, Metabase hits a sweet spot:

Design Principles That Work

1. Start with the question, not the data. Before opening Metabase, write down the exact question the dashboard should answer. “How are we performing against monthly targets?” is better than “show me all the metrics.”

2. Use filters instead of more charts. A single chart with a date range filter and category selector is more useful than 6 static charts showing different time periods.

3. Put the most important number in the biggest font. Sounds obvious, but I’ve seen dashboards where the key metric is hidden in a dense table. The number your manager cares about should be visible from 3 meters away.

4. Refresh schedules matter. A dashboard showing yesterday’s data when users need real-time is useless. Configure caching and refresh intervals based on how the dashboard is actually used.

The Integration Story

Where Metabase really shines is when embedded into existing applications. Using the embedding API, we built a portal where each client sees only their own data, with the dashboard seamlessly integrated into our ASP.NET Core application. The users don’t even know they’re looking at Metabase — it just looks like part of the app.

Back to notes