Marketing Analytics Path · Mission 9 of 30Easy

Which channel gets the best open rate?

JOIN two tables and compute a percentage

Back to Marketing Analytics

The Brief

Alex ChenMarketing Managerslack-dm

Can you break down our send performance by channel? I need the channel name, total sends, total opens, and the open rate as a percentage. We're deciding where to invest next quarter's budget.

You'll practice

JOINsPercentages

Tables & columns available

fact_sendsfact6 columns
ColumnTypeKey
send_idINTPK
campaign_idINTFK → dim_campaigns
customer_idINTFK → dim_customers
sent_atTEXT
openedINT
clickedINT
dim_campaignsdim7 columns
ColumnTypeKey
campaign_idINTPK
campaign_nameTEXT
channelTEXT
start_dateTEXT
end_dateTEXT
budgetREAL
statusTEXT

Hints (3)

Each hint you reveal reduces the XP you can earn. Try the query first.

Hint 1

JOIN `fact_sends` to `dim_campaigns` on `campaign_id` to get the `channel` for each send

Hint 2

Open rate = opens ÷ sends × 100. Use `ROUND(100.0 * SUM(s.opened) / COUNT(*), 2) AS open_rate`

Hint 3

GROUP BY `channel` and ORDER BY open_rate DESC to see the best-performing channel first