Back to Blog

Find the Leak: A Practical Guide to Funnels

How to define funnel steps, read the drop-off between them, split by traffic source and device, and decide what to fix first.

Published
Written by
Eliran Yihye

Tags

  • funnels
  • conversion
  • analytics

Most sites have a few moments that matter: someone signs up, books a call, starts a trial, pays. Everything before that moment is a path. A funnel is a way to look at the path and count how many people make it from one step to the next.

The method is simple. The difficulty is in choosing sensible steps and reading the result without fooling yourself. This guide walks through both, using OnyxMetric's funnels as the example.

What a funnel counts

A funnel is an ordered list of steps. A session counts as completing a step only if it did that step after completing the previous one. In OnyxMetric, a step can be a page path, a custom event, an outbound link click, a button click, a form submission or a copy action. You need at least two steps.

So for a store you might define:

  1. Visit /products/**
  2. Click a button labeled add to cart
  3. Visit /checkout
  4. Fire a custom purchase event

The report shows how many sessions reached each step and the percentage that moved on from the previous one. Path steps accept wildcards: a single * matches one path segment and ** matches several, so /products/** covers every product page.

Pick steps a human would recognize

Beginners tend to build funnels with ten steps because they can. The result is a chart nobody can act on. A better rule: each step should be a decision the visitor makes, and the funnel should have three to six of them.

Good steps:

  • Landed on the pricing page
  • Started the signup form
  • Submitted the signup form
  • Reached the first-run screen

Weak steps:

  • Scrolled 50 percent
  • Opened the menu
  • Any page view with no clear intent

When you are not sure, write the funnel as a sentence: "Visitors see pricing, start signup, finish signup, and create their first project." If the sentence reads naturally, the funnel is probably sound.

Make sure the last step is real

The final step should be something that proves the goal happened. A visit to /thank-you is only a fair proxy if nobody can land there without completing the action. A custom event fired on the server's confirmation is better. If you track the final step badly, every conversion rate above it is wrong, and you will not know.

Check it once by completing the flow yourself and confirming the session shows up in the last step.

Reading the result

Take a three-step funnel with 5,000 sessions entering:

  • Step 1, pricing page: 5,000
  • Step 2, signup form started: 900 (18 percent)
  • Step 3, signup submitted: 450 (50 percent of step 2)

Two numbers matter here, and they answer different questions.

Step-to-step rate tells you where the biggest leak is. Pricing to form start loses 82 percent of people. Form start to submit loses 50 percent.

Overall rate tells you the end result: 450 of 5,000, or 9 percent.

The temptation is to fix the biggest percentage drop. Be careful. The first step losing 82 percent is normal, because many visitors to a pricing page are comparing, not buying. The 50 percent drop within a form people already chose to start is more suspicious. They wanted it and still stopped. That is usually friction: too many fields, a confusing validation message, a slow page, a login wall.

A useful test is to ask who is leaving at each step. Intent drops fast at the top and should stay high later.

Split before you conclude

An average hides stories. After you see the shape, break the funnel down by:

  • Source. Visitors from search, social and email behave differently. If paid traffic enters the funnel with 3 percent overall and organic with 12 percent, you may be buying the wrong audience or sending it to the wrong page.
  • Device. A form that converts at 60 percent on desktop and 25 percent on mobile is a mobile bug until proven otherwise. Check layout, keyboard type, and autofill.
  • Country. Payment options, language and shipping costs show up here.
  • Time. Compare this period to the previous one. A sudden step drop after a release points at a change you made.

You can scope a funnel with the same filters you use everywhere else in OnyxMetric, so these cuts take seconds.

Go from the number to the cause

A drop-off percentage tells you where. It does not tell you why. Then you have three routes:

  1. Look at the sessions. On the Pro plan, filter session replays to the page where people stop and watch a few. Five of them will often show the issue.
  2. Check errors. Open error tracking and filter to the same page. A JavaScript error on the submit handler is the cause more often than people expect.
  3. Check speed. Slow Largest Contentful Paint or Interaction to Next Paint on the problem page shows up in the Web Vitals report, broken down by device.

Only after that do you reach for design opinions.

Common patterns and what they usually mean

  • One step collapses compared with the rest. Something is broken or confusing right there. Look for errors and test it on a phone.
  • Every step loses a similar share. The flow is just long, or traffic is poorly matched. Shorten it or sharpen the audience.
  • Healthy on desktop, poor on mobile. Layout, tap targets, or a third-party widget misbehaving.
  • Great numbers from one source and poor from another. Message mismatch. The ad or link promises something the landing page does not deliver.
  • Sudden drop on a specific date. Check the deploy log.

Keep it honest

  • Do not read too much into small samples. A step with 20 sessions can swing wildly. Wait for hundreds.
  • Do not compare funnels with different time windows and expect the shapes to match, because people who start a flow today may not finish until later.
  • Do not change three things at once. If you want to know what worked, change one and check the same funnel the following week.

A starting point

If you have no funnels yet, build one for the single most valuable action on your site. Three steps, a real final event, no more. Let it collect for a week. Split it by device and by source. Pick the worst leak that has a plausible cause, fix it, and check again.

That one loop, repeated, is most of what conversion work actually is.

Ready for better analytics?

The full analytics surface on one dashboard: cookieless, private, and live in minutes.

Managed, monitored, and supported by us.