Skip to main content

Top Data Analyst Interview Questions

Review this list of 123 Data Analyst interview questions and answers verified by hiring managers and candidates.
  • Airbnb logoAsked at Airbnb 
    2 answers

    "Clarification questions What is the purpose of connecting the DB? Do we expect high-volumes of traffic to hit the DB Do we have scalability or reliability concerns? Format Code -> DB Code -> Cache -> DB API -> Cache -> DB - APIs are built for a purpose and have a specified protocol (GET, POST, DELETE) to speak to the DB. APIs can also use a contract to retrieve information from a DB much faster than code. Load balanced APIs -> Cache -> DB **Aut"

    Aaron W. - "Clarification questions What is the purpose of connecting the DB? Do we expect high-volumes of traffic to hit the DB Do we have scalability or reliability concerns? Format Code -> DB Code -> Cache -> DB API -> Cache -> DB - APIs are built for a purpose and have a specified protocol (GET, POST, DELETE) to speak to the DB. APIs can also use a contract to retrieve information from a DB much faster than code. Load balanced APIs -> Cache -> DB **Aut"See full answer

    Data Analyst
    Concept
    +6 more
  • 14 answers
    +11

    "In the question it says: "above the overall average total posts", which to me implying a >, yet in the solution it uses >= Caused me 1 hr to find out. plz fix"

    Peter W. - "In the question it says: "above the overall average total posts", which to me implying a >, yet in the solution it uses >= Caused me 1 hr to find out. plz fix"See full answer

    Data Analyst
    Coding
    +3 more
  • Microsoft logoAsked at Microsoft 
    2 answers

    "Target Consumers: corporate clients - for business meetings students (in school, college) aspirants who want to take competitive exams/tests Identify underserved customer needs: re-application leads to post-it's not being sticky enough space crunch so user needs to be precise post-its need to stick from all 4 corners for it to be readable and so it folds less writing with pen, marker gets imprinted on next page Define Value Proposition: a small piece of paper with concise list of"

    Priyanka D. - "Target Consumers: corporate clients - for business meetings students (in school, college) aspirants who want to take competitive exams/tests Identify underserved customer needs: re-application leads to post-it's not being sticky enough space crunch so user needs to be precise post-its need to stick from all 4 corners for it to be readable and so it folds less writing with pen, marker gets imprinted on next page Define Value Proposition: a small piece of paper with concise list of"See full answer

    Data Analyst
    Product Strategy
  • Anthropic logoAsked at Anthropic 
    Add answer
    Data Analyst
    Behavioral
    +5 more
  • 14 answers
    +10

    " select user_id, b.marketing_channel from user_sessions a Left join attribution b on b.sessionid = a.sessionid group by 1,2 HAVING sum(purchasevalue)>100 and min(adclick_timestamp) `"

    G B. - " select user_id, b.marketing_channel from user_sessions a Left join attribution b on b.sessionid = a.sessionid group by 1,2 HAVING sum(purchasevalue)>100 and min(adclick_timestamp) `"See full answer

    Data Analyst
    Coding
    +3 more
  • 🧠 Want an expert answer to a question? Saving questions lets us know what content to make next.

  • 15 answers
    +12

    " with youngsuccrate as( select strftime('%m', postdate) AS postmonth, round(sum(issuccessfulpost)*1.0/count(issuccessfulpost),2)as yascrate from post where userid in (select userid from post_user where age between 0 and 18) group by post_month ), nonyoungsucc_rate as( select strftime('%m', postdate) AS postmonth, round(sum(issuccessfulpost)*1.0/count(issuccessfulpost),2)as nonyasc_rate from post where user_id in (select"

    Bhavna S. - " with youngsuccrate as( select strftime('%m', postdate) AS postmonth, round(sum(issuccessfulpost)*1.0/count(issuccessfulpost),2)as yascrate from post where userid in (select userid from post_user where age between 0 and 18) group by post_month ), nonyoungsucc_rate as( select strftime('%m', postdate) AS postmonth, round(sum(issuccessfulpost)*1.0/count(issuccessfulpost),2)as nonyasc_rate from post where user_id in (select"See full answer

    Data Analyst
    Coding
    +3 more
  • DoorDash logoAsked at DoorDash 
    1 answer

    "Clarify the Goal (What Does Success Look Like?) Asked: Why is DoorDash launching bikes for Dashers? Is it to: Expand Dasher availability in dense urban areas? Lower delivery times or costs? Increase access to work for those without cars? Each possible goal shapes the metrics differently. Broke Metrics into Categories: Operational Metrics Measure how well bikes are functioning as a delivery method. Average delivery time (bike vs car/walk) Order completion rate for bike Dashers On-t"

    Logan S. - "Clarify the Goal (What Does Success Look Like?) Asked: Why is DoorDash launching bikes for Dashers? Is it to: Expand Dasher availability in dense urban areas? Lower delivery times or costs? Increase access to work for those without cars? Each possible goal shapes the metrics differently. Broke Metrics into Categories: Operational Metrics Measure how well bikes are functioning as a delivery method. Average delivery time (bike vs car/walk) Order completion rate for bike Dashers On-t"See full answer

    Data Analyst
    Data Analysis
    +2 more
  • Google logoAsked at Google 
    1 answer

    "Let's take Google Fitbit as the product and analyze how to identify its competitors. 1. Identify Direct Competitors (Similar Wearables & Smartwatches) Fitbit is a fitness tracker and smartwatch brand, so direct competitors include: Apple Watch Series (Apple) Samsung Galaxy Watch (Samsung) Garmin Wearables (Garmin) Amazfit & Zepp (Huami) Xiaomi Mi Band (Xiaomi) These brands offer smartwatches or fitness bands with similar health-tracking features. 2. Use Launch Events for Insi"

    Rajdeep J. - "Let's take Google Fitbit as the product and analyze how to identify its competitors. 1. Identify Direct Competitors (Similar Wearables & Smartwatches) Fitbit is a fitness tracker and smartwatch brand, so direct competitors include: Apple Watch Series (Apple) Samsung Galaxy Watch (Samsung) Garmin Wearables (Garmin) Amazfit & Zepp (Huami) Xiaomi Mi Band (Xiaomi) These brands offer smartwatches or fitness bands with similar health-tracking features. 2. Use Launch Events for Insi"See full answer

    Data Analyst
    Data Analysis
    +2 more
  • "Simplify a technical concept for a business user :- Explain the technical concept by concentrating on the impact of the methodologies implemented , stress on the value addition [Data Inflow/ Outflow Diagrams ] Simplify a business concept to a technical user :- Explain a business concept to a technical user by expanding on the tools and technologies used for highlighting the results in a certain report / dashboard/ data transformation method employed to achieve Feature documentation along with"

    Aishwarya J. - "Simplify a technical concept for a business user :- Explain the technical concept by concentrating on the impact of the methodologies implemented , stress on the value addition [Data Inflow/ Outflow Diagrams ] Simplify a business concept to a technical user :- Explain a business concept to a technical user by expanding on the tools and technologies used for highlighting the results in a certain report / dashboard/ data transformation method employed to achieve Feature documentation along with"See full answer

    Data Analyst
    Behavioral
    +1 more
  • TikTok logoAsked at TikTok 
    3 answers

    "I generate insights through stakeholder requirements and the data I have in hand"

    Anonymous Eagle - "I generate insights through stakeholder requirements and the data I have in hand"See full answer

    Data Analyst
    Analytical
    +1 more
  • 13 answers
    +10

    "SELECT upsellcampaignid, COUNT(DISTINCT trans.userid) AS eligibleusers FROM campaign JOIN "transaction" AS trans ON transactiondate BETWEEN datestart AND date_end JOIN user ON trans.userid = user.userid WHERE iseligibleforupsellcampaign = 1 GROUP BY upsellcampaignid `"

    Alina G. - "SELECT upsellcampaignid, COUNT(DISTINCT trans.userid) AS eligibleusers FROM campaign JOIN "transaction" AS trans ON transactiondate BETWEEN datestart AND date_end JOIN user ON trans.userid = user.userid WHERE iseligibleforupsellcampaign = 1 GROUP BY upsellcampaignid `"See full answer

    Data Analyst
    Coding
    +3 more
  • 7 answers
    +4

    "-- Write your query here select u.userid as userid, IFNULL(sum(purchase_value), 0) AS LTV FROM user_sessions u JOIN attribution a ON u.sessionid = a.sessionid group by user_id order by LTV desc ; Needs a full join. Wondering why cant we do a left outer join here. All the sessions should have complete data."

    Aneesha K. - "-- Write your query here select u.userid as userid, IFNULL(sum(purchase_value), 0) AS LTV FROM user_sessions u JOIN attribution a ON u.sessionid = a.sessionid group by user_id order by LTV desc ; Needs a full join. Wondering why cant we do a left outer join here. All the sessions should have complete data."See full answer

    Data Analyst
    Coding
    +3 more
  • 6 answers
    +3

    "WITH cte AS ( SELECT customer_id, COUNT(*) AS noofoffences FROM transactions WHERE receipt_number like '%999%' OR receipt_number like '%1234%' OR receipt_number like '%XYZ%' GROUP BY 1 HAVING COUNT(*) >=2 ) SELECT firstname, lastname, receipt_number, noofoffences FROM cte INNER JOIN customers using(customer_id) INNER JOIN transactions using(customer_id) ORDER BY 1,2,3,4 `"

    Michelle M. - "WITH cte AS ( SELECT customer_id, COUNT(*) AS noofoffences FROM transactions WHERE receipt_number like '%999%' OR receipt_number like '%1234%' OR receipt_number like '%XYZ%' GROUP BY 1 HAVING COUNT(*) >=2 ) SELECT firstname, lastname, receipt_number, noofoffences FROM cte INNER JOIN customers using(customer_id) INNER JOIN transactions using(customer_id) ORDER BY 1,2,3,4 `"See full answer

    Data Analyst
    Coding
    +3 more
  • Data Analyst
    Behavioral
  • Amazon logoAsked at Amazon 
    1 answer

    "We want sales to grow, in order to have a growth in revenue. And customer usage as well as it allows to see if our product lead more engagement from our users. So to be able to see this overall evolution I would make a line chart for both : Sales : with month on x-axis and sales revenue on y-axis Customer Usage : with month on x-axis and a KPI allowing to measure customer usage (nblogins or nbsessions or nbgamesplayed, ... depending on the industry) on y-axis Moreover, after knowing th"

    Catherine T. - "We want sales to grow, in order to have a growth in revenue. And customer usage as well as it allows to see if our product lead more engagement from our users. So to be able to see this overall evolution I would make a line chart for both : Sales : with month on x-axis and sales revenue on y-axis Customer Usage : with month on x-axis and a KPI allowing to measure customer usage (nblogins or nbsessions or nbgamesplayed, ... depending on the industry) on y-axis Moreover, after knowing th"See full answer

    Data Analyst
    Data Analysis
    +2 more
  • 2 answers

    "Before jumping into solutions, I’d want to first understand the feature launch’s objectives: what metrics were we trying to move and how did those top-line metrics perform. In an ideal scenario, we’d A/B test the feature so we can statistically measure metric performance over the existing features. If we weren’t able to A/B test, we would evaluate performance using pre-post on our key metrics we’re aiming to move, as well monitor funnel performance. Likewise, I’d make sure that engagement, ado"

    Katherine B. - "Before jumping into solutions, I’d want to first understand the feature launch’s objectives: what metrics were we trying to move and how did those top-line metrics perform. In an ideal scenario, we’d A/B test the feature so we can statistically measure metric performance over the existing features. If we weren’t able to A/B test, we would evaluate performance using pre-post on our key metrics we’re aiming to move, as well monitor funnel performance. Likewise, I’d make sure that engagement, ado"See full answer

    Data Analyst
    Data Analysis
    +2 more
  • Deloitte logoAsked at Deloitte 
    3 answers

    "BETWEEN and HAVING clauses in SQL serve different purposes: 1. BETWEEN Clause Used to filter rows based on a range of values. Works with numeric, date, or text values. Can be used with WHERE or HAVING clauses. The range includes both lower and upper bounds. Example: Filtering employees with salaries between 30,000 and 50,000 `SELECT * FROM Employees WHERE salary BETWEEN 30000 AND 50000;` 2. HAVING Clause Used to filter **groups"

    Meenakshi D. - "BETWEEN and HAVING clauses in SQL serve different purposes: 1. BETWEEN Clause Used to filter rows based on a range of values. Works with numeric, date, or text values. Can be used with WHERE or HAVING clauses. The range includes both lower and upper bounds. Example: Filtering employees with salaries between 30,000 and 50,000 `SELECT * FROM Employees WHERE salary BETWEEN 30000 AND 50000;` 2. HAVING Clause Used to filter **groups"See full answer

    Data Analyst
    Concept
    +4 more
  • Anthropic logoAsked at Anthropic 
    2 answers

    "To model ROI for a product launch, the first step is to define the timeline you're targeting Example 6 months post-launch, 1 year, or even 5 years. Tip: Start with a 1-year ROI projection to estimate near-term returns, and build a 3-year projection to evaluate growth and scalability. ROI is essentially the net return over that period: Profit=Revenue (within timeline)−Total Cost (from project start) Total Cost includes both fixed and variable costs incurred since t"

    Himanshu G. - "To model ROI for a product launch, the first step is to define the timeline you're targeting Example 6 months post-launch, 1 year, or even 5 years. Tip: Start with a 1-year ROI projection to estimate near-term returns, and build a 3-year projection to evaluate growth and scalability. ROI is essentially the net return over that period: Profit=Revenue (within timeline)−Total Cost (from project start) Total Cost includes both fixed and variable costs incurred since t"See full answer

    Data Analyst
    Data Analysis
    +3 more
  • 8 answers
    +5

    "Schema is wrong - id from product is mapped to id from transactions, id from product should point to product_id in transcations table"

    Arshad P. - "Schema is wrong - id from product is mapped to id from transactions, id from product should point to product_id in transcations table"See full answer

    Data Analyst
    Coding
    +1 more
  • 9 answers
    +6

    "Hi, my solution gives the exact numerical values as the proposed solution, but it doesn't pass the tests. Am I missing something, or is this a bug? def findrevenueby_city(transactions: pd.DataFrame, users: pd.DataFrame, exchange_rate: pd.DataFrame) -> pd.DataFrame: gets user city for each user id userids = users[['id', 'usercity']] and merge on transactions transactions = transactions.merge(user_ids, how='left"

    Gabriel P. - "Hi, my solution gives the exact numerical values as the proposed solution, but it doesn't pass the tests. Am I missing something, or is this a bug? def findrevenueby_city(transactions: pd.DataFrame, users: pd.DataFrame, exchange_rate: pd.DataFrame) -> pd.DataFrame: gets user city for each user id userids = users[['id', 'usercity']] and merge on transactions transactions = transactions.merge(user_ids, how='left"See full answer

    Data Analyst
    Coding
    +1 more
Showing 41-60 of 123