20 questions · sample answers

Data Analyst interview questions and answers

Data analyst interviews check three things: can you pull the right data with SQL and Excel, can you reason with statistics without fooling yourself, and can you turn numbers into a clear recommendation for a manager. Expect SQL problems, a case question about a metric that moved, and questions on dashboards you have built. Practise the 20 questions below out loud, compare your answers with the samples, and prepare the follow-ups.

Most data analyst hiring includes an online test on SQL, Excel and aptitude, a technical round with live SQL or a case study, sometimes a take-home dataset to analyse and present, and a final HR or hiring-manager round.

Last updated

Data Analyst interview questions and answers
Round
Level

20 of 20 questions shown

Role and technical questions

What is the difference between WHERE and HAVING in SQL?

Role Fresher

What they’re checking: Whether you understand the order in which SQL clauses run, which decides where a filter must go and prevents wrong totals in reports.

Sample answer

WHERE filters individual rows before grouping, and HAVING filters groups after GROUP BY and aggregation. So to find cities with more than 100 orders placed in March, I would put the date condition in WHERE, since it applies to each order row, then GROUP BY city, and put COUNT(*) greater than 100 in HAVING, since the count only exists after grouping. You cannot use an aggregate like SUM in WHERE. Putting row filters in WHERE is also faster, because fewer rows reach the grouping step.

Likely follow-ups
  • What is the logical order of execution of a SELECT query?
  • Can you use a column alias in WHERE?

Explain the different SQL joins. What does a LEFT JOIN return when there is no match?

Role Fresher

What they’re checking: Whether you can combine tables without silently losing or duplicating rows, the most common source of wrong numbers in analyst work.

Sample answer

An INNER JOIN returns only rows that match in both tables. A LEFT JOIN returns every row from the left table, and where there is no match the right table’s columns come back as NULL. RIGHT JOIN is the mirror, and FULL OUTER JOIN keeps unmatched rows from both sides. I use LEFT JOIN a lot to find gaps, for example customers LEFT JOIN orders WHERE order_id IS NULL gives customers who never ordered. One trap: if the right table has several rows per key, a join multiplies rows, so I check row counts before and after every join.

Likely follow-ups
  • What happens if you filter the right table in WHERE instead of ON?
  • What is a self join used for?

How would you find the top three products by revenue in each category?

Role

What they’re checking: Whether you know window functions and the differences between ROW_NUMBER, RANK and DENSE_RANK, which come up in almost every analyst SQL round.

Sample answer

I would first sum revenue per product and category in a CTE. Then I would add DENSE_RANK() OVER (PARTITION BY category ORDER BY revenue DESC) as rnk, and in the outer query keep rows where rnk is 3 or less. The choice of function matters when there are ties. ROW_NUMBER gives unique numbers, so tied products get split arbitrarily. RANK gives ties the same rank but skips the next numbers, like 1, 1, 3. DENSE_RANK gives 1, 1, 2 with no gaps. I would ask the business whether tied products should both appear, and pick the function accordingly.

Likely follow-ups
  • How would you calculate a running total?
  • How would you compare each month with the previous month?

How do you handle missing values and outliers in a dataset?

Role

What they’re checking: Whether you investigate why data is missing or extreme before changing it, rather than blindly deleting rows or filling with averages.

Sample answer

First I find out why values are missing. If a delivery date is blank because the order was cancelled, that is meaningful and I would not fill it. If data is missing at random and it is a small share, I may drop those rows. Otherwise I fill with the median for skewed numbers, or a clear Unknown category for text, and I note it in the report. For outliers, I use a box plot or the IQR rule to spot them, then check the source. A salary of 10 crore might be a typo in paise. Real extremes I keep, but I may report the median instead of the mean.

Likely follow-ups
  • What is the IQR rule?
  • When would you not remove an outlier?

Daily orders dropped by 20 per cent yesterday. How would you investigate?

Role Experienced

What they’re checking: Your structured problem-solving on a metric change: ruling out data issues, segmenting, checking the funnel and external causes before drawing conclusions.

Sample answer

First I would check the data itself: did the pipeline load fully, did any tracking or definitions change. If the drop is real, I compare with the same weekday last week, since orders are seasonal by day. Then I segment: by platform, app version, city, payment method and new versus returning users. If the drop is only on Android after a release, it is probably a bug. I would also walk the funnel from visits to add-to-cart to payment, to see where people fell off. Finally I check outside factors like a holiday, a competitor sale or a payment gateway outage.

Likely follow-ups
  • What if every segment dropped equally?
  • How would you set up an alert for this?

VLOOKUP, INDEX-MATCH or XLOOKUP: which do you use in Excel, and why?

Role Fresher

What they’re checking: Practical Excel skill, since many analyst roles still run on spreadsheets, and whether you know the limitations that cause silent errors.

Sample answer

VLOOKUP only looks to the right of the lookup column, breaks if someone inserts a column because the index is a fixed number, and defaults to approximate match unless I set the last argument to FALSE, which causes silent wrong results. INDEX-MATCH fixes these: it can look left and does not break when columns move. XLOOKUP, where available, is simplest: exact match by default, looks in any direction and has a built-in value for not found. I use XLOOKUP when the team’s Excel version supports it, and INDEX-MATCH otherwise. For big joins I would move to Power Query or SQL.

Likely follow-ups
  • How would you summarise sales by region and month?
  • What is Power Query used for?

When would you report the median instead of the mean?

Role

What they’re checking: Basic statistical judgement: whether you know how skew and outliers distort averages, and choose the summary that tells the business the truth.

Sample answer

The mean is pulled by extreme values, and the median is not. So for skewed data like salaries, order values, house prices or delivery times, I report the median, and often the mean too, because the gap between them is informative. For example, if average order value is 1,800 rupees but the median is 900, a few bulk buyers are lifting the average and a typical customer spends much less. For roughly symmetric data, like heights or test scores, the mean is fine and easier to use in further calculations. I also show percentiles, such as the 90th, for things like delivery times.

Likely follow-ups
  • What is standard deviation telling you?
  • When would you use the mode?

How would you design and analyse an A/B test for a new checkout button?

Role Experienced

What they’re checking: Whether you understand experiment design, sample size, significance and the common mistakes such as peeking early or testing many metrics at once.

Sample answer

I would define one primary metric up front, say checkout conversion rate, plus guardrails like average order value. Users are randomly split, and assignment is sticky so each user sees one version. I calculate the sample size needed from the current conversion rate and the smallest lift worth detecting, then run for full weeks to cover weekday patterns. I do not stop early when results look good, because peeking inflates false positives. At the end I use a two-proportion test. A p-value below 0.05 means a difference this large would be unlikely if the button had no effect. I report the confidence interval too.

Likely follow-ups
  • What if the test is significant but the lift is tiny?
  • What is a Type I error?

How do you design a dashboard for a sales head?

Role

What they’re checking: Whether you start from the user’s decisions, choose the right charts and keep dashboards simple, rather than cramming in every available metric.

Sample answer

I start by asking the sales head which decisions the dashboard should support, for example which regions need attention this week. Then I agree on metric definitions, like whether revenue is booked or collected. The top row shows four or five KPI cards: revenue against target, orders, average deal size and conversion rate, each with change versus last period. Below that, a line chart for the trend, a bar chart for regions sorted by gap to target, and a table for drill-down. I avoid pie charts with many slices. In Power BI I add slicers for region and month, and I schedule a daily refresh.

Likely follow-ups
  • How do you make sure people actually use the dashboard?
  • Line chart or bar chart: when do you use each?

Explain the difference between correlation and causation with an example.

Role

What they’re checking: Whether you avoid the most common analytical mistake in business decisions, and know how to get closer to proving cause.

Sample answer

Correlation means two things move together. Causation means one actually drives the other. For example, I found that customers who used our app’s wishlist spent more per year. The marketing team wanted to push everyone to use wishlists. But more engaged shoppers probably both use wishlists and spend more, so engagement is a confounder. To test cause, the best route is an experiment: randomly prompt some users to try the wishlist and compare spending with a control group. If an experiment is not possible, I compare similar users, matched on past spending and visits, before and after they start using it.

Likely follow-ups
  • What is a confounding variable?
  • Can you ever prove causation without an experiment?

How do you make sure your numbers are correct before sharing a report?

Role

What they’re checking: Your quality-control habits, because one wrong number shared with leadership can damage trust in all of an analyst’s future work.

Sample answer

I run a fixed set of checks. I compare totals with a trusted source, such as finance’s monthly revenue figure, and investigate any gap above a small tolerance. I check row counts after every join to catch duplicates, and look for NULLs and impossible values like negative quantities. I sanity-check trends against last week and last month, since a sudden jump usually means a data issue. I write down the definitions and filters I used at the top of the report. For anything going to senior leaders, I ask a colleague to review the SQL, and I do the same for them.

Likely follow-ups
  • What would you do if finance’s number did not match yours?
  • How do you document your queries?

Behavioural questions

Tell me about a time your analysis contradicted what a stakeholder believed.

Behavioural

What they’re checking: Whether you can hold your ground with evidence, present bad news tactfully and keep the relationship, instead of bending results to please people.

Sample answer

Our regional manager believed a discount campaign had driven a spike in sales and wanted to repeat it every month. When I analysed it, sales had risen equally in regions without the discount, because the spike matched the start of the wedding season. I did not send a blunt email. I met him first, showed the comparison chart of discount and non-discount regions, and asked what else could explain it. He saw the pattern himself. We agreed to run the next discount in only half the regions as a test. It showed a small lift, and he now asks for test designs before campaigns.

Likely follow-ups
  • What if he had rejected your analysis?
  • How do you present bad news in data?

Tell me about a time you found an error in a report you had already shared.

Behavioural Experienced

What they’re checking: Integrity and speed in correcting mistakes, and whether you fixed the process so it cannot recur, rather than hoping nobody noticed.

Sample answer

Two days after sending a monthly retention report, I noticed my query counted test accounts created by the QA team, which inflated active users in one city. I fixed the query the same morning, measured the impact, which changed that city’s retention by about four points, and emailed everyone on the original list with the corrected numbers and a one-line explanation. I called the city manager directly because he had quoted the number in a meeting. Then I added a filter for internal accounts to our shared base table so no one else would hit it.

Likely follow-ups
  • How did your manager react?
  • What checks did you add afterwards?

Tell me about an analysis from your college project or internship that led to a decision.

Behavioural Fresher

What they’re checking: Whether you can show the full analyst loop, from question to data to recommendation, even without formal job experience.

Sample answer

During my internship at a mid-size retail chain, the store operations team asked why one store had high inventory write-offs. I pulled six months of sales and stock data into Excel and then SQL, and grouped write-offs by product category. Almost half came from dairy products, and they peaked on Mondays. Delivery was scheduled on Saturdays, but Sunday sales were lower than the order assumed. I recommended splitting the dairy delivery into Saturday and Monday. The manager tried it for a month and dairy write-offs in that store fell by roughly a third.

Likely follow-ups
  • What tools did you use?
  • What would you have done with more time?

Tell me about a time you explained a complex analysis to a non-technical manager.

Behavioural

What they’re checking: Whether you can simplify without distorting, leading with the answer and the action rather than the method.

Sample answer

I had built a churn analysis using logistic regression to find which customers were likely to cancel their subscription. The operations manager did not need coefficients. I opened with the answer: customers who raise two or more support tickets in their first month are about three times as likely to cancel. Then one chart showing that, and one recommendation: call these customers in week two. I kept the model details in an appendix for anyone curious. She approved a callback pilot the same week, and I tracked cancellations for the called group against a similar group that was not called.

Likely follow-ups
  • How do you decide what to leave out?
  • What happened in the pilot?

Tell me about a time you automated a manual reporting process.

Behavioural Experienced

What they’re checking: Whether you look for ways to save time and reduce errors, and can build something reliable that others can maintain.

Sample answer

Every Monday, two people in our team spent about five hours copying data from three systems into an Excel file for the weekly business review. I wrote SQL queries for each source, combined them in a Python script with pandas, and loaded the output into a Power BI report that refreshed automatically each morning. I added simple checks that emailed me if row counts dropped sharply. I documented the steps and trained a teammate to maintain it. The Monday work dropped to a quick review of about thirty minutes, and copy-paste errors disappeared.

Likely follow-ups
  • What would happen if a source system changed?
  • How did you get access to the source data?

Tell me about a time you had to deliver analysis quickly with messy data.

Behavioural

What they’re checking: Whether you can prioritise, be transparent about data limitations and still give a useful answer under time pressure.

Sample answer

Our head of sales needed a region-wise view of lost deals for a board meeting the next afternoon. The CRM data had duplicate accounts and free-text loss reasons. I focused on what the decision needed: loss value by region and the top reasons. I removed duplicates by matching on GST number, and grouped the free-text reasons into six categories with keyword rules, reviewing a sample by hand. I sent the summary by the morning with a clear note that about eight per cent of reasons were unclassified. After the meeting I cleaned the data properly and proposed a dropdown for loss reasons in the CRM.

Likely follow-ups
  • How did you decide what was good enough?
  • Did the CRM change happen?

HR round questions

What salary are you expecting for this data analyst role?

HR Fresher

What they’re checking: Whether you have a realistic, researched expectation for an entry-level role and can discuss it without appearing inflexible.

Sample answer

As a fresher with an internship and certifications in SQL and Power BI, I have seen entry-level analyst roles in Gurugram offering roughly 4.5 to 6.5 lakh per annum depending on the company and the tools used. I would be comfortable within that range, ideally around 5.5 lakh. At this stage, the quality of learning matters a lot to me: working with real data at scale and having senior analysts review my work. So I am open to discussing the full package, including any training or certification support you offer.

Likely follow-ups
  • Would you accept 4.5 lakh?
  • Do you have other offers?

Why do you want to work as an analyst in our industry?

HR

What they’re checking: Whether you understand the business domain you would analyse, since domain knowledge decides how useful an analyst becomes after the first few months.

Sample answer

I have worked on retail sales data for two years, and I want to move into lending because the decisions are sharper there: approval rules, risk, collections, and every choice has a measurable cost. I have been learning the basics of credit, such as bureau scores, delinquency buckets and vintage analysis, and I built a small project on a public loan dataset to practise. Your team uses data directly in approval decisions, not only in monthly reports, and that is the kind of analyst work I want to do.

Likely follow-ups
  • What is a vintage analysis?
  • What metric would you track first here?

This role supports teams in the US and UK. Are you comfortable with shifted working hours?

HR

What they’re checking: Whether you can commit to the schedule honestly, and whether you have thought about the practical side of overlap hours with overseas teams.

Sample answer

Yes. I understand the role needs overlap with the UK in the afternoon and a few hours with the US in the evening. In my current job I already work from 12 to 9 pm on two days a week for a client in London, and it works well for me. I would like to know whether there is a fixed shift or flexible hours, and whether transport is provided for late finishes, since that affects how I plan my commute. I would prefer that very late calls stay occasional and are planned in advance where possible.

Likely follow-ups
  • Would you work a full night shift if needed?
  • How do you stay productive on late shifts?

Practise these questions
Answer them aloud against a timer, then compare with the sample answers.

Start practice →

How to prepare for a data analyst interview

  • Practise SQL daily on joins, GROUP BY, subqueries, CTEs and window functions, and always test your query on a small sample before trusting the result.
  • Prepare one portfolio project end to end: a question, a cleaned dataset, the SQL or Python code, a dashboard, and a one-page recommendation.
  • For case questions, say your structure aloud: check the data, compare with a baseline, segment, walk the funnel, then look at outside causes.
  • Revise basic statistics you will be asked to explain in plain words: mean versus median, standard deviation, p-value, confidence interval and sampling bias.
  • Learn the key metrics of the company’s industry, such as conversion rate, churn or delinquency, so your answers use their language.

Skill tests for data analysts

Timed practice tests with answers and explanations, for the written or online round.

One place for your job

Everything for data analysts

FAQ

Questions about data analyst interviews

Expect SQL almost everywhere, Excel skills like pivot tables and lookups, one visualisation tool such as Power BI or Tableau, and basic statistics. Many companies add Python with pandas. Beyond tools, interviewers test business thinking through case questions, and communication by asking you to explain a past analysis or present a take-home task.

Yes, many teams hire freshers into junior analyst roles. What replaces experience is proof of skill: a portfolio of two or three projects on real public datasets, clean SQL, a published dashboard and a short write-up of what you found and recommended. Internships and live projects for a local business count strongly.

Not always. Many analyst roles rely mainly on SQL, Excel and a BI tool. Python with pandas is increasingly listed, especially at tech and product companies, and helps with automation and larger datasets. If the job description mentions it, expect a question on cleaning or grouping data in pandas.

Give the interviewer a link to your work

A personal website with your resume, projects and certificates — live in about five minutes.

● Live in 5 minutes · free to start · no auto-renew

Recruiters Google you before the interview

Get a page that shows up: your experience, projects and contact details at your own link. Live in minutes.

Start free
Chat on WhatsApp