Web traffic deep dive

Sessions, signups and conversion by channel from data/web_traffic.csv

Total sessions
147,895
Total signups
5,242
Overall conversion
3.5%

Weekly sessions by channel

Export
Query · 36 rows · refreshed
SELECT CAST(date_trunc('week', date) AS VARCHAR) AS week, channel, SUM(sessions) AS sessions FROM web_traffic GROUP BY 1, 2 ORDER BY 1, 2

Data table (first 25 rows)

weekchannelsessions
2026-06-29 00:00:00email1113
2026-06-29 00:00:00organic3862
2026-06-29 00:00:00paid2789
2026-06-29 00:00:00social1779
2026-07-06 00:00:00email1755
2026-07-06 00:00:00organic6055
2026-07-06 00:00:00paid4134
2026-07-06 00:00:00social2741
2026-07-13 00:00:00email1855
2026-07-13 00:00:00organic6672
2026-07-13 00:00:00paid4037
2026-07-13 00:00:00social2982
2026-07-20 00:00:00email1909
2026-07-20 00:00:00organic7315
2026-07-20 00:00:00paid4476
2026-07-20 00:00:00social3056
2026-07-27 00:00:00email2012
2026-07-27 00:00:00organic6919
2026-07-27 00:00:00paid4643
2026-07-27 00:00:00social3029
2026-08-03 00:00:00email2205
2026-08-03 00:00:00organic7433
2026-08-03 00:00:00paid5081
2026-08-03 00:00:00social3593
2026-08-10 00:00:00email2172

Share of sessions by channel

Export
Query · 4 rows · refreshed
SELECT channel, SUM(sessions) AS sessions, SUM(sessions) * 1.0 / SUM(SUM(sessions)) OVER () AS share FROM web_traffic GROUP BY 1 ORDER BY 2 DESC

Data table (first 4 rows)

channelsessionsshare
organic625160.4227052976774063
paid403700.27296392711045
social275860.18652422326650664
email174230.1178065519456371

Best and worst day by signups

Export
Query · 2 rows · refreshed
WITH d AS (SELECT date, SUM(signups) AS signups FROM web_traffic GROUP BY 1) SELECT * FROM (SELECT 'Best day' AS label, CAST(date AS VARCHAR) AS day, signups FROM d ORDER BY signups DESC, date LIMIT 1) UNION ALL SELECT * FROM (SELECT 'Worst day' AS label, CAST(date AS VARCHAR) AS day, signups FROM d ORDER BY signups ASC, date LIMIT 1)

Data table (first 2 rows)

labeldaysignups
Best day2026-08-27131
Worst day2026-07-1154

Conversion rate by channel over time

Export
Query · 36 rows · refreshed
SELECT CAST(date_trunc('week', date) AS VARCHAR) AS week, channel, SUM(signups) * 1.0 / SUM(sessions) AS conversion FROM web_traffic GROUP BY 1, 2 ORDER BY 1, 2

Data table (first 25 rows)

weekchannelconversion
2026-06-29 00:00:00email0.055705300988319856
2026-06-29 00:00:00organic0.033143448990160536
2026-06-29 00:00:00paid0.04804589458587307
2026-06-29 00:00:00social0.01854974704890388
2026-07-06 00:00:00email0.05584045584045584
2026-07-06 00:00:00organic0.03005780346820809
2026-07-06 00:00:00paid0.04450895016932753
2026-07-06 00:00:00social0.018606348048157608
2026-07-13 00:00:00email0.05983827493261455
2026-07-13 00:00:00organic0.03297362110311751
2026-07-13 00:00:00paid0.043349021550656425
2026-07-13 00:00:00social0.017437961099932932
2026-07-20 00:00:00email0.062336301728653745
2026-07-20 00:00:00organic0.03130553656869446
2026-07-20 00:00:00paid0.041108132260947276
2026-07-20 00:00:00social0.01668848167539267
2026-07-27 00:00:00email0.05616302186878728
2026-07-27 00:00:00organic0.028472322589969647
2026-07-27 00:00:00paid0.04178332974370019
2026-07-27 00:00:00social0.019478375701551667
2026-08-03 00:00:00email0.06394557823129252
2026-08-03 00:00:00organic0.03080855643750841
2026-08-03 00:00:00paid0.04251131666994686
2026-08-03 00:00:00social0.016699137211244084
2026-08-10 00:00:00email0.06077348066298342