Login to manage your account

Please enter a valid email address.
Forgot Password?
Please enter a valid password.
OR

Don't have an account yet? Sign up

How do relationships work in Power BI, and what problems do bidirectional relationships cause?

Relationships connect tables so filtering one filters the other. Each has a cardinality and a cross-filter direction.

Cardinality:

  • One-to-many — the standard and desirable case, from a dimension to a fact.
  • Many-to-one — the same thing described from the other side.
  • One-to-one — usually a sign two tables should be merged.
  • Many-to-many — supported, but it creates ambiguity and is often a modelling smell. The cleaner solution is usually a bridge table.

Cross-filter direction is single by default: the one side filters the many side. That is normally what you want — Product filters Sales, not the reverse.

Why bidirectional relationships are dangerous:

  • Ambiguity. With several tables and bidirectional filters, more than one filter path can exist between two tables, and the engine either refuses the model or picks a path you did not intend.
  • Wrong totals that look plausible — the worst kind of error, because nobody notices.
  • Performance cost, since the engine must propagate filters both ways.

The better approach: keep relationships single-direction and use CROSSFILTER inside a specific measure when you genuinely need bidirectional behaviour. That confines the effect to one calculation instead of the whole model.

Note: Only one relationship between two tables can be active. Use USERELATIONSHIP inside CALCULATE to activate an alternative — the standard pattern for a fact table with both an order date and a ship date.

All Power BI interview questions

Login to manage your account

Please enter a valid email address.
Forgot Password?
Please enter a valid password.
OR

Don't have an account yet? Sign up as