Dataford
Interview QuestionsInterview GuidesExperiencesMock InterviewsPricing
Get started

Rank Quora Acquisition Channels

MediumSQL · PostgreSQL00:00
Practice interviewer
In session
5 left
00:00

Your question is Rank Quora Acquisition Channels. Start with the requirements and the two tables on the right.

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.

Problem

Quora’s growth team wants to compare acquisition quality across channels by looking at signup-to-conversion performance. Write a SQL query to find the top-performing acquisition channels by conversion rate.

Requirements

  1. Use quora_users as the base table of acquired users.
  2. Treat a user as converted if they have at least one row in user_conversions with conversion_type = 'activated' and a non-null conversion_date.
  3. For each acquisition channel, return:
    • acquisition_channel
    • total acquired users
    • converted users
    • conversion rate as converted_users / total_users, rounded to 4 decimals
  4. Exclude channels with fewer than 2 acquired users.
  5. Return channels ranked from highest to lowest conversion rate. Break ties by higher converted user count, then alphabetically by channel name.

Schema

quora_users
ColumnTypeDescription
user_idPKINTUnique user identifier
signup_dateDATEDate the user signed up on Quora
acquisition_channelVARCHAR(50)Channel that acquired the user
country_codeVARCHAR(2)Two-letter country code
user_conversions
ColumnTypeDescription
conversion_idPKINTUnique conversion event identifier
user_idINTUser associated with the conversion event
conversion_typeVARCHAR(30)Type of conversion event
conversion_dateDATEDate the conversion occurred
Tablesquora_usersuser_conversions
Your solutionPostgreSQL
You need to log in / sign up to run or submit.
Run a query to see results