Introducing Visual Explorer, a new tool for data visualization.Learn more

The Future of BI, Powered by dbt’s Semantic Layer

Image of author

Benn Stancil, Co-founder & Chief Analytics Officer

October 18, 2022

NaN minute read

dbt Semantics Layer

When we hired our first marketer at Mode, back in 2014, I insisted we not call Mode “Business Intelligence.” Our vision to build the next generation of analytics tools for the next generation of data teams, at the time, did not seem to fit the moment’s current definition of business intelligence. In 2014, BI was reporting for a bygone era, from a time when data teams were servicing organizations that printed weekly binders of corporate KPIs for company leaders. Strategic analytics teams—like those that drove the growth of Facebook and Airbnb—didn’t exist to crank out dashboards for executives; they were built to be partners to business leaders, and do critical technical analysis that could make or break a company’s success. 

This, I told our new marketing hire, was who Mode was for. BI was for the boomers. She disagreed: as a marketing leader, she said, “great reporting was more important than ever.” 

In the end, we were both right—though she was more right than I was. It was true that data teams wanted to move beyond BI. People became analysts and data scientists to solve big problems, and building dashboards felt below that line. To many a data team, a post-BI future was the world we wanted to live in.

But our new head of marketing was right that BI was still critical. Companies were becoming more quantified than ever, and every department and role needed access to reliable reporting and dashboards. If anything, companies would rely on BI more, not less. No matter how much I wanted to stand on my soapbox and move on from BI, it couldn’t be wished away. 

The tension between the two of us—me wanting to work on impactful problems in tools built for analysts, and her needing consistent reporting to empower her team—is still reflected across the industry. Data teams do their exploratory analysis and answer ad hoc questions in technical query and notebook tools, while business people often look at dashboards in self-serve BI products. The results are still messy; logic gets copied and pasted across tools, metrics are often mismatched, and everyone feels like they’re routinely dragged into a tool that isn’t meant for them. And worst of all, teams, siloed by the tools they preferred, don’t work together. Fast-forward to today.

BI we can all love

The fundamental problem with BI today is that it sits at the intersection of three key personas: Analytics engineers, analysts, and business stakeholders ("the customers," people beyond the data team).

Each of these groups has a distinct way of working, and tools they want to work in.  But most BI tools only serve one or two groups. They might use flexible code as configuration, but don’t offer ways for data scientists to do exploratory analysis in SQL or Python. Or they might have great features for visual analysis, but lack the code-first experiences preferred by analytics engineers. 

The BI tools of the future should work for all of these groups, not just one or two. For analytics engineers, that means by letting them configure models—and now, metrics—without ever having to leave dbt. For business stakeholders, it means exploring trustworthy data in an accessible environment. And for analysts, it means, when the inevitable deep-dive question comes up, being able to build on top of the same data and metrics analytics engineers created and business users consume. 

Moreover, we believe that the best BI experiences have to have a technical core—you can't tack a technical veneer onto code-free foundation. dbt and analytics engineers are the cornerstone of modern data stack; they will be the cornerstone of modern BI as well. 

Our new integration with dbt's Semantic Layer

Today, we're excited to take our first of several steps towards this vision of modern BI with the launch of our integration with the dbt Semantic Layer. Here’s how it works:

First, analytics engineers create metrics in dbt, using all of the elements of dbt they know and love. Once those metrics are merged, Mode will automatically detect that they’re available. Mode users can visually explore those metrics directly, using whatever filters, dimensions, and time grains are configured in dbt. 

(Here are some frameworks that data teams and business teams can use to define metrics.)

By building on top of the dbt Semantic Layer, metrics will always be accurate—Mode and dbt protect against common pitfalls like summing distinct values or averaging daily averages to get a monthly average. This ensures that no matter who’s looking at a metric or how they want to view it, they can trust that it was computed correctly and consistently.

Finally, if something unexpected emerges—a metric is down; a cohort is suddenly performing exceptionally well—analysts can see how that metric was calculated. Since Mode’s new connection to the dbt Semantic Layer allows analysts to use Jinja directly in the query editor, analysts can then build directly off of the dbt metrics query to dive deeper into the problem.

We believe that this workflow is just the beginning of a true modern BI experience. Analytics engineers never have to leave dbt. The models and metrics they create in dbt are configured for Mode. Define the metric once; use it everywhere. Update the metrics; update it everywhere.

Define the metric once; use it everywhere. Update the metrics; update it everywhere.

Business users can not only explore these metrics, but also fully trust them. Data consumers no longer have to ask where to find some particular metric—if it’s in dbt, it’s in Mode. Nor do they have to wonder why their number doesn’t look the same as somebody else’s—if it’s powered by Mode and dbt, it’s right.

And analysts don’t have to recreate the same reports in a BI tool over and over again. Gone are the days of copying and pasting code to create yet another dashboard with a slightly different cut of revenue, and worrying about the logic in one report drifting out of date. Rather than worrying about these problems, analysts can stop worrying about if a metric is right (just as I wanted to when we started Mode), and start asking what we do about how it’s changing.

Learn more about how our integration works.

Get our weekly data newsletter

Work-related distractions for data enthusiasts.