How to Track a Funnel With Events in Half a Day
How to track a funnel with events: fire one for every action step, name them by one rule, join visitor to user, then walk it yourself before trusting a number.
To track a funnel with events, fire one event for every step that is an action, use page views for steps that are pages, name everything by one written rule, join the anonymous visitor to the known user, then walk it yourself before you trust a number.
How to track a funnel with events: start by deleting your ambitions
You do not need to track everything. You need a few reliable signals.
Comprehensive coverage sounds responsible. It is how instrumentation projects eat a quarter of your evenings and leave you with a dashboard nobody opens. You are one person. Your hours are the scarce thing, not data.
So the goal is small and strict. To track a funnel well you need only this. Five or six steps. A signal for each. Every one of them verified by hand. That is the whole job, and it fits in half a day.
Most advice on this starts with picking a tool. Wrong end. The tool is the least interesting decision. What you track, what you call it and whether it can be trusted are the real ones. A beautiful setup that fires the wrong thing is worse than a plain one that fires the right thing, because the beautiful one looks believable.
Page or event? Decide per step
Page views cover part of a funnel and miss the rest. The important moments are often actions, not destinations. A form submitted. Setup completed. A first item created. A plan selected.
The rule is one line. Where the step is a page, use the page. Where it is an action, fire an event.
A funnel built purely on page views will be missing exactly the steps that matter most. And it will look complete while it does it. That is the nasty part. Nothing on the chart tells you a step is absent.
Say you sell a productised audit. Here is how the same funnel splits.
| The step, as a state | Page or event | Why |
|---|---|---|
| Arrived | Page view | The landing page is a destination. The page view already says it. |
| Understood what this is | Event, such as a scroll to the offer or a click into details | Nobody lands on a page called understanding. You have to choose a signal that stands in for it. |
| Gave me their email | Event on a successful submit | A thank-you page can be reloaded or skipped. The submit is the action. |
| Booked the call | Event | Booking often happens inside someone else's widget. Your pages never see it. |
| Paid | Event, the last one to track in a funnel | The money moment is the one step you cannot afford to guess. |
Look at the second row. It is the one people skip. A state like "understood what this is" has no page. You pick a behaviour that honestly stands in for it, write down what you picked, and accept it is an approximation. Better a rough signal for a real state than a perfect signal for a page nobody cares about.
Free guide · 20 pagesStop guessing where it leaks.The Funnel Playbook: where you are losing people and how to find out.Get the free guide →Name events before you track a funnel
Event names are a schema. They are about as forgiving as one.
Emit signup_completed, SignupComplete and completed-signup and you have three unrelated series. No dashboard will ever reconcile them. Renaming later loses the history. You paid for that history in evenings.
The fix costs fifteen minutes. Pick a shape. Same casing, same word order. Write it down somewhere you will find it in a year, when you have forgotten why you chose it.
A shape that works for a lot of people is the thing, then the past-tense action. The detail matters less than the discipline. What matters is that future you can guess the name of an event you have never looked up.
If you only do one thing from this post, do this one. Everything else you can fix next month. This one fixes itself in the wrong direction, because every new event you add in the wrong style makes the mess bigger.
Join the visitor to the person
This is the quiet killer for any funnel that continues past signup.
Before signup, the person is anonymous. After signup, they have an identity. If your setup does not recognise those as the same human, the funnel breaks at exactly the point where it gets interesting. You see a cliff at signup. It looks like a conversion problem. It is your instrumentation losing the thread.
You will then spend a week fixing a page that was never broken. That mistake is expensive and it feels productive, which is the worst combination.
The identity join is the same one that governs attribution. Verify it the same way. By hand, once, following a real person from first visit to a completed action. If you are weighing where the loss really sits, how to find where you are losing customers is the companion to this one.
And think about consent. If a visitor declines tracking, they will not appear. Find out roughly what share that excludes. You do not need an exact figure. You need to know the number is a floor, not a census.
Walk it yourself before you trust anything
This is the step that earns the whole post. It takes twenty minutes.
Go through the funnel as a genuine user would. A device that is not yours. A browser with no history. Arriving from a real link, not a bookmark. Then open the data and find your own journey. Every step should be there, in the right order.
It catches the errors that otherwise cost you a month of confident decisions.
| What you find | What it means | What you do |
|---|---|---|
| An event appears twice | It fires on load and on click, or on a re-render | Fix the trigger. Doubled counts make a step look better than it is. |
| A step never fires on mobile | A different layout, a different button, a different code path | Repeat the walk on mobile every time. Half your visitors may live there. |
| Your journey stops at a redirect | The redirect drops what you were carrying | Carry the identity through, or the funnel loses everyone at that seam. |
| Nothing appears at all | Tracking never ran, perhaps because consent was declined | Accept consent on the test pass, then decline it, and see both outcomes. |
| Everything is there, in order | Good. Now you have a baseline you can believe. | Leave it alone. See the next section. |
One more check, and it is easy to forget. Compare the numbers to something you know independently. Your own count of orders. The payments you can see. If the funnel says one thing and your bank says another, believe the bank and find the gap.
Free assessmentHow trapped are you, really?Take the Corporate Suffocation Index, the free solopreneur readiness assessment.Take the assessment →Then do nothing for a month
This is the hardest instruction in the post, and the most valuable.
Look at the funnel for a month before you change anything. You need a baseline and a sense of ordinary variation. Without them you will react to a normal Tuesday.
A change made before you know the baseline can never be evaluated. You will not know if it worked, because you will not know what normal looked like. And the first month is the only clean read you will ever get of what your funnel does when nobody is interfering with it. Spend it carefully.
Use the time to write down the starting rate at every step. Notice how much it moves from one week to the next. That wobble is your noise floor. When you later fix something, how to know if a funnel change worked shows you how to read the result against it.
And keep the funnel short while you wait. How many steps a funnel should have gives the number, and the reason is the same as here. More signals means more to maintain and more ways to be wrong.
Free guide · 20 pagesStop guessing where it leaks.The Funnel Playbook: where you are losing people and how to find out.Get the free guide →Your Monday list
- Write the steps as states. Not pages. Five or six of them.
- Mark each one page or event. Fire events only where the step is an action.
- Write the naming rule. Fifteen minutes, one line.
- Check the identity join. Follow one real person across signup.
- Walk it from a device that is not yours. Then again on mobile.
- Put the date in your diary. One month from today. Touch nothing until then.
Notice what is not on the list when you track a funnel. No tool shopping. No tracking of every click. No dashboard polish. Those are all ways of feeling busy while the real work waits.
Free assessmentHow trapped are you, really?Take the Corporate Suffocation Index, the free solopreneur readiness assessment.Take the assessment →Frequently asked questions
Do I need an event for every step?
No. Only for the steps that are actions rather than pages. If the step is a page someone arrives at, the page view already tells you. Adding an event on top of it just creates a second signal to keep in sync.
What happens if I rename an event later?
You lose the history under the old name, and the two names become separate series. That is why the naming rule comes first. Fifteen minutes now saves you from a permanent split in your data.
Why does my funnel drop sharply at signup when I track a funnel by events?
It may be a real drop, or it may be your setup failing to recognise the anonymous visitor and the new user as one person. Follow a single real journey by hand across signup before you change a word on the page.
How long should I wait before I change anything?
A month of data first. You need a baseline and a feel for the ordinary week-to-week wobble. Changing things on day two means you can never tell whether the change did anything.
The full method, with the checklists, is in The Funnel Playbook, a free 20-page playbook.
How trapped are you, really?
Take the Corporate Suffocation Index, the free solopreneur readiness assessment.