Skip to content

Power BI Interview Questions in Mumbai

36 practice questions with answers for Power BI interviews in Mumbai.

Power BI jobs in Mumbai

Mumbai is India's financial capital, so banks, fintechs, insurers, media and consulting firms drive much of the hiring. Data and QA interviews often include domain questions on payments, risk, trading or customer analytics.

Below are 36 questions that match the mix of service, product and domain employers hiring power bi developers in Mumbai.

Solved for MumbaiStart practicing
3 QUESTIONS FREESign up to unlock the full question bank and track your progress.Unlock every question and answer, then continue practising company-wise and package-wise.
3 questions free Unlock the rest in seconds
01

Business users keep asking for edits directly in production reports. How do you set up a better process?

Save to ▾
Show answer
I would set up separate Development, Test and Production workspaces with a deployment pipeline, store PBIP files in Git, and route requests through a simple backlog. Changes are built in Dev, reviewed by a key user in Test and deployed to Production on a release schedule. Users consume through an app, so production stays stable and changes are traceable.
02

When would you use a custom visual and what are the risks?

Save to ▾
Show answer
Custom visuals from AppSource add chart types not built in, such as Gantt charts, sankey diagrams or advanced KPI cards. Risks include performance issues, limited support, export and accessibility gaps, and data security, since some visuals may call external services. Prefer certified visuals, check organisational policy, since admins can restrict them, and use built-in visuals where they meet the need.
03

How do you handle a fiscal year in time intelligence functions?

Save to ▾
Show answer
Functions like TOTALYTD and DATESYTD accept a year-end date argument, so for an Indian fiscal year ending 31 March use TOTALYTD([Sales], 'Date'[Date], "31/3"). Add fiscal year, quarter and month columns to the date table for slicing. For complex calendars such as 4-4-5 retail weeks, standard functions do not work, and you write custom logic using fiscal period columns. Newer calendar-based time intelligence also supports custom calendars.
04

What modelling practices reduce Power BI model size?

Save to ▾
Show answer
Remove unused columns and rows, avoid high-cardinality columns like GUIDs and datetime with seconds by splitting date and time or rounding, use integer surrogate keys, prefer measures over calculated columns, turn off Auto date/time, and choose the right data types, such as fixed decimal. Load only the history users need, and summarise data where detail is not required.
05

What are the most useful table functions in DAX?

Save to ▾
Show answer
Key table functions include FILTER, ALL, VALUES, DISTINCT, SUMMARIZE and SUMMARIZECOLUMNS for grouping, ADDCOLUMNS to add calculated columns, TOPN for top rows, CROSSJOIN, UNION, EXCEPT, INTERSECT, GENERATESERIES and TREATAS for virtual relationships. They return tables used inside iterators, CALCULATE filters or calculated tables. ADDCOLUMNS over SUMMARIZE is a common pattern for reliable grouped results.
06

What are Import, DirectQuery and Live Connection modes?

Save to ▾
Show answer
Import loads a compressed copy of data into the in-memory VertiPaq engine, giving the fastest queries but requiring refresh. DirectQuery sends queries to the source at view time, so data is current but performance depends on the source and some DAX is limited. Live Connection connects a report to an existing semantic model or Analysis Services model without its own model. Composite models mix Import and DirectQuery tables.
07

Write a measure for percentage of grand total sales.

Save to ▾
Show answer
Sales % of Total = DIVIDE( [Total Sales], CALCULATE([Total Sales], REMOVEFILTERS('Product')) ) This gives each product's share of total across all products. Use ALLSELECTED('Product') instead if the denominator should respect slicer selections on products.
08

Users complain the report page is cluttered with 22 visuals. How do you redesign it?

Save to ▾
Show answer
I would ask which decisions the page supports and keep only visuals that answer those questions. Then group related KPIs into a top row of cards, keep two or three main charts, and move details to drill-through or tooltip pages. Slicers can move into a collapsible panel using bookmarks. Fewer visuals also make the page load faster.
09

The total row of a table shows a different value than the sum of rows. Is this a bug?

Save to ▾
Show answer
Usually not. A measure's total is calculated in the total's own filter context, not by adding the visible rows. For non-additive measures like averages, distinct counts or ratios this differs from the row sum. If business wants the sum of rows, I write it explicitly with SUMX over the row values, for example SUMX(VALUES('Product'[Product]), [My Measure]).
10

What is cross-filter direction and why is bi-directional filtering risky?

Save to ▾
Show answer
Cross-filter direction controls which way filters travel across a relationship. Single direction, from the one side to the many side, is the default and safest. Bi-directional lets the fact table filter the dimension too, which can be useful for slicers showing only relevant values, but it can cause ambiguous paths, unexpected results and slower queries. Prefer single direction and use CROSSFILTER inside specific measures when needed.
11

What is the difference between Group By in Power Query and summarising in DAX?

Save to ▾
Show answer
Group By in Power Query aggregates rows at refresh time and stores only the summarised table, reducing model size, which is useful when detail is never needed. Summarising in DAX through measures keeps detail in the model and aggregates dynamically for any filter at query time. Use Power Query grouping for fixed summaries such as monthly snapshots, and DAX measures when users need flexible slicing.
12

What is the relationship between Power BI and Microsoft Fabric?

Save to ▾
Show answer
Microsoft Fabric is Microsoft's unified analytics platform that includes data engineering, data factory, data warehousing, real-time analytics and Power BI as its reporting layer. Power BI workspaces can live on Fabric capacity and use items such as lakehouses and warehouses in OneLake. Direct Lake mode lets semantic models read Delta tables in OneLake directly without a full import, combining fresh data with near-import speed.
13

Each regional manager must see only their region, and the CEO must see everything. How do you implement this?

Save to ▾
Show answer
I would build dynamic RLS with a security table of Email and Region, related to the Region dimension, and a role filter Security[Email] = USERPRINCIPALNAME(). The CEO and other full-access users get an 'All' flag handled in the rule, or are placed in a separate role with no filter. I would test with View as role in Desktop and in the Service before publishing the app.
14

What is a dataflow and how is it different from Power Query in Desktop?

Save to ▾
Show answer
A dataflow runs Power Query transformations in the Power BI Service and stores the result in the cloud, so multiple semantic models can reuse the same cleaned tables. Desktop Power Query logic lives inside one model only. Dataflows Gen2 in Fabric can also write output to lakehouses or warehouses. Dataflows centralise preparation logic, reduce duplicate source load and separate data prep from modelling.
15

Why can too many visuals on a page slow down a report?

Save to ▾
Show answer
Each visual sends at least one DAX query when the page loads or when filters change, and visuals render in the browser. A page with 30 visuals, especially complex tables and custom visuals, sends many queries in parallel, competing for capacity and causing long load times. Reducing visuals, combining cards into one multi-row card or using tooltips and drill-through pages improves speed.
16

How do you test row-level security?

Save to ▾
Show answer
In Desktop use Modeling, View as, select a role and optionally Other user with an email to simulate dynamic RLS, and check visuals show only expected rows. In the Service open the semantic model's Security settings, select a role and use Test as role. Test with real sample users from different regions and a user with no mapping, who should see no data, and confirm totals match expectations.
17

Tell me about a time you improved the performance of a slow report.

Save to ▾
Show answer
Situation: a sales report on DirectQuery took over 30 seconds per page and users had stopped opening it. Task: get pages under 5 seconds. Action: I added an Import aggregation table at day and store level, set dimensions to Dual, reduced the main page from 18 to 9 visuals and rewrote two FILTER-heavy measures. Result: page load fell to about 3 seconds and weekly active users doubled.
18

What are active and inactive relationships?

Save to ▾
Show answer
Only one active relationship can exist between two tables along a filter path; additional relationships become inactive and appear as dashed lines. For example, Sales may have OrderDate and ShipDate both linked to Date, with OrderDate active. An inactive relationship is used only inside a measure with USERELATIONSHIP, such as CALCULATE([Sales], USERELATIONSHIP(Sales[ShipDate], 'Date'[Date])).
19

What is object-level security?

Save to ▾
Show answer
Object-level security hides entire tables or columns from specific roles, so users in that role cannot see or query them, for example hiding a Salary column from non-HR users. It is configured with Tabular Editor or similar external tools on the model's roles. Unlike RLS, which filters rows, OLS removes metadata access. Visuals using a secured object show an error for restricted users.
20

What is an on-premises data gateway and when is it needed?

Save to ▾
Show answer
The on-premises data gateway is software installed on a machine inside the company network that securely connects the Power BI Service to on-premises sources such as SQL Server, file shares or Oracle. It is needed for scheduled refresh and DirectQuery to those sources. Standard mode supports many users and is centrally managed; personal mode is for a single user. Cloud sources usually do not need a gateway.
21

Rewrite a slow measure to use variables and avoid repeated calculation.

Save to ▾
Show answer
Before: Growth = IF([Sales PY] = 0, BLANK(), ([Total Sales] - [Sales PY]) / [Sales PY]) After: Growth = VAR cur = [Total Sales] VAR py = [Sales PY] RETURN DIVIDE(cur - py, py) The previous year measure is now evaluated once instead of three times, and DIVIDE handles zero safely.
22

What are paginated reports and when would you use them?

Save to ▾
Show answer
Paginated reports, built with Power BI Report Builder, are pixel-perfect, print-ready reports that can span many pages, such as invoices, statements or regulatory reports with long tables. They are ideal when users need exact layout, export to PDF or Excel, or detailed row-level listings. Interactive Power BI reports are better for exploration. Paginated reports can run in the Service with Pro, PPU or Fabric capacity.
23

What is query folding and why does it matter?

Save to ▾
Show answer
Query folding is when Power Query translates transformation steps into a native source query, such as SQL, so the source does the work and only the result is loaded. It makes refreshes much faster and is required for incremental refresh and efficient DirectQuery. Steps like filtering, removing columns and grouping usually fold on SQL sources, while some custom M functions or adding an index column can break folding.
24

How do you explain a technical limitation to a business user who wants something impossible?

Save to ▾
Show answer
I acknowledge the goal, explain the limitation in simple terms and offer an alternative that meets most of the need. For example, when a user wanted live updates every second on a DirectQuery report over a slow system, I explained the load it would create and offered a 15-minute refresh plus an alert for threshold breaches. They accepted because the key decision was covered.
25

Write a running total measure.

Save to ▾
Show answer
Running Total = VAR maxDate = MAX('Date'[Date]) RETURN CALCULATE( [Total Sales], 'Date'[Date] <= maxDate, REMOVEFILTERS('Date') ) REMOVEFILTERS clears the current period filter so all earlier dates are included. In a visual-only scenario, the visual calculation RUNNINGSUM is simpler.
26

What are variables in DAX and why use them?

Save to ▾
Show answer
VAR defines a named value inside an expression and RETURN gives the final result. Variables make measures easier to read, avoid repeating the same calculation, which improves performance, and help debugging because you can return an intermediate variable. A variable is evaluated once in the context where it is defined, so its value does not change if later CALCULATE filters are applied.
27

Tell me about a time you found a wrong number in a published report.

Save to ▾
Show answer
Situation: a regional head noticed our margin report did not match finance. Task: find and fix it quickly. Action: I compared numbers at product level, found returns were double-subtracted because a measure used both a net amount column and a returns table. I fixed the measure, added a reconciliation page against finance totals and informed users. Result: numbers matched to the rupee and the reconciliation check became standard.
28

Your calculated columns have made the model huge. What do you do?

Save to ▾
Show answer
I would move simple row-level logic into Power Query or the source SQL, where it compresses better and can fold, and replace aggregations stored as columns with measures. High-cardinality columns such as concatenated keys or precise timestamps should be removed or split. Then check model size with VertiPaq Analyzer in DAX Studio to confirm which columns used the most memory.
29

How do you handle errors in Power Query without failing the whole refresh?

Save to ▾
Show answer
Use Keep Errors on a copy of the query to inspect the bad rows, then fix the cause, such as wrong data types or invalid dates. Replace Errors can substitute a value, and in M try ... otherwise catches errors per value: = Table.AddColumn(Source, "AmountNum", each try Number.From([Amount]) otherwise null, type nullable number) Log error rows to a separate query so they can be reviewed rather than silently dropped.
30

What is a role-playing dimension and how do you handle it?

Save to ▾
Show answer
A role-playing dimension is one dimension used in several roles, such as Date acting as Order Date, Ship Date and Delivery Date. Options are one Date table with one active and other inactive relationships used through USERELATIONSHIP in measures, or separate copies of the date table for each role so users can slice by each date independently. The second is easier for users but increases model size slightly.
31

Write an M query that filters rows, removes columns and changes types.

Save to ▾
Show answer
let Source = Sql.Database("server", "SalesDB"), Orders = Source{[Schema="dbo", Item="Orders"]}[Data], Filtered = Table.SelectRows(Orders, each [OrderDate] >= #date(2024, 1, 1)), Kept = Table.SelectColumns(Filtered, {"OrderID", "OrderDate", "CustomerID", "Amount"}), Typed = Table.TransformColumnTypes(Kept, {{"Amount", Currency.Type}, {"OrderDate", type date}}) in Typed All these steps fold to SQL on a database source.
32

Executives want a one-page story of quarterly performance. How do you structure it?

Save to ▾
Show answer
I would start with three to five headline KPIs versus target and last year at the top, then a trend chart showing the quarter's movement, then a breakdown by region or product showing what drove the change, and finally a short text box or smart narrative stating key takeaways and actions. Each element answers the next natural question, and details live on drill-through pages.
33

Totals look inflated after adding a second fact table. What could be wrong?

Save to ▾
Show answer
Likely a relationship is joining at the wrong grain or creating a many-to-many path, so rows get duplicated in filtering, or a bi-directional relationship is letting one fact filter another unexpectedly. I would check the relationships, keys and cardinality, make filters flow from shared dimensions only, and verify a measure against a known total in the source system using a simple table visual.
34

Create a calculated column that categorises customers by their lifetime sales.

Save to ▾
Show answer
Customer Band = VAR s = CALCULATE(SUM(Sales[Amount])) RETURN SWITCH(TRUE(), s >= 500000, "Platinum", s >= 100000, "Gold", s > 0, "Silver", "No Purchase") This is a column on the Customer table; CALCULATE triggers context transition so each row gets its own customer's sales.
35

What are deployment pipelines?

Save to ▾
Show answer
Deployment pipelines move content through stages, typically Development, Test and Production workspaces. Creators deploy reports and semantic models from one stage to the next, compare differences, and use deployment rules to change data source connections or parameters for each stage. This supports controlled releases and testing before users see changes. They work alongside Git integration for version control in Fabric workspaces.
36

What does the Best Practice Analyzer do?

Save to ▾
Show answer
Best Practice Analyzer, in Tabular Editor and also available in Fabric notebooks through semantic link labs, scans a semantic model against a set of rules, such as avoiding bi-directional relationships, hiding foreign keys, not summarising numeric IDs, using DIVIDE, and setting format strings. It lists violations with their severity so teams can fix them before release. Rules can be customised to match team standards.

Companies with offices in Mumbai (9)

Frequently asked questions

Which companies hire Power BI professionals in Mumbai?

Companies with large offices in Mumbai include TCS, Accenture, Capgemini, Deloitte, KPMG, PwC, LTIMindtree, HDFC Bank, Fractal Analytics. Use their company pages below to practise employer-specific sets.

Are Power BI interviews in Mumbai different from other cities?

The questions depend more on the company than the city. Mumbai's mix of employers decides the style: Data and QA interviews often include domain questions on payments, risk, trading or customer analytics

How do I find Power BI jobs in Mumbai?

Shortlist companies with Mumbai offices, keep your CV focused on Power BI projects, apply on company career pages and job portals with the Mumbai filter, and practise the questions on this page before each interview.