DAX function
ISINSCOPE — DAX function reference
True if a column is a grouping level.
Syntax
dax
ISINSCOPE(<column>)
Examples
dax
ISINSCOPE(Sales[Region])
→ true / false
ISINSCOPE checks matrix/hierarchy row grouping levels, so check the most granular level first.
dax
SWITCH(
TRUE(),
ISINSCOPE(Product[SubCategory]), "Sub-category level",
ISINSCOPE(Product[Category]), "Category level",
"Grand total"
)→ Labels each level of a Category/SubCategory hierarchy in a matrix
dax
IF(ISINSCOPE('Date'[MonthName]), [MoM Growth %], BLANK())→ Only shows month-over-month growth when the matrix is expanded to the month level
Common mistakes & gotchas
- The reliable way to detect the current level in a matrix or hierarchy.
- ISINSCOPE only reflects grouping levels in a visual's row/column axes (or an explicit table function like SUMMARIZE) — it says nothing about slicers or filters, a common confusion with ISFILTERED.
- At the SubCategory level, ISINSCOPE(Product[Category]) is also TRUE, so order matters in a SWITCH(TRUE()) chain — check the most granular level first.
Related DAX functions
From Filter context