Home › Blog › Power BI interview questions: DAX, data modelling and performance

Power BI interview questions: DAX, data modelling and performance

Power BI interviews test three layers: shaping data with Power Query, modelling it into a clean star schema with correct relationships, and writing DAX measures that behave correctly in every filter context. Expect questions on measures versus calculated columns, CALCULATE and context transition, time intelligence, row-level security, storage modes and performance. A practical task — build a small report and a few measures — is common.

Fifteen common Power BI interview questions

  1. What are the main components of Power BI?
  2. What does Power Query do? Name some common transformations.
  3. Why use a star schema in Power BI?
  4. Relationship cardinality and cross-filter direction?
  5. Calculated column versus measure?
  6. Row context versus filter context?
  7. What does CALCULATE do?
  8. What is context transition?
  9. How do you write a year-over-year measure?
  10. Why do you need a date table?
  11. Import versus DirectQuery versus composite models?
  12. How do you implement row-level security?
  13. How do you optimise a slow report?
  14. What are bookmarks and drill-through?
  15. Walk me through a report you built and its impact.

Modelling

DAX essentials

ConceptInterview-ready answer
Calculated columnComputed row by row at refresh, stored in the model; use for slicing or grouping
MeasureComputed at query time in the current filter context; use for aggregations
Row contextIterating over rows, as in calculated columns or X-functions such as SUMX
Filter contextThe filters from visuals, slicers and relationships applied to a calculation
CALCULATEEvaluates an expression in a modified filter context
Context transitionCALCULATE converts row context into equivalent filter context

Year-over-year growth: Sales LY = CALCULATE([Total Sales], SAMEPERIODLASTYEAR('Date'[Date])), then YoY % = DIVIDE([Total Sales] − [Sales LY], [Sales LY]). Using DIVIDE avoids divide-by-zero errors. Variables (VAR … RETURN) make complex measures readable and efficient.

Storage modes and security

Import mode loads data into the in-memory engine for the fastest queries, refreshed on a schedule. DirectQuery queries the source live, suited to very large or real-time data at some cost in speed and DAX flexibility. Composite models mix both, often with aggregations. Row-level security defines roles with DAX filters — for example, a region filter based on USERPRINCIPALNAME() matched against a user-to-region table — and is tested with “view as role” before publishing.

Performance

A modelling scenario to rehearse

“Sales by product shows the same total on every row.” This almost always means the relationship between the product dimension and the sales fact is missing, inactive or filtering in the wrong direction, or the visual uses a product field from the fact table instead of the dimension. Check the model view first, then the measure's filter context. Another classic: a total that doesn't equal the sum of its rows, which is usually correct behaviour for non-additive measures such as ratios, explained by filter context at the total level.

Being able to diagnose these quickly is one of the clearest signs of real Power BI experience, and interviewers use them precisely for that reason.

Practising

Answer these out loud, in two minutes or less each, and expect a follow-up on every claim. A free AI interview assistant such as CoPilot Interview can run Power BI questions as a mock interview built from your résumé and score each answer. Build a star-schema model with a date table and write total, year-over-year and running-total measures, explaining the filter context of each. See also Tableau interview questions and Excel interview questions.

Disclosure: CoPilot Interview is our product, so weigh what we say about it accordingly. Everything else on this page applies whichever tool you use, or none.

Frequently asked questions

What is the difference between a measure and a calculated column?

A calculated column is computed row by row at refresh and stored in the model; a measure is computed at query time in the current filter context. Use measures for aggregations.

What does CALCULATE do in DAX?

It evaluates an expression in a modified filter context, adding, removing or replacing filters, and triggers context transition when used in a row context.

Why should Power BI models use a star schema?

Star schemas make relationships unambiguous, simplify DAX, improve compression and query performance, and make models easier for others to understand.

Import or DirectQuery?

Import gives the best performance and full DAX capability with scheduled refresh. DirectQuery keeps data at the source for very large or real-time needs, with slower queries and some limitations.

Practise on real interview questions

Run 145 real interview questions across 10 tracks, answer out loud and see a structured answer to compare with yours. Free, no signup.

Try a practice question