Duplicate Measures
What It Detects
Section titled “What It Detects”This flag identifies DAX measures that have identical expressions — either within the same semantic model or across different models in the scanned workspaces.
Why It Matters
Section titled “Why It Matters”- Inconsistency risk — If one copy of a measure is updated and the other is not, reports will show conflicting numbers for the same metric.
- Maintenance overhead — Fixing a bug or changing a business rule requires finding and updating every duplicate.
- Governance issue — Indicates a lack of shared datasets or a central measures layer, leading to metric sprawl.
Trigger Conditions
Section titled “Trigger Conditions”Two measures are flagged as duplicates when:
- Expression match — The DAX expressions are identical after normalization (whitespace, line breaks, and casing are ignored).
- The measures reside in different tables, different datasets, or both.
Measures with the same name but different expressions are not flagged by this check (that would be a naming conflict, not a duplicate).
Threshold: 100% normalized expression match.
Output
Section titled “Output”| Field | Description |
|---|---|
measureName | Measure name |
expressionHash | Hash of the normalized DAX expression |
datasetA | First dataset containing the measure |
tableA | Home table in dataset A |
datasetB | Second dataset (or same dataset, different table) |
tableB | Home table in dataset B |
workspaceName | Workspace(s) involved |
Notes and Edge Cases
Section titled “Notes and Edge Cases”- Cross-dataset duplicates — The most common and impactful case. Consider migrating to a shared dataset model where one “golden” dataset holds the canonical measures.
- Trivial measures — Very simple measures like
SUM(Table[Column])will frequently match across models. Use the expression length or complexity as a filter when triaging — prioritize longer, more complex duplicates.
Related Flags
Section titled “Related Flags”- Duplicate Tables — Often accompanies duplicate measures: the same table loaded into multiple models, each with copies of the same measures.
- Unused Measures — One copy of a duplicated measure may be unused.