How this track works
Ten sessions, one warehouse: Daybreak, a direct-to-consumer coffee-subscription brand with customers, products, orders, and subscriptions - the same database from learn-sql-with-phoebe, all grown up. Tonight you build your first chart. By b9 you will model a star schema, define governed measures, and ship an executive dashboard that explains a real revenue dip. Every concept is tool-agnostic and mapped to Power BI and Tableau in sidebars, so it transfers straight to whatever your company runs.
What BI adds on top of SQL 6 min live
SQL answers one question for one person who can write SQL. Business intelligence answers the same questions, refreshed daily, for everyone - including people who will never write a query. A BI platform is the machinery that makes that scale: it connects to data, reshapes it, models it into business terms, draws it, and distributes it with security attached. Every tool - Power BI, Tableau, Looker, Metabase - is a variation on the same five stages.
LiveBI vs analytics vs data science - who does what3 min▶
These words blur together in job ads, but the split is clean when you look at the question each one answers:
- BI answers "what is happening?" - recurring, standardized, self-serve. Revenue this month, churn by plan, orders by channel. Freshness and trust matter more than cleverness.
- Analytics answers "why did it happen?" - one-off investigations, ad-hoc SQL, notebooks. The March dip in b9 starts as a BI observation and becomes an analytics investigation.
- Data science answers "what will happen, and what should we do?" - models, forecasts, experiments. It usually consumes the same modeled data BI built.
The 9am test. If a question gets asked every Monday at 9am by someone who cannot write SQL, that is BI. If it got asked once by the CFO after a weird board meeting, that is analytics. Teams that route both through the same ad-hoc channel burn their analysts on repeat questions a dashboard should have answered.
Self-studyWhere BI sits in the modern data stack3 min read▶
In a modern company the flow is: operational systems (Shopify, Stripe, the app database) → ingestion (Fivetran, Airbyte) → warehouse (Snowflake, BigQuery, Databricks) → transformation (dbt) → BI (this course) → humans and, increasingly, AI agents. BI is the last mile - which is exactly why it gets blamed when anything upstream breaks. Session b10 zooms out to this full stack.
- BI reads, it does not own: the warehouse owns storage; BI owns meaning and presentation.
- The semantic model is the handshake: business definitions ("revenue", "active customer") get encoded once, so every chart agrees. That idea gets its own session (b4) and its own leader session (a3).
- Daybreak simplification: our whole "warehouse" is one small SQLite database in your browser - tiny, but structurally identical to the real thing.
Import the data, or query it live? 6 min live
The first real decision in any BI tool: does the tool take a copy of the data (fast, snapshot-stale) or ask the source every time (always fresh, only as fast as the source)? Every vendor names it differently; the trade-off is identical. Get this wrong and you either ship stale numbers or melt the warehouse.
LiveHow to choose - the three questions3 min▶
Ask these in order, and the mode picks itself:
- How fresh must it be? "Yesterday is fine" (most finance and exec reporting) → Import. "Up to the minute" (ops floor, fraud) → live.
- How big is it? Fits comfortably in memory after filtering to what you need → Import. Billions of rows you only ever aggregate → live against a warehouse built for it.
- Who pays for queries? Live mode sends every viewer's every click to the source. A dashboard with 500 viewers can hammer a warehouse. Import absorbs that on the BI side.
Self-studyWhere our playground fits2 min read▶
The mini-BI tool on this page is technically an import: your browser downloaded a copy of the whole Daybreak database once, and every chart is computed locally against that copy - fast, and it costs the "warehouse" nothing. It is also how Power BI Import mode feels in practice: interactions are instant because the data is already in memory. When b8 covers refresh schedules, remember: our "refresh" is you reloading the page.
Meet the mini-BI: it writes the SQL for you 4 min live
Here is the same question answered two ways. First, the SQL way - you write the query. Then, the BI way - you pick Dimension: month and Measure: revenue, and the tool writes the query. Click Show SQL on the mini-BI and compare: it generated what you would have typed. That generation step is what Power BI's semantic model, Looker's LookML, and dbt's metrics layer all do for a living.
LiveThe SQL way - you write it2 min▶
Straight from the SQL course: revenue by month, typed by hand. Run it.
SELECT strftime('%Y-%m', o.order_date) AS month,
ROUND(SUM(oi.quantity * oi.unit_price), 2) AS revenue
FROM orders o
JOIN order_items oi ON oi.order_id = o.order_id
GROUP BY 1
ORDER BY 1;
LiveThe BI way - you pick, it writes2 min▶
Same answer, zero typing. Now press Show SQL and read what it wrote. Then change the measure to Orders and watch both the chart and the SQL change together.
Build your first three charts ★ 12 min · everyone builds
Daybreak's founder asks three questions. Answer each by picking the right dimension, measure, and chart type in the box below - one box, three configurations. This is the core loop of every BI tool: question → dimension + measure → chart.
"How is revenue trending month over month?" Dimension: Month · Measure: Revenue · Chart: Line. Notice anything odd around March? Hold that thought until b9.
"Which cities buy the most?" Dimension: City · Measure: Revenue · Chart: Bar. The gold bar is your top category - a styling choice you will justify in b5.
"How big are we overall?" Chart: KPI card · Measure: Revenue. One governed number, no dimension - the shape every executive dashboard leads with.
This loop is the job. A BI developer's day is largely: hear a business question, translate it to dimension + measure, pick the chart that answers it fastest, repeat. The people who look senior are not drawing fancier charts - they are translating questions faster and defining measures everyone trusts. Tools change; that loop does not.
Your turn: three questions, your charts ★ 10 min · build your own
No recipe this time. For each question, decide the dimension, the measure, and the chart type yourself - then check your choice against the hint. Wrong first picks are normal; noticing why a chart fails to answer the question is the actual lesson.
LiveQ1 · Do Pro-plan customers spend more than Basic?3 min▶
LiveQ2 · Which product category drives the most units?3 min▶
Self-studyQ3 · How many distinct customers actually order each month?2 min▶
A taste of b4: "Buying customers" is a COUNT(DISTINCT ...) - a measure that cannot be summed across months (a customer active in two months is not two customers). Semi-additive measures like this are where hand-rolled reporting quietly goes wrong.
Try it yourself - this week ◐ 20-30 min total
- Bookmark this page - the mini-BI is your chart scratchpad for the whole track.
- Explore every dimension with Revenue as the measure. Write down the single most surprising thing you find in Daybreak's data.
- For each chart you build, press Show SQL and read the query until nothing in it surprises you. If the SQL course is fuzzy, sessions b3-b4 of learn-sql are the refresher.
- Find one dashboard at work (or any public one) and identify its dimensions, measures, and chart types. Every dashboard decomposes this way.
- Bring to b2: one example of messy data you have met in real life - wrong types, duplicates, mystery nulls. b2 is where we clean.
Official sources covered
This track teaches the shared core of the Microsoft PL-300, Tableau Data Analyst, and Google BI curricula, tool-agnostic and live. Certificates, videos, and click-path labs stay with the vendors (mapped in b10). This page covers:
Three questions before you go 🎯 ◐ 90 seconds
1 · A question gets asked every Monday at 9am by managers who cannot write SQL. That is a job for...
Recurring + standardized + non-technical audience = BI. Analysts should be freed for the "why" questions, not re-running Monday's numbers.
2 · Your exec revenue dashboard needs yesterday's numbers, loads fast, and has 300 viewers. Best connection mode?
Daily freshness is enough, so take the copy: instant interactions for 300 viewers and zero per-click load on the source. Live mode would send every click to the warehouse.
3 · You picked "revenue by month" and the mini-BI produced SQL. Which BI concept did you just watch?
Declaration in, query out - that translation IS the semantic layer. Power BI's model, LookML, and dbt metrics are industrial versions of the same move (b4 and a3 go deep).