Power BI Interview Questions and Answers for Analyst Roles
Practice Power BI interview questions on modeling, DAX, measures, calculated columns, relationships, star schema, filters, dashboard design, performance, and business cases.
By Durgesh Yadav — Senior Data Engineer @ 7-Eleven · Updated 2 Oct 2026. Preparation guidance, not a hiring guarantee.
What Power BI questions come up in analyst interviews?
Power BI interviews test DAX measures (CALCULATE, FILTER, time intelligence), data modelling with star schemas and relationships, Power Query transformations, row-level security, and the difference between calculated columns and measures. Analysts are often asked to explain a dashboard they built and how stakeholders used it.
Power BI is Microsoft's business intelligence tool: you connect it to data, clean the data in Power Query, model it as related tables, write calculations in DAX and publish interactive reports that refresh on a schedule. Teams use it to replace emailed spreadsheets with one report everyone reads. Its parts are Power BI Desktop to build, the Service to share and Mobile to view.
Example: a sales report someone rebuilt in Excel every Monday becomes one Power BI report with a scheduled refresh and a filter per region
Why it is used: it sits inside Microsoft 365 and Azure, which most Indian employers already pay for, and Desktop is free to build in
Why it matters for jobs: Power BI was named in 20.1% of 2,467 data-analyst postings in PrepNPlaced's India Tech Hiring Report (23 August to 27 September 2026), ahead of Tableau at 12.7%
Which Power BI basics do interviewers expect?
Good answers connect visuals to the model behind them. Interviewers often test data modeling, DAX reasoning, filters, relationships, and whether your dashboard helps a stakeholder decide.
Import vs DirectQuery at a practical level
Relationships and filter direction
Measures vs calculated columns
When do you use ALL, ALLSELECTED and ALLEXCEPT inside CALCULATE?
ALL gives a fixed denominator that ignores every slicer on that column. ALLSELECTED is right when the percentages must add to 100 inside whatever the user selected. We keep ALLEXCEPT for clearing a whole table while one column's filter, usually the category we are grouping by, stays put.
Decide which filter the denominator should ignore
Dimension
ALL
ALLSELECTED
ALLEXCEPT
Filters removed
Every filter on the named table or column
The visual's own row and column filters
Every filter on the table except the named columns
Filters kept
Nothing on that column, even a slicer
Slicers, filter pane and cross-filters from other visuals
Only filters on the columns you name
Percent of total under a slicer
Ignores a slicer on that column, rows may not sum to 100
Denominator follows the slicer, rows sum to 100
Denominator keeps the named column's filter
Typical use
Share of grand total, ranking against everything
Share of the current selection, visual totals
Grouping by category while clearing the rest of the table
How are DAX and modeling tested?
Most Power BI interviews become easier when you can explain grain, star schema, measures, filter context, and why a metric changes under slicers.
Create revenue, conversion, and average order value measures
Explain CALCULATE and filter context
Choose measure vs calculated column
DAX hint
A measure is evaluated at query time based on filter context; a calculated column is stored row by row.
Modeling hint
A star schema keeps facts and dimensions clear, making filters and measures easier to reason about.
What do dashboard and stakeholder questions check?
BI interviews often test whether you can ask the right business question, avoid misleading charts, and explain tradeoffs to non-technical users.
Define the decision before building visuals
Use clear labels and consistent metric definitions
Explain refresh, performance, and access limitations
Which answered Power BI questions decide most rounds?
Answered DAX and modeling questions that decide most analyst and BI rounds. Tie every answer back to filter context.
Measures and DAX context
Star schema and relationships
Import vs DirectQuery
Measure vs calculated column
A measure is evaluated at query time under the current filter context and stored as a formula; a calculated column is computed row by row and stored in the model, growing file size. Prefer measures for aggregations.
What does CALCULATE do
CALCULATE evaluates an expression after modifying filter context, for example CALCULATE(SUM(Sales[Amt]), Sales[Region] = "West"). It is the core function behind percent-of-total and time intelligence.
Row context vs filter context
Filter context is the set of filters applied by slicers, rows, and visuals when a measure evaluates; row context is the current row inside a calculated column or an iterator like SUMX. CALCULATE can turn row context into filter context.
Star schema and why it matters
One fact table joined to dimension tables through single-direction relationships keeps measures simple, filters predictable, and performance high, versus a tangled snowflake or one flat table.
Import vs DirectQuery
Import loads data into the model for fast in-memory queries but needs scheduled refresh; DirectQuery queries the source live for freshness at the cost of speed and some DAX limits. Choose by data size and freshness needs.
Year-over-year growth in DAX
Use time intelligence with a marked date table: subtract CALCULATE([Sales], SAMEPERIODLASTYEAR(Dates[Day])) from [Sales] and wrap the ratio in DIVIDE to avoid divide-by-zero errors.
Single vs bidirectional relationship filtering
Single-direction filtering (dimension filters fact) is the safe default. Bidirectional filtering can cause ambiguous or circular paths and slower models, so use it sparingly or replace it with CROSSFILTER inside a measure.
Why is my measure wrong under a slicer
It is almost always filter context: the slicer adds filters the measure must respect or override. Use CALCULATE with ALL or REMOVEFILTERS to control which filters apply, for example when computing percent of total.
Which Power BI interview questions are asked to freshers, and how do you answer them?
Fresher rounds stay close to the report you built: how the data got in, how the tables relate, what a measure is, and why a number changed when a slicer was clicked. The interviewer usually opens your portfolio file or asks you to describe one, so every answer below should end with 'in my project I...'. Six that come first, with answers that pass.
Import or DirectQuery, and which one your project used
Why the model has a date table
What a slicer does to a measure
Measure or calculated column for 'total sales'
Why the relationship arrow points one way
What Power Query did before the data reached the model
Why does the model need a separate date table?
Time intelligence functions (SAMEPERIODLASTYEAR, DATESYTD) need one contiguous date column marked as a date table, and every fact table filters through it, so 'sales this month' and 'targets this month' agree. Without it each fact table carries its own dates and the two never line up on one axis.
What happens to SUM(Sales[Amount]) when I click a region in a slicer?
The slicer adds Region = X to the filter context; the measure recomputes over only those rows. Nothing is stored; it is re-evaluated on every click, which is why it must be a measure and not a column.
Total sales: measure or column?
Measure: Total Sales = SUM(Sales[Amount]). A calculated column would store a value per row and could not respond to slicers as a total. Columns are for row-level attributes such as order year or a price band.
Why does the relationship go from Customer to Sales and not both ways?
Filters flow from the dimension (one side) to the fact (many side). One-directional keeps filter paths unambiguous and fast. Bidirectional is turned on only for a specific need, such as a many-to-many bridge, because it creates ambiguous paths in a bigger model.
What did Power Query do in your project?
Be specific: removed the top three header rows of the export, split a 'City, State' column, changed the amount column from text to decimal, unpivoted twelve month columns into a Month and Value pair, and removed 41 duplicate rows. Then: 'and the steps rerun on every refresh, so the cleaning is not manual.'
How would you show sales this year against last year?
Two measures: Sales LY = CALCULATE([Total Sales], SAMEPERIODLASTYEAR('Calendar'[Day])) and Growth % = DIVIDE([Total Sales] - [Sales LY], [Sales LY]). DIVIDE returns blank instead of an error when last year is zero, which matters for new products.
Power BI interview questions and answers: the DAX scenarios that decide the round
After the basics the interviewer describes a report and asks for the measure, or shows a wrong number and asks why. Filter context is the answer to most of these, and the strongest candidates say which filter they are keeping and which they are removing before they write anything.
Percent of total that still works under a slicer
Running total by month
Distinct customers who bought in both years
Top 5 products and 'Others'
Why the total row does not equal the sum of the rows
Percent of total by region
Pct = DIVIDE([Total Sales], CALCULATE([Total Sales], ALL(Sales[Region]))). ALL on the region column removes only the region filter, so a year slicer still applies to both numerator and denominator and the percentages add to 100 inside the selected year.
Running total
Running Sales = CALCULATE([Total Sales], FILTER(ALL('Calendar'), 'Calendar'[Day] <= MAX('Calendar'[Day]))). ALL on the calendar table lifts the visual's month filter; the FILTER keeps every day up to the current row's last day. Say why ALL('Calendar') and not ALL(Sales).
The total row is wrong
The classic: a measure like AVERAGEX or a ratio evaluated at the total level is not the sum of the rows because the filter context at the total has no product filter. It is not a bug. If the stakeholder wants the sum of the row values, wrap the measure in SUMX(VALUES(Product[Name]), [Measure]).
Customers who bought in both 2025 and 2026
Two virtual tables and an intersect: COUNTROWS(INTERSECT(CALCULATETABLE(VALUES(Sales[CustomerID]), 'Date'[Year] = 2025), CALCULATETABLE(VALUES(Sales[CustomerID]), 'Date'[Year] = 2026))). Interviewers accept a clear explanation of the two sets even if the syntax is slightly off.
Why is the report slow?
In order: a bidirectional relationship or a many-to-many, calculated columns that should be measures, a high-cardinality column in a visual (order id in a table visual), DirectQuery where import would do, and too many visuals on one page. Mention Performance Analyzer as the tool that tells you which.
Question bank
19 interview questions with answers
Real questions from beginner to advanced, each with a concise model answer — practice them, then rehearse live in a mock interview. Every answer is open; collapse any you have already covered.
BeginnerWhat is Power BI and what are its main components?
Power BI is Microsoft's business intelligence tool for connecting to data, modeling it, and building interactive reports. Its main parts are Power BI Desktop (authoring), the Power BI Service (sharing online), and Power BI Mobile for viewing.
BeginnerWhat is DAX?
DAX (Data Analysis Expressions) is the formula language in Power BI used to create measures, calculated columns, and calculated tables. It includes functions for aggregation, filtering, and time intelligence that operate over the data model.
BeginnerWhat is the difference between a measure and a calculated column?
A calculated column is computed row by row and stored in the model, using memory. A measure is computed on the fly at query time based on the current filter context, so it's more efficient for aggregations like totals and ratios. Prefer measures for aggregates.
BeginnerWhat is Power Query and the M language?
Power Query is Power BI's data transformation layer, used to connect, clean, and shape data before it loads into the model. Its steps are recorded in the M language. Transformations here happen before DAX and the data model.
BeginnerWhat is the difference between Import and DirectQuery mode?
Import mode loads a copy of the data into Power BI's in-memory engine for fast performance but needs refreshes. DirectQuery leaves data in the source and queries it live, giving real-time data at the cost of slower interactions and some feature limits.
IntermediateWhat is a star schema and why is it recommended in Power BI?
A star schema has a central fact table (transactions/metrics) linked to surrounding dimension tables (date, product, customer). It's recommended because it makes relationships simple, DAX easier to write, and the model faster than a flat or snowflake design.
IntermediateWhat is the difference between row context and filter context in DAX?
Row context is the current row being evaluated, used in calculated columns and iterators. Filter context is the set of filters applied by visuals, slicers, and CALCULATE. Understanding how they interact is the key to correct DAX.
IntermediateWhat does the CALCULATE function do?
CALCULATE evaluates an expression under a modified filter context. It's the most important DAX function because it lets you add, remove, or change filters — for example, computing sales for a specific region or ignoring a slicer.
IntermediateWhat is the difference between SUM and SUMX?
SUM aggregates a single column directly. SUMX is an iterator that evaluates an expression row by row and then sums the results, so use it when the value depends on multiple columns, like quantity times price.
IntermediateHow do relationships and cardinality work in Power BI?
Relationships connect tables on a key, usually one-to-many from a dimension to a fact table, with a filter direction (single or both). Correct one-to-many relationships let filters flow from dimensions to facts so measures aggregate correctly.
IntermediateWhat is time intelligence in DAX?
Time intelligence functions (TOTALYTD, SAMEPERIODLASTYEAR, DATEADD) compute period-based calculations like year-to-date and year-over-year. They require a marked, continuous date table in the model to work reliably.
IntermediateWhat is the difference between RELATED and RELATEDTABLE?
RELATED pulls a single value from the one-side of a relationship into the many-side (like a lookup). RELATEDTABLE returns the related rows from the many-side and is typically used inside an iterator to aggregate them.
IntermediateWhy should you use a dedicated date table?
A dedicated, continuous date dimension marked as a date table enables time-intelligence functions, ensures no missing dates break calculations, and lets you add useful attributes like fiscal year, quarter, and weekday for consistent reporting.
AdvancedWhat are DAX variables (VAR) and why use them?
VAR stores the result of an expression within a measure so it's computed once and reused. Variables make DAX more readable, avoid recalculating the same logic, and prevent context-transition surprises, improving both clarity and performance.
AdvancedWhat is Row-Level Security (RLS) in Power BI?
RLS restricts the data a user can see by applying DAX filter rules to roles — for example, a regional manager sees only their region. Roles are defined in Desktop and members are assigned in the Service.
AdvancedWhat is context transition in DAX?
Context transition happens when CALCULATE (or a measure reference) turns the current row context into an equivalent filter context. It's why a measure called inside an iterator like SUMX evaluates for the current row.
AdvancedHow do you optimize a slow Power BI report?
Use a star schema, prefer measures over calculated columns, reduce cardinality, remove unused columns and tables, push heavy transformations into Power Query or the source, limit visuals per page, and use variables in DAX to avoid recomputation.
AdvancedWhat is the difference between ALL, ALLEXCEPT, and REMOVEFILTERS?
ALL removes all filters from a table or columns; ALLEXCEPT removes filters except the columns you list; REMOVEFILTERS (the modern equivalent of ALL as a filter modifier) clears filters within CALCULATE. They're used to compute totals or percentages of a whole.
AdvancedWhat does USERELATIONSHIP do?
USERELATIONSHIP activates an inactive relationship for a specific calculation inside CALCULATE — useful when a fact table has multiple date columns (order date, ship date) and you want a measure to use a different one.
By company
Business Analyst interviews that ask these questions
See how this topic shows up in real Business Analyst loops — rounds, difficulty and company-specific questions:
Expect questions on data modeling, DAX measures, calculated columns, relationships, slicers, dashboard design, and performance basics.
What is the difference between a measure and calculated column?
A measure is evaluated based on filter context during analysis; a calculated column is computed row by row and stored in the model.
Should every dashboard use many visuals?
No. A strong dashboard answers a decision clearly. Too many visuals can hide the important metric.
How does SQL help Power BI interviews?
SQL helps you understand joins, grain, filters, and source data quality before building measures and dashboards.
How do I prepare a Power BI project for my resume?
Show the business question, model design, measures, dashboard decisions, and what actions the dashboard supports.
What is the difference between Power BI Desktop and the Power BI Service?
Desktop is the free Windows application where you build: connect to data, shape it in Power Query, model it and design the report. The Service is the cloud side, where you publish that report, share it, schedule its refresh, set row-level security and pin visuals to dashboards. Building costs nothing; sharing through the Service needs a per-user Pro licence or capacity.
What is the difference between a table and a matrix in Power BI?
A table visual lists your fields flat, one row per combination of values, with an optional total at the bottom. A matrix groups data by row and column fields, like an Excel pivot table, with subtotals at each level and drill-down through a hierarchy. Use a table for detail lists and a matrix for summaries across two dimensions.
How can PrepNPlaced help?
Use courses and Open Learning for BI foundations, then practice stakeholder-style explanations in AI Mock Interview.
Next Step
Turn The Guide Into Practice
Use PrepNPlaced tools to turn this learning path into resume proof, targeted practice, and interview-ready explanations.