Growth4 min read

Find where buyers drop off before they pay

Build a simple funnel from first visit to payment, find the step that loses the most people, and fix that one first. A plain guide with a worked example.

Most people who visit your site won’t buy. That’s normal. What matters is where they stop, because each stopping point has a different fix, and fixing the wrong one can cost you a month.

A funnel shows you where. Here’s how to build one that’s actually useful, how to read it, and what to check at each step.

What a funnel is

A funnel is a short list of steps a buyer takes, in order, with a count of how many people reached each one. For a small store it might be:

  1. Visited the site
  2. Viewed a product
  3. Started checkout
  4. Paid

Every step loses some people. The funnel tells you how many, and the step that loses the most is usually where your next improvement is hiding.

Each step keeps fewer people. The biggest drop is the first one to fix.

Choose your steps

Keep it to three to five steps. Each one should be something you can see happen: a page someone opened, or something they did. Good steps are:

  • a page, like your pricing page or any product page
  • a click on a button that matters, like Buy or Add to cart
  • a signup, or a form sent
  • the payment itself, or the thank-you page people land on after paying

If your checkout runs on another site, like a hosted payment page, you can’t measure the pages in between. That’s fine. Use the click on your Buy button as the “started checkout” step, and your thank-you page or a purchase event as the last one.

Read it

Say your funnel for last month looks like this (example numbers):

  • Visited: 3,000
  • Viewed a product: 1,650 (45% dropped off)
  • Started checkout: 260 (84% dropped off)
  • Paid: 160 (38% dropped off)

Overall, 160 out of 3,000 bought, a little over 5%. That number alone doesn’t tell you what to do. The steps do. More than half your visitors were interested enough to look at a product, and 84% of them walked away right there.

That’s where to look first. Not the homepage, and not the payment page.

A few habits make funnels far more useful.

Compare yourself with yourself. Drop-off varies hugely between businesses, so someone else’s numbers won’t tell you much. Last month against this month will.

Split it. Run the same funnel for phones and for computers, or for visitors from TikTok and from Google. If phones lose twice as many people at one step, that’s a phone problem, and you’ve just found it.

Give it enough people. A step that 30 people reached can swing wildly from one week to the next. Look at a month rather than a day, and be wary of any step with only a few dozen people in it, especially once you’ve split the funnel into smaller groups.

What to check at each step

Every site is different, but some causes come up again and again. Use these as a checklist, not a diagnosis.

Landing to product. Does the page match what the post or ad promised? Can someone tell what you sell within a few seconds? Is it slow on a phone?

Product to checkout. Is the price clear, along with shipping and any extras? Is the button easy to find on a phone without scrolling? Is there a reason to trust you, like reviews, a refund policy or a real person behind the shop?

Checkout to paid. Are you asking people to make an account before they can pay? Are the payment options the ones your buyers use? Do any fields throw errors? Does anything break in a particular browser?

Pick the step that loses the most people, change one thing, and measure again. If you have the traffic, test the change instead of guessing. A/B test your headline without a data team shows how.

How odo does it

In odo’s Traffic dashboard, the Funnels card builds one in a minute. Add two to eight steps, each either a page or an event your site sends. Pages can use * to match anything, like /products/* for every product page. Events are whatever your site reports, like odo('Checkout') in your code or a button marked data-odo-event="Checkout".

odo counts each visitor once per step, in order, even when the steps happen over several visits in the date range you’re looking at. The card shows how many people reached each step, their share of the first step, and how many dropped off after each one.

Filter the dashboard by device, channel or country and the funnel follows, so the phone-against-computer comparison is a tap away.

For the last step, use your thank-you page, or have that page report the purchase once odo has loaded:

HTML
<script>
  addEventListener('load', () => window.odo && odo('Purchase', { revenue: 29, currency: 'USD' }));
</script>

To dig into why people leave a step, odo’s script also notes script errors, rage clicks (the same spot clicked again and again), clicks that do nothing, and form fields the browser refuses. Connect Claude or ChatGPT to odo and ask it to rank them by how many visitors they hit, or to follow where people went after they dropped out: ask Claude or ChatGPT about your sales.

And you don’t have to go looking every week. odo’s next moves point out the funnel step losing the most people, with the numbers behind it.

Keep reading