Menu
CareerGuide 27 of 36

Career guide · Guide 27 of 36

Top 50 Power BI Interview Questions and Answers

Top 50 Power BI interview questions with simple answers for freshers and experienced: DAX, CALCULATE, Power Query, data modelling, RLS, refresh and performance.

  • Intermediate
  • 27 min read
  • Updated Oct 2026
On this page
  1. Question list
  2. Beginner Power BI interview questions (freshers)
  3. Intermediate Power BI and DAX interview questions
  4. Advanced Power BI interview questions (experienced)
  5. How to prepare

These 50 questions cover what Power BI interviews ask data analysts, BI developers and analytics engineers, from freshers to experienced candidates: the basics, DAX (CALCULATE, filter context, time intelligence), Power Query, data modelling, security, the Power BI service and performance. Each answer is written in plain words and gets straight to the point. Power BI models work best as star schemas, so the star schema lesson is useful background.

Question list

Show all 50 questions
  1. What is Power BI?
  2. What are the main components of Power BI?
  3. What is the difference between a report and a dashboard in Power BI?
  4. What is Power Query?
  5. What is DAX?
  6. What is the difference between a measure and a calculated column?
  7. What are the types of data connectivity modes in Power BI?
  8. What is a star schema, and why does Power BI prefer it?
  9. What are relationships and cardinality in Power BI?
  10. What is a semantic model (formerly dataset) in Power BI?
  11. What is a slicer?
  12. What are filters in Power BI, and at what levels can they apply?
  13. What is a workspace in the Power BI service?
  14. How do you refresh data in the Power BI service?
  15. What is the on-premises data gateway?
  16. What visuals would you use for common business questions?
  17. COUNT vs COUNTA vs COUNTROWS vs DISTINCTCOUNT: what is the difference?
  18. What does CALCULATE do?
  19. What is the difference between row context and filter context?
  20. SUM vs SUMX: what is the difference?
  21. FILTER vs CALCULATE filters: when do you use FILTER?
  22. What do ALL, ALLEXCEPT and REMOVEFILTERS do?
  23. How do you calculate year-to-date and previous-year values?
  24. Why do you need a date table, and how do you create one?
  25. What is DIVIDE, and why use it instead of the / operator?
  26. What is RELATED vs RELATEDTABLE?
  27. What are variables in DAX, and why use them?
  28. What is row-level security (RLS)?
  29. What is incremental refresh?
  30. Merge vs append in Power Query: what is the difference?
  31. What is query folding?
  32. What is unpivot, and when do you use it?
  33. What are bookmarks and drill-through?
  34. How would you design a KPI dashboard in Power BI?
  35. What is a calculation group?
  36. What are field parameters?
  37. How do you share Power BI content with others?
  38. How do you improve the performance of a slow Power BI report?
  39. How does the VertiPaq engine store data, and why does it matter?
  40. What is context transition?
  41. How do you handle many-to-many relationships?
  42. When would you use bidirectional cross-filtering, and what are the risks?
  43. What are aggregations in Power BI?
  44. How do you implement CI/CD and version control for Power BI?
  45. What is the difference between Pro, Premium Per User and capacity licences?
  46. How do you test that a Power BI report shows correct numbers?
  47. A measure shows the wrong total in a table. Why, and how do you fix it?
  48. How would you build a report on a very large dataset (hundreds of millions of rows)?
  49. How do you manage and govern Power BI in an organisation?
  50. What is Direct Lake mode?

Beginner Power BI interview questions (freshers)

1. What is Power BI?

Beginner · Very Common · Basics

Power BI is Microsoft’s business intelligence tool for connecting to data, shaping it, modelling it and building interactive reports and dashboards. You build reports in Power BI Desktop, publish them to the Power BI service in the cloud to share with others, and view them on the web or the mobile app. It includes Power Query for cleaning data, a data model with relationships, the DAX language for calculations, and many visuals.

2. What are the main components of Power BI?

Beginner · Very Common · Basics

Power BI Desktop is the free Windows app for building reports. The Power BI service is the cloud platform where reports are published, shared, refreshed and organised in workspaces. Power BI Mobile shows reports on phones. Other parts include the on-premises data gateway, which lets the service reach data inside a company network, and Power BI Report Server for publishing reports on-premises. Inside Desktop, Power Query, the data model and DAX are the core building blocks.

3. What is the difference between a report and a dashboard in Power BI?

Beginner · Very Common · Basics

A report has one or more pages of interactive visuals built from one semantic model, and you can filter, slice and drill into it. A dashboard is a single page in the Power BI service made of tiles pinned from one or more reports, used for a quick overview; clicking a tile opens the underlying report. Reports are built in Desktop or the service; dashboards exist only in the service.

4. What is Power Query?

Beginner · Very Common · Power Query

Power Query is the data preparation tool inside Power BI (and Excel). You use it to connect to sources and clean and reshape data before it is loaded: remove columns, change types, filter rows, split columns, merge and append tables, and unpivot. Each action is recorded as a step written in the M language, so the same steps run again on every refresh. It is the right place for row-level cleaning; calculations that respond to filters belong in DAX.

5. What is DAX?

Beginner · Very Common · DAX

DAX (Data Analysis Expressions) is the formula language used in Power BI’s data model to create measures, calculated columns and calculated tables. It looks a little like Excel formulas, but works on whole tables and columns and responds to the filters a user selects in a report. Common functions include SUM, CALCULATE, FILTER, RELATED, DIVIDE and time-intelligence functions such as TOTALYTD.

A first measure looks like this:

Total Sales = SUM ( Sales[Amount] )

Placed in a table by region, this one measure shows each region’s sales, because DAX recalculates it for the filters on every row. Learning how those filters work is the key to DAX.

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

Beginner · Very Common · DAX

A calculated column is computed once per row when data is refreshed and stored in the model, like a normal column; use it when you need a value to filter, group or slice by. A measure is computed at query time for whatever filters are active in a visual, and is not stored; use it for totals, ratios and other aggregations. Prefer measures for numbers shown in visuals, because they use less memory and respond to filters.

7. What are the types of data connectivity modes in Power BI?

Beginner · Very Common · Modelling

Import mode loads a copy of the data into Power BI’s in-memory engine, which gives the fastest reports but needs scheduled refresh. DirectQuery sends queries to the source every time a visual loads, so data is current but reports are slower and some features are limited. Live connection connects to an existing published semantic model or Analysis Services model. Composite models mix import and DirectQuery tables, and Direct Lake mode reads Delta tables in Microsoft Fabric.

8. What is a star schema, and why does Power BI prefer it?

Beginner · Very Common · Modelling

A star schema has fact tables with numbers (sales, orders) in the middle and dimension tables (date, product, customer) around them, joined by keys. Power BI’s engine and DAX work best with this shape: filters flow cleanly from dimensions to facts, measures are simpler, and models are smaller and faster. Avoid one wide flat table or many tables joined in chains. See star schema.

A common mistake is importing one big flat table from a spreadsheet. It works at first, but measures become harder to write and the model grows quickly; splitting it into facts and dimensions usually fixes both.

9. What are relationships and cardinality in Power BI?

Beginner · Very Common · Modelling

A relationship links two tables on a column, so filters on one table affect the other. Cardinality describes how rows match: one-to-many is the normal case, such as one product to many sales rows; one-to-one is rare; many-to-many is possible but needs care, because it can give unexpected totals. Each relationship also has a cross-filter direction, single or both, which controls which way filters flow.

Keep relationships simple: one-to-many, single direction, from dimension to fact. Most strange totals in Power BI reports come from relationships that break this pattern without a clear reason.

10. What is a semantic model (formerly dataset) in Power BI?

Beginner · Common · Basics

A semantic model is the data model behind reports: the tables loaded or connected, the relationships between them, the measures and calculated columns, and settings such as security roles and refresh. In the service it is published as its own item, separate from reports, so several reports can reuse one model. Building one well-designed, shared semantic model keeps numbers consistent across a team’s reports. It used to be called a dataset.

11. What is a slicer?

Beginner · Common · Visuals

A slicer is a visual that lets report users filter other visuals on the page by choosing values, such as a year, region or product category. Slicers can show lists, dropdowns, date ranges or numeric ranges. You can sync slicers across pages and control which visuals each slicer affects with Edit interactions. They are the most common way to make a report interactive for business users.

Too many slicers make a page confusing; three or four well-chosen ones, such as date, region and product category, are usually enough. Put them in the same place on every page so users always know where to look.

12. What are filters in Power BI, and at what levels can they apply?

Beginner · Common · Visuals

Filters limit the data a visual shows. In the filter pane, you can apply them at the visual level (one visual), page level (all visuals on a page) or report level (every page). Users also filter through slicers and by clicking on visuals (cross-filtering). Drill-through filters pass a selected value to a detail page. Filters in the pane can be locked or hidden from users.

Filters set in the filter pane are easy to forget, so show important ones on the page, for example in a subtitle such as “Online orders only”.

13. What is a workspace in the Power BI service?

Beginner · Common · Service

A workspace is a shared area in the Power BI service where a team stores and manages reports, semantic models, dashboards and other items. Members get roles (Admin, Member, Contributor or Viewer) that control what they can do. Teams usually develop in one workspace and share finished content through a Power BI app or by giving viewer access, and may use separate workspaces for development, test and production.

Keep personal experiments out of shared workspaces, and give each workspace a clear owner and purpose so content does not pile up.

14. How do you refresh data in the Power BI service?

Beginner · Common · Service

For import-mode semantic models, you set a scheduled refresh in the service, up to a fixed number of times per day depending on the licence, or refresh on demand. Cloud sources need stored credentials; sources inside a company network need an on-premises data gateway. Large tables can use incremental refresh, which reloads only recent data. DirectQuery and live connections do not need refresh because they query the source.

Check refresh history after each change: a failed refresh means users quietly see old data, so set up failure notifications to the right person.

15. What is the on-premises data gateway?

Beginner · Common · Service

The on-premises data gateway is software installed inside a company network that lets the Power BI service reach data sources that are not on the internet, such as a SQL Server in the company’s data centre. The service sends refresh or query requests to the gateway, which connects to the source and returns the data securely. Standard mode is shared by many users and services; personal mode is for one user.

16. What visuals would you use for common business questions?

Beginner · Common · Visuals

  • Line chart: trends over time.
  • Bar or column chart: comparing categories.
  • Card or KPI visual: one key number.
  • Table or matrix: detailed values.
  • Map: geography.
  • Scatter chart: the relationship between two measures. Use pie and donut charts sparingly, only for a few parts of a whole. Choose the visual that answers the question fastest, not the most decorative one.

Intermediate Power BI and DAX interview questions

17. COUNT vs COUNTA vs COUNTROWS vs DISTINCTCOUNT: what is the difference?

Intermediate · Common · DAX

COUNT counts non-blank values in a column of numbers or dates, and COUNTA counts non-blank values in a column of any type. COUNTROWS counts the rows of a table, such as COUNTROWS(Sales) for the number of sales lines, and is the clearest way to count rows. DISTINCTCOUNT counts the unique values in a column, such as DISTINCTCOUNT(Sales[CustomerID]) for the number of buying customers. Choose based on whether you count rows, values or unique values.

18. What does CALCULATE do?

Intermediate · Very Common · DAX

CALCULATE evaluates an expression in a modified filter context. You give it a measure or expression and one or more filters, and it adds, replaces or removes filters before calculating. For example, CALCULATE([Total Sales], ‘Product’[Colour] = “Red”) returns sales for red products whatever colour filter the visual has. It also turns row context into filter context. It is the most important function in DAX.

Example:

Red Sales = CALCULATE ( [Total Sales], 'Product'[Colour] = "Red" )

In a table by year, this shows red-product sales for each year: the year filter from the table stays, and the colour filter is added.

19. What is the difference between row context and filter context?

Intermediate · Very Common · DAX

Row context means “the current row”: it exists in calculated columns and inside iterator functions such as SUMX, and lets you refer to that row’s values. Filter context is the set of filters active when a measure is calculated, coming from slicers, visual rows and columns, and CALCULATE. Row context does not filter other tables by itself; CALCULATE converts it into filter context, which is called context transition.

A simple test: a calculated column such as Sales[Amount] * 2 works row by row (row context), while a measure such as SUM ( Sales[Amount] ) is calculated once for each cell of a visual using its filters (filter context).

20. SUM vs SUMX: what is the difference?

Intermediate · Very Common · DAX

SUM adds up the values of one column. SUMX is an iterator: it goes row by row through a table, evaluates an expression for each row, and then adds the results. Use SUMX when you need a per-row calculation first, such as SUMX(Sales, Sales[Quantity] * Sales[Price]). Other iterators such as AVERAGEX, MAXX and COUNTX follow the same pattern.

Example:

Revenue = SUMX ( Sales, Sales[Quantity] * Sales[Unit Price] )

This multiplies quantity by price on every row and then adds the results. SUM ( Sales[Quantity] ) * SUM ( Sales[Unit Price] ) would multiply two totals together, which gives the wrong answer.

21. FILTER vs CALCULATE filters: when do you use FILTER?

Intermediate · Common · DAX

Simple filter arguments in CALCULATE, such as ‘Product’[Colour] = “Red”, are efficient and should be the default. Use FILTER when the condition needs a measure or a comparison between columns, such as FILTER(ALL(Customer), [Total Sales] > 10000). FILTER iterates over a table, so filtering a whole large fact table can be slow; filter a dimension or a single column instead whenever possible.

Example of a case that needs FILTER, counting big customers:

Big Customers = COUNTROWS ( FILTER ( VALUES ( Customer[CustomerID] ), [Total Sales] > 10000 ) )

22. What do ALL, ALLEXCEPT and REMOVEFILTERS do?

Intermediate · Very Common · DAX

They remove filters. ALL(table or column) ignores all filters on it, which is used for grand totals and percent-of-total measures. ALLEXCEPT removes all filters on a table except the columns you list. REMOVEFILTERS does the same as ALL when used as a CALCULATE filter, with a clearer name. For example: Sales % = DIVIDE([Total Sales], CALCULATE([Total Sales], ALL(‘Product’))).

A common use is a percent-of-total measure:

Sales % of All Products =
DIVIDE ( [Total Sales], CALCULATE ( [Total Sales], REMOVEFILTERS ( 'Product' ) ) )

In a table by product, each row shows its share of total sales, while other filters, such as year, still apply.

23. How do you calculate year-to-date and previous-year values?

Intermediate · Very Common · DAX

Use time-intelligence functions with a proper date table. Year-to-date: TOTALYTD([Total Sales], ‘Date’[Date]) or CALCULATE([Total Sales], DATESYTD(‘Date’[Date])). Previous year: CALCULATE([Total Sales], SAMEPERIODLASTYEAR(‘Date’[Date])). Year-over-year growth is then DIVIDE([Total Sales] - [Sales PY], [Sales PY]). These functions need a continuous date table marked as a date table, and they follow the filters in the visual, so the same measure shows the right year-to-date for any month or product a user selects.

Example:

Sales YTD = TOTALYTD ( [Total Sales], 'Date'[Date] )
Sales PY  = CALCULATE ( [Total Sales], SAMEPERIODLASTYEAR ( 'Date'[Date] ) )
Sales YoY % = DIVIDE ( [Total Sales] - [Sales PY], [Sales PY] )

Put these next to each other in a table by month to show the trend clearly.

24. Why do you need a date table, and how do you create one?

Intermediate · Very Common · Modelling

Time-intelligence functions need a table with one row for every date in the range, with no gaps, related to the fact tables’ date columns. It also holds columns such as year, quarter, month name and week, so every report groups dates the same way. Create it in Power Query or with DAX, such as CALENDAR or CALENDARAUTO plus extra columns, then mark it as a date table. Turn off auto date/time to avoid hidden date tables.

25. What is DIVIDE, and why use it instead of the / operator?

Intermediate · Common · DAX

DIVIDE(numerator, denominator, alternate result) divides safely: when the denominator is zero or blank, it returns blank or the alternate value instead of an error or infinity. Ratio measures such as margin % or growth % often meet zero denominators in some filter combinations, so DIVIDE avoids errors in visuals and is the recommended practice.

Example:

Margin % = DIVIDE ( [Profit], [Total Sales] )

For a product with no sales, this shows a blank instead of an error, and the visual stays clean. Use the third argument when you want a specific value, such as 0, instead of a blank.

Intermediate · Common · DAX

RELATED fetches a value from the “one” side of a relationship into a row on the “many” side, for example RELATED(‘Product’[Category]) in a Sales calculated column. RELATEDTABLE goes the other way: from a row on the “one” side, it returns the related rows on the “many” side as a table, for example COUNTROWS(RELATEDTABLE(Sales)) in a Product column. Both need an existing relationship and row context.

In most models you can avoid both by writing measures instead of calculated columns, which keeps the model smaller.

27. What are variables in DAX, and why use them?

Intermediate · Common · DAX

VAR stores the result of an expression with a name, and RETURN gives the final result: VAR Sales = [Total Sales] VAR PY = [Sales PY] RETURN DIVIDE(Sales - PY, PY). Variables make measures easier to read and debug, and they can improve performance because each variable is calculated once. Note that a variable is evaluated where it is defined, so later CALCULATE filters do not change its value.

You can also return a variable temporarily while debugging, to check an intermediate value step by step.

28. What is row-level security (RLS)?

Intermediate · Very Common · Security

Row-level security limits which rows of data a user can see in a report. You create roles in Power BI Desktop with DAX filter rules, such as ‘Region’[Manager Email] = USERPRINCIPALNAME() for dynamic security, then assign users or groups to the roles in the service. Everyone uses the same report, but each person sees only their data. Test roles with View as before publishing.

Remember that RLS applies to viewers, not to workspace admins, members and contributors, who can see all data. Test that every role sees exactly the rows it should, including users who belong to no role.

29. What is incremental refresh?

Intermediate · Common · Service

Incremental refresh splits a large table into date-based partitions and refreshes only the recent ones, such as the last 7 days, while keeping older history unchanged. You set it up with RangeStart and RangeEnd parameters in Power Query and a policy on the table. It makes refreshes faster and more reliable, and reduces load on the source. The source query must filter on a date column so the filter can be pushed to the source.

30. Merge vs append in Power Query: what is the difference?

Intermediate · Very Common · Power Query

Merge joins two tables side by side on matching key columns, like a SQL join, adding columns from the second table; you choose a join type such as left outer or inner. Append stacks tables on top of each other, like SQL UNION ALL, adding rows; the columns should match by name. Use merge to bring in lookup data, and append to combine files or tables with the same structure, such as monthly exports.

31. What is query folding?

Intermediate · Very Common · Power Query

Query folding is when Power Query translates your transformation steps into a query that the source runs itself, such as one SQL statement, instead of loading all the data and transforming it in Power BI. It makes refreshes much faster and is needed for incremental refresh. Steps such as filtering, removing columns and grouping usually fold for databases; some steps break folding, so keep foldable steps first. Right-click a step and check View Native Query.

32. What is unpivot, and when do you use it?

Intermediate · Common · Power Query

Unpivot turns columns into rows. A table with one column per month (Jan, Feb, Mar) becomes a table with a Month column and a Value column, one row per product per month. Power BI models and visuals work much better with this tall shape, because you can filter, sort and calculate by month. Use Unpivot Other Columns so new months added to the source are handled automatically.

It is one of the most common fixes for data that comes from spreadsheets designed for people to read rather than for analysis.

33. What are bookmarks and drill-through?

Intermediate · Common · Visuals

Bookmarks save the current state of a report page: filters, slicers, visible visuals and sorting. With buttons, they let you build guided views, toggles between charts, or reset-filter buttons. Drill-through lets a user right-click a data point, such as one customer, and jump to a detail page filtered to that value. Both help keep summary pages simple while still offering detail.

Keep the number of bookmarks small and name them clearly, because they are easy to break when visuals are changed later.

34. How would you design a KPI dashboard in Power BI?

Intermediate · Very Common · Design

Start from the decisions it supports and the few KPIs that matter, agreed with users and defined exactly. Put the key numbers at the top as cards with comparison to target or last period, trends below, and detail through drill-through rather than crowding the page. Use consistent colours and formats, a clear title and the last refresh date. Test it with real users and check that the numbers match the source.

35. What is a calculation group?

Intermediate · Common · DAX

A calculation group is a set of reusable calculation items that modify any measure, such as YTD, previous year and year-over-year %. Instead of writing three time-intelligence versions of every measure, you write them once as calculation items using SELECTEDMEASURE(), and users pick the item in a slicer or matrix. It keeps models small and consistent. They are created in model view in Desktop or with external tools such as Tabular Editor.

36. What are field parameters?

Intermediate · Common · Visuals

Field parameters let report users choose which measure or dimension a visual shows, for example switching a chart between Sales, Profit and Quantity, or between Region and Product, using a slicer. Power BI creates a small table behind the scenes listing the options. They reduce the number of near-identical visuals and pages and make reports more flexible.

For example, one line chart with a field parameter can replace three separate charts for sales, profit and orders, making the page simpler and faster to load. Users simply pick the measure they want from a slicer next to the chart.

37. How do you share Power BI content with others?

Intermediate · Common · Service

Publish to a workspace, then pick the right way to share:

  • Workspace access for people who build and edit with you.
  • A Power BI app for a polished set of reports to a wide audience.
  • A report link for one report.
  • Embedding in Teams, SharePoint or another application. Viewers usually need a Pro or Premium Per User licence, unless the content is in a workspace on a capacity that allows free viewers.

Advanced Power BI interview questions (experienced)

38. How do you improve the performance of a slow Power BI report?

Advanced · Very Common · Performance

Measure first with Performance Analyzer to find whether time goes to DAX queries or visual rendering. Then fix the model: use a star schema, remove unused columns, reduce high-cardinality columns such as timestamps, and use correct data types. Optimise DAX: avoid FILTER over whole fact tables, use variables, and replace calculated columns with measures where possible. Reduce the number of visuals per page. For large data, use aggregations or incremental refresh.

39. How does the VertiPaq engine store data, and why does it matter?

Advanced · Common · Performance

In import mode, Power BI stores each column separately, compressed with dictionary and run-length encoding. Columns with few distinct values compress very well; columns with many unique values, such as IDs, timestamps or free text, use most of the memory. So model size depends more on the number of distinct values than on the number of rows. Splitting date and time, rounding decimals and removing unneeded columns can shrink a model dramatically.

40. What is context transition?

Advanced · Very Common · DAX

Context transition happens when CALCULATE runs inside a row context, such as in a calculated column or an iterator like SUMX: the current row’s values become filters. This is why calling a measure inside SUMX over Customers calculates that measure for each customer. It is powerful but can be slow and surprising when the table has duplicate rows, because all identical rows are filtered together.

Example: in a calculated column on the Customer table, [Total Sales] returns each customer’s own sales, because the measure has a hidden CALCULATE that turns the current customer row into a filter.

41. How do you handle many-to-many relationships?

Advanced · Common · Modelling

Prefer a bridge table: for example, accounts and customers linked through an AccountCustomer table, with one-to-many relationships from each dimension to the bridge. Power BI also supports direct many-to-many relationships, which are convenient but can give totals that do not add up, because a fact row may be counted under several values. Be explicit about the expected totals, test them, and explain the behaviour to users.

Before choosing, ask the business how they expect the numbers to add up, because that decides the right model.

Learn more: Bridge Tables, Many-to-Many Relationships and Hierarchies

42. When would you use bidirectional cross-filtering, and what are the risks?

Advanced · Common · Modelling

Bidirectional filtering lets filters flow both ways across a relationship, which is sometimes needed for many-to-many models or to show only dimension values that have facts. Risks: ambiguous filter paths, slower queries and confusing results. Prefer single-direction relationships, and use CROSSFILTER inside specific measures when you need both directions for one calculation only.

A good rule is to leave every relationship single-direction unless you can explain exactly why one needs both directions. Example of the safer, measure-level approach:

Customers Who Bought =
CALCULATE ( DISTINCTCOUNT ( Customer[CustomerID] ), CROSSFILTER ( Sales[CustomerID], Customer[CustomerID], BOTH ) )

43. What are aggregations in Power BI?

Advanced · Common · Performance

Aggregations add a smaller summary table, such as sales by day and product, alongside a large detail table, often in DirectQuery. When a visual asks for data at the summary level, Power BI answers from the fast summary table; when it needs detail, it goes to the detail table. Users see one model. This makes very large datasets fast without importing all the detail.

Check that the common visuals actually hit the aggregation table, using Performance Analyzer or DAX query tools, otherwise users gain nothing.

44. How do you implement CI/CD and version control for Power BI?

Advanced · Common · Service

Save reports as Power BI Projects (PBIP), which store the report and model as text files that can be kept in Git and reviewed. Use separate development, test and production workspaces and promote content with deployment pipelines, changing data source parameters per stage. Microsoft Fabric’s Git integration can connect workspaces to a repository. Automate checks such as best-practice rules on the model before promoting.

Even without full automation, saving reports as PBIP files in Git gives you history, reviews and the ability to undo a bad change, which is a big step up from sharing .pbix files.

45. What is the difference between Pro, Premium Per User and capacity licences?

Advanced · Common · Licensing

Power BI Pro is a per-user licence to publish and share content with other licensed users. Premium Per User adds larger models, more refreshes and advanced features for each licensed user. Capacity licences (Fabric capacity) give an organisation dedicated resources, larger models and, at the required size, let free users view content. Licensing details change, so check Microsoft’s current pages before giving exact limits.

In interviews, it is enough to explain which licence is needed to publish, which to view and when a capacity makes sense for a large audience.

46. How do you test that a Power BI report shows correct numbers?

Advanced · Very Common · Quality

Reconcile key measures against the source system or an agreed report for a few periods and segments, using SQL queries. Check totals and subtotals behave as expected, especially with many-to-many relationships and non-additive measures like averages and ratios. Test with filters, empty periods and RLS roles. Document measure definitions so business users agree what each number means, and recheck after model changes.

A good habit is a small “reconciliation page” or saved SQL queries for the key numbers, so anyone can recheck them after a change.

47. A measure shows the wrong total in a table. Why, and how do you fix it?

Advanced · Very Common · DAX

The total row is calculated in its own filter context, not by adding the visible rows. Measures with IF logic, ratios or minimum and maximum values often give totals that do not equal the sum of rows. If the business wants the sum of the rows, iterate explicitly: SUMX(VALUES(‘Customer’[Customer]), [My Measure]). Decide with users which total is correct, and make the measure follow that rule.

Example:

Bonus Total = SUMX ( VALUES ( Employee[EmployeeID] ), [Bonus] )

This calculates the bonus for each employee and adds them up, so the total row matches the rows above it.

48. How would you build a report on a very large dataset (hundreds of millions of rows)?

Advanced · Common · Design

Model it as a star schema and import only the columns needed. Use incremental refresh to keep refreshes small, and aggregations or summary tables for the common high-level views. Consider DirectQuery or Direct Lake for the detail if import becomes too large, and push heavy transformations upstream to the data warehouse. Optimise column cardinality and test performance with realistic data volumes.

Also ask whether users really need row-level detail in the report; often a daily or weekly summary answers their questions, with a separate detail report for the rare cases that need it.

49. How do you manage and govern Power BI in an organisation?

Advanced · Common · Governance

Define who can create workspaces and publish, and use separate workspaces for development and production. Promote shared, certified semantic models so teams reuse the same definitions instead of building copies. Apply sensitivity labels, RLS and access reviews. Monitor usage and refresh failures from the admin tools, and document KPIs in one place. Good governance keeps the numbers consistent and the platform manageable.

Start small: a few certified models for the most important metrics, clear owners and a simple publishing process work better than a large rulebook nobody follows.

50. What is Direct Lake mode?

Advanced · Common · Fabric

Direct Lake is a connection mode for semantic models in Microsoft Fabric. The model reads Delta tables in OneLake directly into the Power BI engine when needed, without importing a copy through scheduled refresh or sending SQL queries like DirectQuery. It aims to combine import-like speed with near-real-time data. It has limits, and some queries fall back to DirectQuery, so check the current documentation for its requirements.

In an interview, place it next to import and DirectQuery, and explain when you would choose each.

How to prepare

  1. Build one report end to end on a real dataset: clean it in Power Query, model it as a star schema with a date table, write 10 measures (totals, ratios, YTD, previous year, % of total) and publish it.
  2. Practise DAX out loud: CALCULATE, filter vs row context, ALL and REMOVEFILTERS, iterators and time intelligence are asked in almost every interview.
  3. Prepare a performance story: a slow report you made faster, with what you measured and what you changed.
  4. Know the service: workspaces, apps, refresh, gateways and row-level security.
  5. Explain your numbers: be ready to say how you checked that a report matches the source.

By , Data Engineer and Founder of DataDank · Last reviewed Oct 2026 · Power BI as documented by Microsoft in October 2026. Licensing names and limits change often; the answers describe concepts and point to Microsoft's pages for current limits.

Search
Filter by type