DAX exercises that check every cell.
DAX Practice is a set of DAX exercises that run in your browser: write a real measure, watch a Power BI-style matrix recalculate, and see exactly which numbers are wrong. 8 free lessons for PL-300 candidates and analysts, from SUM to context transition, then 19 USD a month for Pro.
Bikes to ClothingSales amount by country and year, filtered by your CALCULATE.
| Year | |||
|---|---|---|---|
| Country | 2024 | 2025 | Total |
| France | 25,203.50 | 17,523.00 | 42,726.50 |
| Germany | 29,732.50 | 45,454.50 | 75,187.00 |
| Netherlands | 18,575.00 | 24,948.00 | 43,523.00 |
| United Kingdom | 28,853.50 | 19,316.00 | 48,169.50 |
| Total | 102,364.50 | 107,241.50 | 209,606.00 |
A model you can see, a matrix that grades you
Every lesson runs on the same small bike-shop model: Sales, Product, Customer and Date in a star schema. It is drawn like a technical sheet, so you always know which way filters flow. Select a column to drop it into your formula.
Your measure fills a matrix the way a Power BI visual does: one filter context per cell, subtotals and a grand total. Check it and every cell is compared with the expected result. Wrong cells are marked, and the hint is about your mistake, not a generic one: multiplied two totals, cleared the wrong table, forgot context transition.
What you will practise
The free lessons build one idea at a time, ending with the two concepts that trip up most Power BI users: CALCULATE and context transition.
- 01Your first measureSUM and the filter context of a matrix
SUM - 02Row by row with SUMXIterators and row context
SUMX - 03Reading across a relationshipRELATED inside an iterator
RELATED - 04Measures on measuresReusing measures and DIVIDE
DIVIDE - 05CALCULATE with a filterChanging the filter context with CALCULATE
CALCULATE - 06ALL and the share of totalRemoving filters with ALL
ALL - 07ALLEXCEPT: share within a groupKeeping one filter while removing the rest
ALLEXCEPT - 08Context transitionRow context becoming filter context
FILTER, COUNTROWS - 09Averages per customer with AVERAGEX over VALUESIterating a column, not a table Pro
- 10Counting customers with DISTINCTCOUNTCounting distinct values, not rows Pro
- 11Order lines per customerA ratio of two counts Pro
- 12The largest order line with MAXXIterators other than SUMX Pro
DAX Practice Pro
The free lessons stay free. Pro adds the rest of the course on the same model, paid monthly, yearly, or once for Lifetime.
- YearlyBest value79 USD per year6.58 USD a month, billed once a year. Save 65%
- Monthly19 USD per monthBilled every month, cancel any time
- Lifetime199 USD oncePay once, yours forever. A good fit for PL-300 prep
Questions
What is DAX Practice?
DAX Practice is a website where you write DAX measures in your browser and a Power BI-style matrix checks every cell against the right answer. The first 8 lessons are free and need no account. DAX Practice Pro costs 19 USD a month, 79 USD a year, or 199 USD once for Lifetime access.
Does this help with the PL-300 exam?
Yes, for the DAX part. The PL-300 (Microsoft Power BI Data Analyst) exam expects you to write and read measures: CALCULATE, filter context, ALL, iterators and relationships. These exercises drill exactly those, with a checker instead of multiple choice. They are not official Microsoft material and contain no exam questions.
Can I practise DAX without Power BI?
Yes. The data model and the DAX engine run in your browser, so you need neither Power BI Desktop nor a Windows machine. It works on a Mac, a Chromebook, or a work laptop where you cannot install software.
What is the difference between CALCULATE and FILTER in DAX?
CALCULATE evaluates an expression in a changed filter context: its filter arguments replace the filters on their columns. FILTER is an iterator that returns a table, the rows of its first argument for which a condition is true. FILTER is often used inside CALCULATE as a table filter, for example CALCULATE([Sales Amount], FILTER(Customer, [Sales Amount] > 5000)), while a simple column condition such as Product[Category] = "Bikes" needs no FILTER at all.
What is context transition in DAX?
Context transition turns the current row of a row context into an equivalent filter context. CALCULATE does it, and so does every measure reference, because a measure is wrapped in an implicit CALCULATE. That is why [Sales Amount] inside FILTER(Customer, ...) returns each customer’s own sales, while a bare SUMX there returns the total of the whole cell.
Is it real DAX?
It is a DAX interpreter written for these lessons. It follows Power BI semantics for filter context, CALCULATE, ALL, ALLEXCEPT, KEEPFILTERS, RELATED and context transition, and every lesson result is covered by tests. Functions outside that subset say so instead of guessing.
How is it different from a video course?
You write every measure yourself and get a result for each cell, not a quiz score. Wrong cells are marked in the matrix and the hint names your specific mistake, such as multiplying two totals or forgetting context transition.
Can I cancel?
Yes. Monthly and yearly plans can be cancelled at any time from your account and keep access until the end of the period you paid for. Lifetime is a single payment with nothing to cancel. Within 14 days of buying you can also withdraw and get your money back: write to hello@daxpractice.com, the payment is refunded through Stripe and Pro access ends.