Data · Guide

BI Tools

Power BI and Tableau, the semantic layer underneath them, and dashboards people actually use.

— min read Data

The Last Mile

A BI tool is where all the modelling work meets someone who has ninety seconds and a decision to make. Most of what makes it good happened upstream — in the model, the metric definitions and the freshness — but the last mile is where it is judged.

The tool matters less than the two things around it: a model shaped for the questions being asked, and one agreed definition per metric. Where those are missing, no visualisation layer saves you — you get three dashboards with three revenue numbers and a meeting about which is right.

Power BI

Microsoft's tool, and the default anywhere the organisation already runs Office and Azure. Modelling happens inside it: relationships between tables, then measures written in DAX.

Revenue = SUM(fact_orders[net_amount])

Revenue YoY % =
VAR Current  = [Revenue]
VAR LastYear = CALCULATE([Revenue], SAMEPERIODLASTYEAR(dim_date[date]))
RETURN DIVIDE(Current - LastYear, LastYear)
StrengthCost
Cheap per seat, ubiquitous in Microsoft shopsDAX has a genuinely steep learning curve
Strong modelling and time intelligenceLogic can end up living only in the report
Import mode is very fastRefresh schedules and dataset size limits
Understand import versus DirectQuery before designing anything: import copies data in and is fast but stale between refreshes; DirectQuery queries the warehouse live and is fresh but only as fast as the warehouse under dashboard load.

Tableau

Tableau leads on exploration and visual craft: drag a field, see a chart, follow the question wherever it goes. It is the stronger tool for analysts investigating something, and its defaults produce better-looking charts with less effort.

Power BITableau
Best atModelling and governed reportingExploration and visual analysis
Calculation languageDAXCalculated fields, LOD expressions
CostLow per seatHigher
FitsMicrosoft estatesAnalyst-heavy teams, any stack

Both converge on the same failure mode. Once metric logic is written inside the tool, two reports drift apart and nobody can say which definition of "active customer" is the real one — which is the argument for a semantic layer.

The Semantic Layer

A semantic layer holds metric definitions once, outside any dashboard: revenue, active customer, churn — defined in version-controlled code, computed in the warehouse, and consumed identically by every tool and every notebook.

With oneWithout one
One definition, reviewed in a pull requestThe same metric written in four dashboards
Changes propagate everywhereSome reports quietly stay on the old rule
Lineage from metric to source tableNobody knows where the number came from
Consistent across BI, notebooks and APIsNumbers depend on which tool you opened
Then design for the question. A dashboard that opens with the three numbers a decision needs, and drill-down beneath them, beats forty charts arranged by which table they came from. If nobody can say what action a chart supports, it is decoration.

Interview Questions

Power BI or Tableau?

Power BI where the organisation is Microsoft-based and reporting is governed — cheap seats, strong modelling, DAX. Tableau where analysts explore and visual quality matters. Both are fine; the model beneath them matters more.

Import versus DirectQuery?

Import copies data into the tool: fast, but stale between refreshes and bounded by dataset size. DirectQuery queries the warehouse live: always fresh, but dashboard performance becomes warehouse performance.

Why does a semantic layer matter?

It defines each metric once, in version control, so every dashboard and notebook computes it the same way. Without it the same metric gets rewritten per report and the numbers drift apart.

Why do dashboards end up with conflicting numbers?

Metric logic written inside the reporting tool. Two authors implement "active customer" slightly differently and nothing reconciles them.

What makes a dashboard good?

It answers a specific question for a specific person. The headline numbers a decision needs first, drill-down beneath, and nothing on it that does not support an action.

What is the biggest cost of a wide dashboard?

Attention. Forty charts arranged by source table means nobody finds the two that matter, so the dashboard stops being opened at all.

Quick Quiz

1. DirectQuery trades…
2. DAX is the calculation language of…
3. A semantic layer exists to…
4. Conflicting revenue numbers across dashboards usually mean…
5. A chart that supports no decision is…