Skip to content

Ola Business Analytics Interview Questions & Answers

Curated interview practice questions with answers. These are practice scenarios, not a verified list of past interview questions.

About Ola hiring for Business Analytics roles

Ola, operated by ANI Technologies, is an Indian ride-hailing platform offering cabs, auto-rickshaws and bike taxis, and it is part of a group that also includes Ola Electric and Krutrim. Its technology and analytics teams work on pricing, dispatch, maps and driver supply. It hires for software engineers, SDETs, business analysts and data scientists.

For Business Analytics roles, this Ola practice set focuses most on SQL for Business Analysis (7), Excel for Business Analysts (6), Power BI and Tableau (6), Stakeholder Communication (4). It has 32 medium, 8 hard questions, so you can start easy and work up to the harder ones.

Company type
Product
Headquarters
Bengaluru, India
Main India offices
Bengaluru

Ola Business Analytics interview process

  1. Online coding assessment
  2. Technical round 1 (DSA)
  3. Technical round 2 (design or case)
  4. Hiring manager round

Typical pattern based on public candidate experiences. Rounds vary by role, team and year.

Solved for OlaStart 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

Your monthly Excel report takes a full day of manual work. How would you automate it?

Save to ▾
Show answer
Map the steps first: which files arrive, what cleaning is done and which outputs are needed. Move the import and cleaning into Power Query so a refresh replaces copy-paste. Base calculations on Excel Tables and PivotTables that update automatically, and keep a fixed template for the output. Use a small macro or Office Script only for the remaining formatting or emailing. Add checks such as row counts and totals so errors surface quickly.
02

Write a SQL query to get each customer's first order date and first order amount.

Save to ▾
Show answer
WITH ordered AS ( SELECT customer_id, order_date, amount, ROW_NUMBER() OVER (PARTITION BY customer_id ORDER BY order_date, order_id) AS rn FROM orders ) SELECT customer_id, order_date AS first_order_date, amount AS first_order_amount FROM ordered WHERE rn = 1;
03

A quick-commerce company wants to expand into Tier-2 cities. What would you analyse before recommending it?

Save to ▾
Show answer
Demand: population density, smartphone and digital payment penetration, average basket size and how often people buy groceries. Supply: dark store rent, rider availability and local sourcing. Unit economics: orders per store per day needed to break even, given lower average order values. Competition: local kirana delivery and other apps. Then propose a pilot in two or three cities with clear success metrics such as orders per day, contribution margin per order and repeat rate before scaling.
04

What is a communication plan in a project and what does it include?

Save to ▾
Show answer
A communication plan defines who needs what information, when, in which format and from whom. It typically lists stakeholders, their information needs, the channel such as status email, standup, steering meeting or dashboard, frequency, owner and escalation path. It prevents both silence and overload, and makes sure decision-makers hear about risks early. A BA usually keeps it updated as stakeholders change.
05

Write a SQL query that shows revenue per region with one column per quarter.

Save to ▾
Show answer
SELECT region, SUM(CASE WHEN EXTRACT(QUARTER FROM order_date) = 1 THEN amount ELSE 0 END) AS q1, SUM(CASE WHEN EXTRACT(QUARTER FROM order_date) = 2 THEN amount ELSE 0 END) AS q2, SUM(CASE WHEN EXTRACT(QUARTER FROM order_date) = 3 THEN amount ELSE 0 END) AS q3, SUM(CASE WHEN EXTRACT(QUARTER FROM order_date) = 4 THEN amount ELSE 0 END) AS q4 FROM orders WHERE EXTRACT(YEAR FROM order_date) = 2026 GROUP BY region;
06

Write a DAX measure that shows each category's percent share of total sales.

Save to ▾
Show answer
Category Share % = DIVIDE( [Total Sales], CALCULATE([Total Sales], ALL('Product'[Category])) ) -- ALLSELECTED instead of ALL respects slicers on the page
07

A stakeholder asks for a detailed report by tomorrow, but it realistically needs a week. What do you do?

Save to ▾
Show answer
Understand the real need first: what decision is it for and what is the minimum that helps tomorrow? Offer a phased answer, such as a quick directional view with the top three numbers tomorrow, clearly labelled with caveats, and the full validated report in a week. Explain the trade-off between speed and accuracy. Confirm the agreed plan in writing so expectations are clear.
08

Tell me about a time you challenged how a metric was defined.

Save to ▾
Show answer
Situation: our team reported 'conversion' as orders divided by sessions, and it looked healthy while revenue was flat. Task: understand the gap. Action: I showed that repeated sessions from bots and app refreshes inflated the denominator inconsistently, and proposed user-level conversion excluding internal and bot traffic. I presented both definitions with a month of data to the product head. Result: the new definition was adopted, and it exposed a checkout drop that the team then fixed.
09

A critical defect is found on the last day of UAT, and the go-live date cannot move. What do you do?

Save to ▾
Show answer
Confirm the impact and reproduce it quickly. Work with development to estimate a fix and its regression effort. Then present options to the business owner with risks: fix and do targeted retesting before go-live, go live with a temporary workaround or manual process, go live with the affected feature switched off, or delay. The decision belongs to the business, documented at the go or no-go meeting. Never hide a critical defect to protect a date.
10

Write a SQL query to find the percentage of orders delivered late in each city.

Save to ▾
Show answer
-- late = delivered after the promised date SELECT city, COUNT(*) AS total_orders, SUM(CASE WHEN delivered_at > promised_at THEN 1 ELSE 0 END) AS late_orders, ROUND(100.0 * SUM(CASE WHEN delivered_at > promised_at THEN 1 ELSE 0 END) / COUNT(*), 2) AS late_pct FROM orders WHERE status = 'DELIVERED' GROUP BY city ORDER BY late_pct DESC;
11

How are OKRs different from KPIs?

Save to ▾
Show answer
KPIs are ongoing health measures of the business, like monthly revenue, churn or on-time delivery, tracked continuously. OKRs are a goal-setting method: an Objective is a qualitative ambition for a quarter, and Key Results are two to four measurable outcomes that show it was achieved. A KPI that is off track often becomes the subject of an OKR, for example 'reduce churn from 5 to 3 percent this quarter'.
12

How do you protect a worksheet or workbook?

Save to ▾
Show answer
Review > Protect Sheet or Workbook with a password, lock cells, hide formulas and allow only selected cells to be edited.
13

A business tester raises a defect, and the developer closes it as 'works as designed'. How do you resolve it?

Save to ▾
Show answer
Go back to the requirement and acceptance criteria. If the system matches the agreed requirement, the developer is right, and the business need is a change request. If the requirement is unclear or the design misread it, it is a defect, and the requirement wording should be fixed. Discuss it in triage with both parties, using examples. Either way, close the loop with the tester so they understand the outcome and keep trusting the process.
14

A business head wants 25 charts on one dashboard page. How do you respond?

Save to ▾
Show answer
Ask what decisions they make weekly and which three to five KPIs drive them. Propose a summary page with those KPIs, trends and one breakdown, then drill-through or separate pages for detail. Show a quick mock-up of both versions so they see the clutter and the load time. Use bookmarks or a field parameter to let them switch views without adding charts. Agree on the layout before building.
15

How do you build a PivotTable to analyse sales by region and product?

Save to ▾
Show answer
Create a table, insert a PivotTable, drag region to rows, product to columns, sales to values, and add slicers for month or channel.
16

Write a DAX measure for a running total of sales by date.

Save to ▾
Show answer
Running Sales = CALCULATE( [Total Sales], FILTER( ALL('Date'[Date]), 'Date'[Date] <= MAX('Date'[Date]) ) ) -- for a yearly reset use TOTALYTD([Total Sales], 'Date'[Date])
17

Write a SQL query to calculate the DAU to MAU stickiness ratio for a month.

Save to ▾
Show answer
WITH daily AS ( SELECT event_date, COUNT(DISTINCT user_id) AS dau FROM events WHERE event_date >= '2026-10-01' AND event_date < '2026-11-01' GROUP BY event_date ), monthly AS ( SELECT COUNT(DISTINCT user_id) AS mau FROM events WHERE event_date >= '2026-10-01' AND event_date < '2026-11-01' ) SELECT ROUND(AVG(d.dau) * 1.0 / MAX(m.mau), 3) AS stickiness FROM daily d CROSS JOIN monthly m;
18

How would you forecast next quarter's sales in Excel?

Save to ▾
Show answer
Use FORECAST.ETS or a trendline on monthly history, check seasonality, compare with a simple moving average and present a range, not a single number.
19

What is Customer Acquisition Cost (CAC) and what is CAC payback period?

Save to ▾
Show answer
CAC is total sales and marketing spend in a period divided by new customers acquired in that period. If you spend 10 lakh and gain 2,000 customers, CAC is 500 rupees. CAC payback period is how many months of gross profit from a customer it takes to recover that CAC. A shorter payback means the business can reinvest faster; many subscription businesses aim for under 12 months.
20

A KPI on your dashboard dropped 40 percent overnight. What are your first steps?

Save to ▾
Show answer
Assume a data problem until proven otherwise, because real businesses rarely move 40 percent in a day. Check whether the refresh completed, whether source row counts look normal, and whether any tracking, pipeline or definition changed. Compare with a raw source query and a related metric, such as orders versus payments. If the data is fine, segment by channel, region and platform to locate the drop, then alert the owners quickly.
21

Write Given-When-Then acceptance criteria for applying a discount coupon at checkout.

Save to ▾
Show answer
Given a cart of 1,200 rupees and a valid coupon SAVE10 with a minimum order of 1,000 rupees, when the user applies it, then 10 percent is deducted and the new total is shown. Given an expired coupon, when applied, then the message 'This coupon has expired' appears and the total is unchanged. Given a cart below the minimum, when applied, then the user is told how much more to add.
22

How do you build a forecast in Excel?

Save to ▾
Show answer
Use historical data with FORECAST.ETS or trend lines, state assumptions, compare against actuals and show best, base and worst scenarios.
23

How would you prioritise 10 features with a limited budget?

Save to ▾
Show answer
Score them with RICE or value-vs-effort, align with goals, consider dependencies and risks, validate with stakeholders, then use MoSCoW for the release plan.
24

How do you find duplicate customers?

Save to ▾
Show answer
SELECT email, COUNT(*) FROM customers GROUP BY email HAVING COUNT(*) > 1;
25

Tell me about a time you built a business case for a project. Was it approved?

Save to ▾
Show answer
Situation: our support team handled order-status queries manually, about 9,000 a month. Task: I was asked to evaluate a self-service tracking page. Action: I measured handling time from ticket data, estimated deflection conservatively at 40 percent, worked with IT on build and run costs and showed best, base and worst cases with payback. Result: leadership approved the base case. Six months after launch, deflection reached 46 percent, and I presented the benefits review to the same committee.
26

You must gather requirements to replace a 15-year-old legacy system with no documentation. How do you approach it?

Save to ▾
Show answer
Combine several sources. Interview and observe users doing real tasks, and review screens, reports and outputs to infer business rules. Analyse the database and logs to see which data and functions are actually used. Work with long-serving staff and IT support for hidden rules and workarounds. Build AS-IS process maps, decide what to keep, drop or improve, and validate the findings with users. Plan data migration requirements early.
27

After joining orders to a payments table, your total revenue doubled. What went wrong?

Save to ▾
Show answer
The join created a fan-out: some orders have more than one payment row, such as split payments or retries, so each order amount is repeated. Check the grain by counting rows per order_id on both sides. Fix it by aggregating payments to one row per order in a CTE before joining, joining on the full key, or summing from the table whose grain matches the metric. Always compare row counts before and after a join.
28

How do you validate data before analysis?

Save to ▾
Show answer
Check row counts against the source, nulls, duplicates on keys, value ranges, date coverage and that totals reconcile with finance reports.
29

What is a cutover plan and a go-live readiness checklist?

Save to ▾
Show answer
A cutover plan is an hour-by-hour runbook for moving from the old system to the new one: freezing old transactions, final data migration, validation checks, configuration, smoke testing, switch-over and a rollback plan with clear decision points. A go-live readiness checklist confirms that UAT is signed off, users are trained, support and hypercare are staffed, data is reconciled, and communications are sent. The go or no-go meeting reviews this checklist before the cutover starts.
30

How would you estimate the market size for an electric scooter in India?

Save to ▾
Show answer
Top-down: two-wheeler market x EV share x addressable segment. Bottom-up: target households x adoption rate x price. Compare both for a sanity check.
31

Write DAX measures for Total Sales, Sales Last Year and Year-over-Year growth percent.

Save to ▾
Show answer
Total Sales = SUM(Sales[Amount]) Sales LY = CALCULATE([Total Sales], SAMEPERIODLASTYEAR('Date'[Date])) YoY % = DIVIDE([Total Sales] - [Sales LY], [Sales LY]) -- needs a marked date table; DIVIDE avoids divide-by-zero errors
32

How would you analyse the declining sales of a retail store?

Save to ▾
Show answer
Break sales into footfall, conversion and average basket, compare with last year and competitors, and check stock, pricing, staffing and local events.
33

Write a SQL query to calculate the repeat purchase rate.

Save to ▾
Show answer
WITH per_customer AS ( SELECT customer_id, COUNT(DISTINCT order_id) AS orders FROM orders GROUP BY customer_id ) SELECT ROUND(100.0 * SUM(CASE WHEN orders >= 2 THEN 1 ELSE 0 END) / COUNT(*), 2) AS repeat_rate_pct FROM per_customer;
34

A Tableau dashboard on a 50 million row data source responds slowly to filters. How do you fix it?

Save to ▾
Show answer
Use an extract with only the needed columns and rows, aggregated to the visible grain where possible. Replace quick filters showing all values with fewer filters, use context filters wisely and avoid 'only relevant values' on large fields. Move complex calculations into the data source, reduce marks per view and the number of sheets per dashboard. Use the Performance Recorder to find the slowest queries and fix those first.
35

Write Excel formulas to find the second-highest sales value and the name of the rep who achieved it.

Save to ▾
Show answer
// second highest value =LARGE(C2:C100, 2) // rep name for that value =INDEX(B2:B100, MATCH(LARGE(C2:C100, 2), C2:C100, 0)) // with ties, SORTBY gives a clean list: =TAKE(SORTBY(B2:C100, C2:C100, -1), 2)
36

After many sprints, project documentation is out of date and new team members are confused. What do you do?

Save to ▾
Show answer
Identify which documents are actually used: usually a product overview, process maps, business rules, data dictionary and integration details. Update those first rather than everything. Make documentation part of the Definition of Done, so a story is not complete until related docs are updated. Keep living documents in a shared wiki with owners and last-reviewed dates, and archive outdated files clearly. Test the result by having a new joiner use it during onboarding.
37

Your analysis contradicts a strongly held belief of the vice president. How do you handle it?

Save to ▾
Show answer
Double-check the data and method first, and ask a peer to review it. Then share it privately with the VP before any group meeting, so they are not surprised in public. Present it neutrally: what we expected, what the data shows, and possible reasons. Invite their context, as they may know factors you missed. Suggest a small test to settle it. Focus on the decision, not on being right.
38

Write a SQL query for Day-7 retention by weekly sign-up cohort.

Save to ▾
Show answer
WITH cohort AS ( SELECT user_id, signup_date, DATE_TRUNC('week', signup_date) AS cohort_week FROM users ), ret AS ( SELECT DISTINCT c.user_id FROM cohort c JOIN events e ON e.user_id = c.user_id AND e.event_date = c.signup_date + INTERVAL '7 day' ) SELECT c.cohort_week, COUNT(*) AS users, ROUND(100.0 * COUNT(r.user_id) / COUNT(*), 1) AS d7_retention_pct FROM cohort c LEFT JOIN ret r ON r.user_id = c.user_id GROUP BY c.cohort_week ORDER BY c.cohort_week;
39

The scheduled refresh failed overnight and leadership reviews the dashboard at 10 am. What do you do?

Save to ▾
Show answer
Check the refresh history error first: expired credentials, gateway offline, source schema change or timeout. Fix the quick cause and trigger a manual refresh. If it cannot be fixed in time, inform the stakeholders early, state the last refreshed date clearly on the report and share the key numbers from a direct query if needed. Afterwards add refresh failure alerts and a data-as-of label so it never surprises anyone.
40

How do you write an effective executive summary for an analysis report?

Save to ▾
Show answer
Put it first and keep it to one page or five lines on a slide. Start with the answer or recommendation, then the two or three key findings that support it, each with a number, then the impact in rupees or percentage, and finally the decision or action needed and by when. Avoid methodology details, which go in the appendix. Test it by asking whether a busy leader could act after reading only this section.

Tips to crack the Ola Business Analytics interview

  • Prepare marketplace cases on driver supply, rider demand and surge pricing in Indian cities.
  • Practise DSA problems on graphs and heaps, which relate to dispatch and route optimisation.
  • Read about Ola Maps and Krutrim AI efforts, which are recent technology focus areas for the group.
  • Keep a one-minute story ready for every project on your CV: problem, your part, tools, result.
  • Practise the hard questions on this page aloud; Ola interviewers usually ask follow-ups on your first answer.

Frequently asked questions

How many rounds are there in the Ola Business Analytics interview?

Candidates usually go through 4 stages: Online coding assessment; Technical round 1 (DSA); Technical round 2 (design or case); Hiring manager round. The exact rounds change with the role, team, location and your experience, so confirm the process with the recruiter.

Which topics should I prepare for the Ola Business Analytics interview?

This practice set leans on SQL for Business Analysis (7), Excel for Business Analysts (6), Power BI and Tableau (6), Stakeholder Communication (4). Revise those first, then practise explaining one or two of your own projects end to end, because most Ola interviewers ask you to walk through real work.

Are these the exact questions asked at Ola?

No. These are curated practice questions that match the skills and difficulty usually tested in product interviews like Ola's. They are not a leaked or verified list of past questions.

Where does Ola hire Business Analytics professionals in India?

Ola has large teams in Bengaluru. Openings and locations change often, so check the Ola careers page and filter by city and experience.

Business Analytics questions for similar companies