Funnel
The sequence of steps users take towards a goal — visit, product page, basket, checkout, payment — with the share that reaches each step.
Formulastep rate = reached step n ÷ reached step n−1
How we work it through
- 1
Fix the unit (visit or person) for every step.
- 2
Measure all steps over the same period.
- 3
Find the step that changed before explaining the total.
On the practice dataset
The query we run on Meridian, Atterna’s practice marketplace, and what it returns.
SELECT COUNT(*) AS visits,
COUNT(*) FILTER (WHERE added_to_cart) AS cart,
COUNT(*) FILTER (WHERE reached_checkout) AS checkout,
(SELECT COUNT(*) FROM meridian.visit_orders) AS orders
FROM meridian.visits;Result195,013 visits → 18,637 carts (9.6%) → 8,725 checkouts → 8,164 orders (4.2% of visits)
The common trap
Mixing people and sessions between steps, or comparing steps measured over different periods.
When an AI answers
An AI assistant
“Conversion fell at the weekend — people must dislike the new checkout.”
- What it didn’t know
- It only saw orders, not payment attempts: on the last Sunday 92 of 271 attempts failed, many with PAY_SDK_TIMEOUT.
- Ask back
- “Which step dropped? Split checkout → payment attempts → successful payments, by error code.”
Read next
Examples use Meridian, Atterna’s fictional practice marketplace.