DAX (Data Analysis Expressions) is a functional formula language developed by Microsoft for data modeling and analytical calculations in Power BI, Excel Power Pivot, and SQL Server Analysis Services (and Azure Analysis Services / Microsoft Fabric). Unlike traditional spreadsheet formulas, DAX operates on tables and columns rather than cell references, enabling dynamic aggregations that automatically respond to filter context. The key to DAX mastery lies in understanding evaluation contexts: filter context (what's being filtered), row context (iterating through rows), and context transition (how CALCULATE bridges the two) — once you grasp these three concepts, even complex DAX patterns become intuitive. In 2025–2026, DAX gained two landmark features: user-defined functions (the biggest language change since variables) and calendar-based time intelligence for non-Gregorian calendars.
What This Cheat Sheet Covers
This topic spans 29 focused tables and 257 indexed concepts, 139 flashcards. Below is a complete table-by-table outline of this topic, spanning foundational concepts through advanced details.
A jump-to index of every table row in this cheat sheet.
An interactive map of every table and concept in this topic.
Table 1: Core Calculation Types
The four building blocks of DAX define where calculations live and when they are evaluated. Choosing the wrong type is the most common beginner mistake — especially confusing measures (dynamic, context-aware) with calculated columns (static, row-level, stored in the model).
| Type | Example | Description | |
|---|---|---|---|
Total Sales = SUM(Sales[Amount]) | • Dynamic calculation evaluated in filter context • recalculates on every slicer/filter/visual selection • does not add to model size — the preferred default. | ||
Profit = Sales[Revenue] - Sales[Cost] | • Static row-level calculation evaluated in row context • computed once during refresh, stored in model • increases file size — prefer measures or Power Query when possible. | ||
DateTable = CALENDAR(DATE(2020,1,1), DATE(2025,12,31)) | • New table created from a DAX expression • useful for date tables, role-playing dimensions, and data modeling • refreshed with the dataset. | ||
RunningTotal = RUNNINGSUM([Total Sales]) | • Calculation scoped to the visual level — Generally Available in Power BI May 2026 • uses visual axes and partitions • simplifies running totals, rankings, and percent-of-parent without complex DAX. |