Settings
Configure tenant connections and DAX complexity thresholds in the Soterre PBI Analyzer settings page.
Overview
The Settings page (gear icon in the top navigation bar) lets you manage two things:
- Tenant Connections — Add, edit, or remove Power BI Service connections
- DAX Thresholds — Customize how the Complex DAX flags score measure and column expressions
Tenant Configuration
This is where you add your Power BI Service connections. Each tenant requires:
- Tenant ID, Client ID, Client Secret — Azure AD service principal credentials
- Metrics Workspace ID and Metrics Dataset ID — optional, for Capacity Monitoring
For step-by-step instructions, see Add a New Tenant.
For setting up the service principal itself, see Set Up Power BI Service Credentials.
DAX Thresholds
These thresholds control how the Complex DAX Measures and Complex DAX Columns flags score expressions.
For each measure or calculated column, the analyzer checks every metric against its threshold. If the value exceeds the threshold, penalty points are added. If it's below — 0 points. The final complexity score is the sum of all penalties.
Severity Levels
| Score | Severity | Result |
|---|---|---|
| < 6 | Low | Not flagged |
| 6 – 13 | Medium | Yellow flag |
| ≥ 14 | High | Red flag |
Threshold Settings
| Setting | Default | What It Controls |
|---|---|---|
| Length (chars) | 900 | Penalizes expressions longer than this character count |
| Length (lines) | 25 | Penalizes expressions with more lines than this |
| Paren depth max | 6 | Penalizes expressions with parentheses nested deeper than this |
| Branch count | 4 | Penalizes expressions with more IF/SWITCH branches than this |
| CALCULATE count | 3 | Penalizes expressions with more CALCULATE calls than this |
| Iterator count | 3 | Penalizes expressions with more iterator functions (SUMX, AVERAGEX, MAXX, etc.) than this |
| Virtual table count | 2 | Penalizes expressions with more virtual table functions (SUMMARIZE, ADDCOLUMNS, FILTER, etc.) than this |
| No-VAR length | 900 | If the expression exceeds this length and uses no VAR statements, a readability penalty is added |
How to Tune
- Too many flags? Increase the thresholds — this makes the analyzer more lenient.
- Not enough flags? Decrease the thresholds — this makes scoring stricter.
- Specific issue? Adjust only the relevant metric. For example, if you want to allow deep nesting but flag long expressions, increase Paren depth max and decrease Length (chars).
Threshold changes apply immediately to the next analysis run.