Dataford
Interview QuestionsInterview GuidesExperiencesCoaching
New
Pricing
Get started
Dataford
Popular roles
Software EngineerData AnalystData ScientistData EngineerBusiness AnalystAI EngineerMachine Learning EngineerProduct Manager
Browse
Browse All RolesEvery role hub, from analyst to MLBrowse All CompaniesCompany-specific interview loopsAll Interview GuidesThe full guide library
Top questions by role
Software EngineerData AnalystData ScientistData EngineerBusiness AnalystAI EngineerMachine Learning EngineerProduct Manager
Top questions by skill
SQLPythonStatisticsMachine LearningA/B TestingSystem DesignGenerative AIProduct SenseMetricsBehavioral
Browse all questions →Try a mock interview
Experiences
Practice
Mock InterviewsTimed interview simulations with feedbackCoaching1:1 coaching with people at your target companiesSuccess PathYour 6-week structured planModulesCurated lessons by topicWebinarsTalks from ex-Big Tech data leadsPlaygroundA free-form scratch editor
Learn
BlogInterview strategy and career adviceTech Job Market ReportHiring trends across data and AI rolesFor UniversitiesDataford for career centersAbout DatafordWho we are and how we build
Pricing
Build my plan
Find Onboarding Funnel Drop-Off
00:00
5 left

Find Onboarding Funnel Drop-Off

MediumSQL · PostgreSQL

Problem

NovaPay wants to identify the largest drop-off point in its onboarding funnel. Write a PostgreSQL query to measure how many users reached each funnel step and calculate the drop-off to the next step.

Requirements

  1. Consider only users from the web signup source who signed up in January 2024.
  2. Use the funnel order defined in onboarding_steps.
  3. For each step, return the number of distinct users who completed it, the number who completed the next step, the drop-off count, and the drop-off rate.
  4. Return all steps except the final step, ordered by the largest drop-off count first.

Schema

users
ColumnTypeDescription
user_idPKINTUnique user identifier
signup_dateDATEDate the user signed up
signup_sourceVARCHAR(50)Marketing or acquisition source
country_codeVARCHAR(2)Two-letter country code
onboarding_steps
ColumnTypeDescription
step_idPKINTUnique onboarding step identifier
step_nameVARCHAR(50)Name of the onboarding step
step_orderINTSequence order of the step in the funnel
user_onboarding_events
ColumnTypeDescription
event_idPKINTUnique onboarding event identifier
user_idINTUser who completed the step
step_idINTOnboarding step completed
completed_atTIMESTAMPTimestamp when the step was completed
device_typeVARCHAR(20)Device used for the onboarding event
Tablesusersonboarding_stepsuser_onboarding_events
Interviewer

Your question is Find Onboarding Funnel Drop-Off. Start with the requirements and the three tables in the Question tab.

Run and submit as often as you like. When you're ready, talk me through your approach or go straight to the code.

You need to log in / sign up to run or submit.
CodePostgreSQL
Sign up free to run your codeLog inLn 1
Run your query to see results here.