Nykaa Data Analytics Interview Questions & Answers
Curated interview practice questions with answers. These are practice scenarios, not a verified list of past interview questions.
About Nykaa hiring for Data Analytics roles
Nykaa, operated by FSN E-Commerce Ventures, is an Indian beauty, personal care and fashion e-commerce company with both online and offline stores. Its technology and analytics teams work on search, recommendations, marketing, inventory and customer analytics. It hires for software engineers, SDETs, business analysts and data analysts.
For Data Analytics roles, this Nykaa practice set focuses most on Python for Analysis (6), SQL (5), Statistics and Case Studies (5), Web & Marketing Analytics (4). It has 5 easy, 25 medium, 10 hard questions, so you can start easy and work up to the harder ones.
Company type
E-commerce & consumer tech
Headquarters
Mumbai, India
Main India offices
Mumbai, Gurugram, Bengaluru
Nykaa Data Analytics interview process
Online assessment or assignment
Technical or case round
Hiring manager round
HR round
Typical pattern based on public candidate experiences. Rounds vary by role, team and year.
Solved for NykaaStart 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
How do you remove duplicates in Excel but keep the latest record?
Sort by date (newest first), then Data → Remove Duplicates on the key column — Excel keeps the first occurrence. Or use UNIQUE / a COUNTIFS helper column.
This is a join fan-out: an order has more than one matching payment row, for example split payments or retries, so each order line is repeated and sums are inflated. Check by counting rows per key on both sides. Fix it by aggregating payments to one row per order before joining, joining at the correct grain, or using the right key. Always compare row counts and totals before and after a join.
04
What is the Central Limit Theorem and why does it matter for analysts?
The Central Limit Theorem says that the distribution of sample means approaches a normal distribution as sample size grows, usually from about 30 observations, even if the underlying data is skewed. This is why we can use z-tests, t-tests and confidence intervals for averages such as order value or session time. It does not make the raw data normal, and very heavy-tailed data may need larger samples.
05
Many reporting queries in your team use SELECT DISTINCT to remove duplicate rows. What is the risk?
SELECT DISTINCT often hides a real problem, such as a join on the wrong key or a one-to-many join that multiplies rows. The output looks clean, but sums computed before the DISTINCT, or legitimate repeated rows, can be wrong, and DISTINCT adds a costly sort on large tables. Instead, find why duplicates appear, fix the join or aggregate the child table first, and add a uniqueness test on the key.
06
A stakeholder says the Power BI report shows different revenue than their Excel file. How do you troubleshoot?
I would first agree on definitions: gross or net, including tax or returns, order date or invoice date. Then compare one small slice, such as one month and one region, in both. I check filters on the report and page, relationships that drop unmatched rows, refresh time versus the Excel extract time, and duplicate rows. Once the gap is explained, I document the definition in the report so the question does not repeat.
An A/A test splits users into two groups that both see the same version. Since nothing differs, you expect no significant difference except about 5% of the time by chance. It checks that randomisation, tracking and the analysis pipeline work correctly, and it reveals sample ratio mismatches or metric variance before real tests depend on the platform. Running many A/A tests also confirms your false positive rate is near 5%.
08
Your sales data contains negative quantities. What do you do with them?
Do not delete them blindly. First find out what they mean: often they are returns, cancellations or credit notes, which are valid business events. Check with the source team or a documentation note. If they are returns, keep them but report gross sales, returns and net sales separately. If some are clearly entry errors, such as a negative quantity on a new order, flag and correct them and log the rule.
Simpson's paradox happens when a trend in several groups reverses when the groups are combined, because group sizes differ. Example: a new sales process has higher conversion in both small and large stores, yet overall conversion looks lower because it was mostly rolled out to large stores, which convert worse in general. The lesson is to check segments and confounding variables before concluding from aggregate numbers.
10
An A/B test shows a 2% lift with p = 0.04, but it only ran for 3 days. Would you ship it?
Not yet. Three days misses weekly patterns, and early results are often inflated by novelty effects or by stopping once the p-value looked good. I would check whether the planned sample size was reached, whether the split was balanced, and how guardrail metrics behaved. I would recommend running to the pre-planned duration, at least one or two full weeks, and then deciding, considering the cost of being wrong.
11
Your analysis shows that a flagship initiative championed by leadership is not working. How do you present it?
Prepare carefully and stay factual. Share the finding early with the initiative owner privately so they are not surprised in a big meeting. Lead with the question asked, the method and the evidence, acknowledge limitations and what is working, and avoid blaming anyone. Offer options, such as fixing a specific step, narrowing the scope or stopping, with estimated impact. Bad news delivered with solutions is received far better.
df = df.sort_values(['store', 'month'])
df['mom_pct'] = (
df.groupby('store')['sales'].pct_change() * 100
).round(1)
df['cum_sales'] = df.groupby('store')['sales'].cumsum()
# first month of each store has NaN for mom_pct, which is expected
A confidence interval gives a range of plausible values for a population parameter based on a sample. A 95 percent interval for average order value of 820 to 880 rupees means that if we repeated the sampling many times, about 95 percent of such intervals would contain the true average. Wider intervals mean more uncertainty; larger samples narrow them. Reporting the interval is more honest than reporting one number.
WITH gaps AS (
SELECT customer_id,
order_date,
order_date - LAG(order_date) OVER (
PARTITION BY customer_id ORDER BY order_date) AS days_since_prev
FROM orders
)
SELECT customer_id,
COUNT(*) AS orders,
AVG(days_since_prev) AS avg_gap_days
FROM gaps
GROUP BY customer_id
HAVING COUNT(*) > 1;
-- order_date is DATE (PostgreSQL); use DATEDIFF in other databases
19
The CMO asks which marketing channel should lose 20% of its budget. How do you approach it?
I would compare channels on incremental return, not last-click ROAS. Gather spend, attributed conversions under two models, customer quality such as repeat rate and margin, and any lift test or mix model results. Look at diminishing returns: the last rupee in a saturated channel is worth less than the average. Then recommend cutting where marginal return is lowest, ideally phased with a holdout to confirm the impact.
20
A Tableau dashboard takes 30 seconds to load. How do you make it faster?
Start with the Performance Recorder to see whether time goes into queries, calculations or rendering. Then reduce work: use an extract with only needed columns and rows, aggregate it to the dashboard's grain, and hide unused fields. Cut the number of sheets and high-mark-count views, replace many quick filters with fewer or with action filters, and avoid show only relevant values. Simplify heavy string and LOD calculations or move them to the database.
21
Traffic suddenly doubled from one city, with near-zero engagement time and no conversions. What is happening and what do you do?
This is very likely bot or spam traffic, or a misfiring tag. Check the user agents, IP ranges, hostnames, screen resolutions and landing pages for that traffic. If it is bots, exclude it with filters or data segments in analytics and in your reporting layer, and inform the web team so they can block it. Then restate the affected dashboard numbers, because bots inflate sessions and pull down conversion rate.
22
Write a Tableau calculated field that keeps only sales from the last 30 days.
// Calculated field: Last 30 Days Flag
DATEDIFF('day', [Order Date], TODAY()) <= 29
AND [Order Date] <= TODAY()
// Put this field on Filters and keep True.
// For a sales measure instead of a filter:
// IF DATEDIFF('day', [Order Date], TODAY()) <= 29 THEN [Sales] END
23
A profit margin visual shows errors for products with zero sales. How do you fix it in DAX?
DIVIDE(numerator, denominator, alternate) handles division by zero or blank safely and returns blank or the alternate value you supply, so visuals do not show errors or infinity. The / operator returns an error or infinity in those cases. For example, DIVIDE([Profit], [Sales]) shows blank for a product with no sales. Use / only when you are certain the denominator can never be zero, because it is marginally faster.
24
What are additive, semi-additive and non-additive facts?
Additive facts, like sales amount or quantity, can be summed across every dimension. Semi-additive facts, like account balance or stock on hand, can be summed across accounts or stores but not across time; for time you take the closing or average value. Non-additive facts, like percentages, ratios or unit prices, cannot be summed at all, so you store their components (profit and revenue) and calculate the ratio at query time.
25
Write a UTM-tagged URL for a paid Instagram campaign promoting a summer sale, and give two naming rules.
https://www.example.com/sale?utm_source=instagram&utm_medium=paid_social&utm_campaign=summer_sale_2026&utm_content=reel_video_a
-- Rule 1: always lower case with underscores; 'Instagram' and 'instagram' become separate rows
-- Rule 2: keep a shared UTM sheet with allowed source and medium values so every team tags the same way
26
Email open rates suddenly jumped from 22% to 45% without any campaign change. Should you celebrate?
No. Privacy features in some mail apps pre-load email images, which fires the open tracking pixel even if the person never reads the email, so open rates get inflated. Check opens by email client to confirm. Move reporting towards clicks, click-to-send rate, conversions and unsubscribes, which reflect real behaviour, and avoid using opens alone to pick winning subject lines or to define engaged subscribers.
27
How do you handle null values in Tableau calculations?
// treat missing sales as zero
ZN(SUM([Sales]))
// replace a missing value with a default
IFNULL([Region], 'Unknown')
// test explicitly
IF ISNULL([Discount]) THEN 0 ELSE [Discount] END
// right-click a null indicator on an axis to filter or show nulls at default position
28
Business teams have built hundreds of their own reports, each with its own revenue logic. How do you balance self-service with governed dashboards?
A good model is a governed core plus self-service on top. The central team builds certified datasets with agreed metric definitions and a small set of official dashboards for key KPIs. Business users then build their own views on those certified datasets, not on raw extracts. This gives speed and flexibility without twenty versions of revenue. Training, naming conventions and periodic clean-up of unused content keep it healthy.
29
You share a forecasting workbook and users keep overwriting formulas. How do you protect it?
Separate input cells from calculation cells and colour inputs clearly. Unlock only the input cells through Format Cells, Protection, then protect the sheet so formulas cannot be edited, and optionally hide formulas. Add data validation on inputs to block wrong values such as negative quantities. Protect workbook structure so sheets cannot be deleted, keep a version history, and add a short instructions sheet so users know where to type.
30
The finance dashboard and the sales dashboard show different revenue for last month. How do you resolve it?
Start by listing both definitions: gross or net of returns and discounts, with or without tax, booking date or invoice date, and which entities are included. Compare at a detailed level for one region to find exactly where the difference arises. Usually both are correct for their purpose. Agree with both owners which is the official revenue KPI, rename the other clearly, such as booked sales, and document it in the metric dictionary.
31
Your Tableau numbers change unexpectedly when a filter is applied to a view that uses a FIXED LOD. Why?
Usually it is the order of operations. FIXED LODs are computed before dimension filters, so they ignore a normal region filter, while other measures in the view respect it. That mix makes percentages and totals look inconsistent. Decide what the business wants: if the LOD should respect the filter, add the filter to context; if it should not, keep it and label it clearly, for example share of national sales.
The Data Model is an in-memory columnar store inside Excel that holds several related tables, and Power Pivot is the interface to manage it. Instead of flattening data with VLOOKUPs, you load fact and dimension tables, create relationships and write DAX measures. It handles millions of rows that would not fit on a sheet, and PivotTables built on it can slice across tables. It is the same engine idea that Power BI uses.
33
Your A/B test ends with no significant difference. How do you report it?
A flat result is still useful. Report the observed difference with its confidence interval, for example -0.3% to +0.8%, which shows the range of effects still possible. State whether the test had enough power for the planned MDE. If it did, conclude that any effect is probably small and the team can choose based on cost or simplicity. Share learnings so the same idea is not retested blindly.
A Common Table Expression (WITH name AS (...)) is a named temporary result used inside one query. Use it to break complex logic into readable steps or for recursive queries.
36
How do you make sure a metric like active customer means the same thing across all teams?
Write a clear definition in a shared metric dictionary: formula, filters, time window, grain, owner and source table, for example a customer with at least one paid order in the last 90 days. Implement it once, in a governed dataset or semantic layer, and have all dashboards reuse it rather than recalculating. Version changes, announce them and show the definition in the dashboard tooltip. Review new metrics before they are published.
37
Your scheduled Python report failed silently and nobody noticed for a week. How do you make it reliable?
Add logging to a file or central log, wrap the main steps in try and except that send an alert by email or chat on failure, and exit with a non-zero code so the scheduler marks the job failed. Add data checks, such as row counts above a minimum and no missing dates, before sending output. Use a proper scheduler or orchestrator with retries, and include the data date in every report.
38
How would you write a short email summarising an analysis for a manager?
Use a clear subject that states the finding, such as Q3 repeat purchase rate fell 4 points, mainly in Tier 2 cities. Open with one or two sentences of the key insight and the recommendation. Follow with three bullet-style lines of supporting evidence with numbers, then any caveats about data, and a clear next step or decision needed with a date. Attach or link the detailed workings instead of pasting large tables.
39
How do you show actual versus target on a dashboard?
Use a KPI card with actual, target and variance as both value and percentage, coloured by status. For trends, a bar or line for actual with a target line or band works well. Bullet charts compare actual against target and ranges compactly in tables. Make the period clear, such as month to date versus prorated monthly target, because comparing half a month of sales to a full month target looks falsely bad.
40
A senior stakeholder insists the data supports their conclusion, but your analysis does not. How do you handle it?
Stay respectful and focus on evidence, not opinions. Ask what they are seeing that leads to their view, as they may know context you lack. Walk through your method transparently, show the specific numbers, and test their hypothesis together on a cut they suggest. If the data still disagrees, present both views with their assumptions to the decision maker. Never adjust the analysis to fit a preferred answer.
Tips to crack the Nykaa Data Analytics interview
Prepare cases on beauty e-commerce like repeat purchases, private label growth or offline store performance.
Practise SQL and Excel analysis on customer and order data, focusing on retention and basket size.
Use the Nykaa and Nykaa Fashion apps and suggest measurable improvements to discovery or checkout.
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; Nykaa interviewers usually ask follow-ups on your first answer.
Frequently asked questions
How many rounds are there in the Nykaa Data Analytics interview?
Candidates usually go through 4 stages: Online assessment or assignment; Technical or case round; Hiring manager round; HR 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 Nykaa Data Analytics interview?
This practice set leans on Python for Analysis (6), SQL (5), Statistics and Case Studies (5), Web & Marketing Analytics (4). Revise those first, then practise explaining one or two of your own projects end to end, because most Nykaa interviewers ask you to walk through real work.
Are these the exact questions asked at Nykaa?
No. These are curated practice questions that match the skills and difficulty usually tested in e-commerce & consumer tech interviews like Nykaa's. They are not a leaked or verified list of past questions.
Where does Nykaa hire Data Analytics professionals in India?
Nykaa has large teams in Mumbai, Gurugram, Bengaluru. Openings and locations change often, so check the Nykaa careers page and filter by city and experience.