Loading tutorials…
Loading tutorials…
GA4 tells you 60% of users abandoned at checkout step 2. Hotjar Funnels tells you which 60% — and lets you click straight into 5 recordings of the people who dropped off. That's the workflow.
Who this is forTeams on Hotjar Business or Scale plan with a multi-step conversion flow (checkout, signup, lead form, application). If you're on Plus or Free Basic, Funnels isn't available — use the linked GA4 tutorial for funnel analysis there.
What you'll need
Step 1
Funnels lives under the Business and Scale tiers. Free Basic and Plus don't have it. If you're on a lower tier, this tutorial isn't actionable for you yet.
Open Hotjar → check the left sidebar. If you see Funnels as a top-level item, you have access. If not, you're on Free Basic or Plus.
Settings → Plan & Billing shows your tier. Business starts at $80/mo ($63/mo annual). Scale starts higher and adds Trends + advanced segmentation.
If you're on Plus, evaluate honestly: do you have a 3-6 step funnel with at least 200 sessions/week? If yes, Funnels pays back. If your funnel is 2 steps or sessions are below 200/week, upgrade is premature.
Cheaper alternative if you can't justify Business: GA4 Funnel Exploration is free, less polished, but answers the same drop-off question. Use GA4 for the chart + Hotjar recordings for the why. See the linked GA4 integration tutorial.
Step 2
Funnels → New funnel. Each step is a URL match. 3-6 steps is the right range — fewer is uninteresting, more is noise.
Open Funnels → click New funnel (top-right).
Name the funnel: "Checkout funnel — May 2026" or "Trial signup funnel". Specific names matter for filter discoverability later.
Add the first step: pick "URL matches" (exact) or "URL contains" (pattern). Step 1 is usually a top-of-funnel page like /pricing or /products/main.
Add subsequent steps in order. Example checkout funnel: /cart → /checkout → /checkout/shipping → /checkout/payment → /checkout/review → /thank-you. Example trial signup: /pricing → /signup → /signup/verify-email → /onboarding/step-1 → /dashboard.
Cap at 6 steps. Beyond that, drop-off rates per step get so low (and sample sizes per step get so small) that the chart stops being readable.
Trickier funnel definitions: for SPAs with virtual page changes, use Events (next tutorial) as funnel steps instead of URLs. Hotjar Business+ supports event-based funnels.
Step 3
Funnels analyze sessions within a date range. Default is last 7 days; widen to 30 days for slower funnels. Filter by source/device to compare segments.
Above the funnel chart, set the Date range. Last 7 days for high-traffic checkout funnels (need fresh data). Last 30 days for slower funnels (trial signup with email verification step).
Apply filters to compare segments: Traffic source — google / cpc vs organic. Device — desktop vs mobile. Country — US vs everything else.
Save the filtered view as a "Funnel" so you can switch between segments quickly. Example saved funnels: "Checkout — desktop", "Checkout — mobile", "Checkout — paid traffic only".
The funnel chart updates live as you change filters. Watch how drop-off rates shift between segments — mobile drop-off at step 3 might be 70% while desktop is 30%, which is the entire CRO insight you need.
Cap the segments you maintain at 5-6 saved funnels. More than that is unmanageable.
Step 4
Hotjar shows session count + % drop-off per step. The biggest drop-off step is usually obvious. But the highest-leverage step isn't always the biggest — it's the biggest where users still have intent.
Funnel chart: each bar is a step. The number above is sessions entering that step. The % below is drop-off from the previous step.
First read: which step has the highest % drop-off? That's your headline finding.
Second read: which step has the highest absolute lost sessions × intent? A 50% drop at step 1 (1,000 → 500 sessions) might be normal "tire-kickers leaving." A 30% drop at step 4 (200 → 140 sessions) might be intent-loss where users had committed effort — and is therefore more recoverable.
Compare against a baseline: industry checkout funnels typically lose 20-40% per step. If your step-2 drop is 15%, you're winning there. If it's 60%, that's the problem step regardless of where it sits in the funnel.
Watch month-over-month: did a recent deploy move drop-off at any step? Funnels Trends (Scale plan) graphs this over time.
Step 5
Below each step's bar is a "View recordings of users who dropped off here" link. This is where Funnels earns its tier.
Click the bar for any step where drop-off is concerning. A panel opens with "View recordings" of users who entered that step but didn't advance.
Click into 5 recordings. Watch each at 2x speed. The patterns are usually obvious within the first 2 recordings.
Common patterns at checkout step drop-offs: shipping cost shock (users see the total, scroll back to cart, leave); confused form field (users click a field 3 times, can't figure out what's wrong, abandon); missing payment method (users scan for Apple Pay / PayPal, don't see it, leave).
Each pattern is a CRO experiment hypothesis. Write each down. Score by frequency (how many recordings show it) and effort to fix.
Pro workflow: combine Funnels + Surveys. Set up an exit-intent survey on the problem step ("What almost stopped you here?"). Watch the recordings AND read the responses for the same drop-off cohort. Two evidence sources beat one.
Step 6
The funnel chart looks one way for all users and another way per segment. Comparing segments reveals which audience needs which fix.
Duplicate your funnel: Funnels → click the funnel → Duplicate. Rename to "Checkout — mobile only". Apply Device = Mobile filter.
Compare side by side with the desktop version. Mobile drop-off at form steps is usually 2-3x desktop — different fix priorities.
Same exercise for paid vs organic traffic. Paid traffic often drops off at pricing more aggressively (they expected something different from the ad).
Same for new vs returning users. Returning users skip more steps; new users get stuck at unfamiliar UI.
After comparing 3-4 cohorts, you'll have 3-4 distinct CRO backlogs: "mobile fixes", "desktop fixes", "paid-traffic fixes", "new-user fixes". Prioritize by spend × drop-off lift.
Step 7
When you ship a fix targeting a specific step, the funnel chart should show the drop-off rate at that step improve. If it doesn't, the fix didn't work.
Before shipping a fix, screenshot the current funnel chart and note the drop-off % at the target step. This is your baseline.
Ship the fix. Wait 7-14 days for new data to accumulate.
Open the funnel for the same date range as before (e.g., "last 7 days" but after the deploy date). Compare the drop-off % to the baseline.
If drop-off at the target step improved by 3-10% — fix worked. If unchanged — fix didn't address the real problem. Watch the recordings post-deploy to see what users are doing now.
Beware of regression at adjacent steps: improving step 2 might push users into step 3 unprepared, where they then drop off. The funnel TOTAL conversion is what matters, not any single step.
Common mistakes
Defining a 10-step funnel
What goes wrong: More steps = smaller sample per step = harder to read. A 10-step funnel where each step has 30 sessions is unreadable noise. Team spends 30 minutes/week staring at the chart and ships no fixes. Wasted $80-300/mo on Business plan capacity.
How to avoid: Cap at 3-6 steps. Pick the 3-6 that matter most. Sub-funnel additional steps separately if needed.
Reading the funnel without watching recordings
What goes wrong: Funnel shows 50% drop-off at step 3. Team assumes "the form is too long" and ships a shortened form. Drop-off doesn't move because the real issue was a JavaScript error breaking the Submit button. Funnel chart alone misled the fix. Wasted 1-2 weeks of dev time and ~$3,000-8,000 in opportunity cost.
How to avoid: For every drop-off worth investigating, watch 5+ recordings of users who dropped at that step. The recording reveals the WHY; the funnel only shows the WHERE.
Comparing different time windows accidentally
What goes wrong: Funnel "before fix" was last 7 days during a quiet week. Funnel "after fix" was last 7 days during a Black Friday spike. The drop-off rate looks different but it's because the traffic mix changed, not the fix. Team congratulates itself on a fix that didn't actually move the metric. The real problem stays unaddressed, costing $5,000-15,000 in continued lost conversions over the following quarter.
How to avoid: Hold the date range constant. Either compare same-period-last-year, or run an A/B test (Hotjar doesn't do this — use Google Optimize successor or VWO + Hotjar for the recording validation).
Including bot or admin traffic in the funnel
What goes wrong: Hotjar by default tracks all sessions. If your own team browses checkout to QA the site, those sessions are in the funnel. On a low-traffic site, 5 internal sessions/day can mask or invert real user behavior. Decisions get made on contaminated data — usually leading to 1-2 misguided fixes per quarter at $2,000-6,000 in wasted dev cycles each.
How to avoid: Settings → Privacy & Security → IP Blocking — add your office IP and team home IPs. Also exclude any bot user-agents you can identify. Re-run the funnel after 7 days of clean data.
Not segmenting by device
What goes wrong: Combined desktop + mobile funnel shows 40% step-3 drop-off. Team "fixes" the step on desktop. Mobile drop-off was actually 60% (the source of the average) and went unaddressed. Mobile conversion stays flat; the fix was on the wrong device. On a $30K/mo paid-traffic account with 60% mobile, that's ~$3,000-9,000/mo in mobile revenue uncaptured.
How to avoid: Always create a desktop-only and mobile-only version of each funnel. Compare side by side. Fix the worst-performing device first.
Stopping after one funnel iteration
What goes wrong: Team sets up the funnel, ships one fix, sees minor improvement, declares victory. Funnel chart sits unused for the next 6 months. The next 5 step-by-step optimizations that would have compounded into a 30% conversion lift go unfound. On a $50K/mo ad-spend account, that's $15,000-30,000 in unrealized conversion lift over 6 months.
How to avoid: Treat Funnels as a quarterly recurring exercise. Pick the worst step. Ship a fix. Measure. Pick the next worst step. Repeat. Conversion lifts compound.
Recap
Done — what's next
How to set up Hotjar Session Recordings the right way
Read the next tutorial
Hand it off
Funnels + Recordings together is the single highest-leverage Hotjar workflow. A specialist running this loop on a $50K/mo ecom checkout typically finds 2-4 fixable drop-offs per quarter and ships fixes that compound into 10-25% conversion lift over 90 days. Match with a vetted conversion specialist from $14-16/hr — typical engagement runs $500-1,200/mo.
See specialist rates
Hotjar tracks sessions captured (limited by your plan sample rate and PII suppression skips). GA4 tracks all sessions firing the configured events. On Plus tier, Hotjar may sample 100 sessions/day while GA4 captures 5,000 — same funnel shape, different absolute numbers. Hotjar's strength is the linked recordings; use GA4 for the absolute counts.
Yes via Events. Hotjar Business+ lets you define funnel steps as Hotjar Events instead of URLs. Push hj("event", "step_completed") from your site at each conversion milestone, then build a funnel referencing those events. See the Event Tracking tutorial.
At least 200 sessions through step 1 for directional patterns. 500-1,000 for confident comparisons across segments. Below 200, step-by-step drop-off rates swing wildly with small numbers and you'll chase noise.
Limited. You can screenshot the funnel chart and embed it in a doc, but you can't hand a non-Hotjar user an interactive funnel. Business+ has scheduled email digests — useful for sending weekly funnel snapshots to execs.
By default it tracks within a single session. To track multi-session funnels (e.g., visit pricing today, sign up next week), use Hotjar User Attributes to identify the user and enable Cross-session tracking in Funnels settings. Requires identifying users via hj("identify", userId).
Yes by combining Funnels with the on-site survey: target the exit page of the step where drop-off happens (e.g., users last seen on /checkout/payment, then closed tab). Hotjar doesn't natively integrate the two; you build the targeting manually. Worth doing — the response rate on these surveys is 5-15%, and the answers are gold.
Hotjar
Hotjar's recordings are the most powerful feature in the tool — and the most-wasted. The difference is filter discipline. This is the setup that turns 1,000 recordings/week into 5 useful insights, not 1,000 hours of "someday I'll watch these."
Hotjar
Out of the box, Hotjar tracks page views, clicks, and scroll. Anything beyond that — button clicks on a SPA, app-level milestones, custom funnel steps — needs custom events. This is the install path that doesn't break.
Hotjar
GA4 tells you what happened across thousands of sessions. Hotjar shows you why for 5 of them. Connecting the two means you can click from a GA4 anomaly straight into the 5 Hotjar recordings that explain it. This is the workflow.
Hotjar
DIY Hotjar is a great idea — until it isn't. This is the honest framework: when the cost of unwatched recordings and unanalyzed surveys exceeds the cost of hiring help, and how to tell which side you're on.