Skip to content
Free tool · no signup

Format your DAX — and find what is slowing it down.

Paste a measure. You get clean formatting plus a review of the patterns that quietly cost performance: the same measure evaluated five times, SUMX wrapped around FILTER, division that breaks on zero, hard-coded dates. The code is parsed in this tab and never uploaded.

Your DAX

Shortcut: ⌘/Ctrl + Enter to run.

Formatted
// Your formatted DAX will appear here
Checks Waiting for input

Want the checks turned into working measures?

The free Time Intelligence Starter Pack ships a marked date table and twelve measures that already avoid every trap this tool flags.

Get the pack →

How the check works

The tool tokenises DAX — strings, comments and quoted table names included — then applies rules that can be decided from the syntax alone. It is deliberately conservative: when the intent depends on runtime data, it stays silent instead of guessing.

What does it check for?

Repeated evaluation of the same measure, nested CALCULATE, IFERROR around aggregates, SUMX/AVERAGEX over FILTER, COUNTROWS(FILTER(...)), bare division without DIVIDE, EARLIER, SUMMARIZE used to add columns, hard-coded DATE() literals, FILTER(ALL(...)), AND()/OR() functions, and deep nesting.

Is my DAX uploaded anywhere?

No. The formatter and every rule are plain JavaScript running in this tab, with no backend call and no account. You can turn off your network and reload the page to confirm. The site itself uses cookie-consent based analytics for page traffic — your formula is not part of that.

Does a clean result mean my measure is correct?

No. These are syntactic heuristics, not a semantic analyser. A measure can pass every rule and still return the wrong number. Treat the output as a second pair of eyes, not as a test suite.

Why not just use DAX Formatter?

DAX Formatter, by SQLBI, is excellent at formatting and is the industry standard — use it if that is all you need. This tool adds a review layer aimed at learning: every issue links back to the tutorial that explains the pattern.