When a page stops converting, most teams do the same thing: change the headline, swap the hero image, maybe rewrite the CTA. Then they wait. Then they do it again. The problem is they’re guessing — and guessing is expensive when you’re paying for every visitor.
At Choco Media, we use a structured diagnostic sequence every time a client asks us about a conversion rate drop. It starts with data, moves to behaviour, and ends with a ranked shortlist of hypotheses before a single pixel changes. This post walks through that sequence — so you can find the real leak in your funnel, not just the most obvious one. The target is clear: stop guessing and start diagnosing the conversion rate drop with the same rigour you’d apply to any other business problem.
This is for product teams, growth marketers, and founders running their own analytics. You don’t need enterprise tools — Google Analytics 4, Hotjar or Microsoft Clarity, and a spreadsheet will take you through every step.
Start With a Clean Definition of the Drop
Before you open any tool, you need a precise statement of what changed. “Conversions are down” is not a diagnosis — it’s a complaint. A useful definition includes four things: the metric that dropped, the page or funnel step where it dropped, the time window, and the comparison period.
For example: “The lead form submission rate on /contact/ dropped from 4.2% to 2.1% between 2 May and 16 May, compared to the same period four weeks prior.” That statement tells you exactly where to look and gives you a baseline to measure recovery against.
- Metric: Are you measuring form submissions, purchases, sign-ups, or something else? Define it precisely in your analytics platform — not just page views.
- Funnel step: Did the drop happen at page entry, scroll depth, form start, or form submit? Each has different causes.
- Time window: Short drops (2–3 days) often trace to a technical change or traffic source shift. Gradual drops over 2–4 weeks suggest creative fatigue or a competitive move.
- Comparison period: Week-over-week is noisy. Month-over-month or year-over-year same period is usually more reliable for pages with stable traffic.
Write this definition down. It will prevent you from going on a wild analytics tour and convincing yourself of whatever the last chart happened to show.
Check Traffic Quality Before You Touch the Page
The most common cause of a conversion drop that teams overlook: the page didn’t change, the traffic did. If a paid campaign started sending unqualified clicks, if an organic keyword picked up volume from the wrong intent, or if a referral link went live on an unrelated site — conversions will fall without anything being wrong with your page.
In GA4, segment your converting users by traffic source and compare the conversion rate per channel in the current period versus the baseline. You’re looking for two patterns:
- A channel that grew in volume but has a lower conversion rate than your site average — this dilutes overall conversion rate without any single page failing.
- A previously high-converting channel that dropped sharply — this is usually an ad creative or targeting change, a SERP position shift, or a referral that changed where it points.
Device and location splits
Run the same comparison by device category. A drop that’s isolated to mobile often points to a layout issue — a form that’s hard to complete on small screens, a CTA button below the fold, or a page speed regression on mobile networks. A drop isolated to a specific country can indicate a localisation gap or a local competitor running aggressive ads.
In client work we’ve found that roughly 40% of “conversion rate drops” we’re asked to diagnose are actually traffic quality shifts — the page was fine, the audience changed. Fixing the page would have done nothing.
Audit the Technical Layer First
Once you’ve confirmed the traffic looks consistent, check that the page is actually functional. This sounds obvious, but we’ve seen form endpoints silently fail, JavaScript errors block submission buttons, and tracking scripts fire duplicate events — all without any visual sign that something was wrong.
Run through this checklist before you spend time on copy or design hypotheses:
- Form submission: Test the form end-to-end yourself on desktop and mobile. Check that confirmation messages appear and that a thank-you page or event fires correctly.
- Page speed: Run the URL through PageSpeed Insights. A Largest Contentful Paint above 4 seconds on mobile correlates with measurable conversion loss. Check if any recent image or script changes coincide with the drop date.
- JavaScript console errors: Open DevTools on the page and look for red errors. A broken script can silently prevent form submission without showing the user any error message.
- Tracking integrity: Verify that your conversion event fires correctly in GA4 DebugView or your tag manager’s preview mode. Double-counting or missing events will distort your baseline and make the drop look worse or better than it is.
Check for recent deployments
Pull your deployment log or CMS change history for the two weeks before the drop started. A seemingly unrelated change — a new cookie consent banner, an updated theme component, a third-party script added to the header — can break a form or add enough friction to move conversion rate by a full percentage point.
Map the Funnel Step by Step
If the page is technically sound and traffic quality is consistent, you’re now looking at a funnel problem. Map every step a visitor takes from landing to converting, and measure the drop-off rate at each transition.
In GA4, use Funnel Exploration (under Explore) to set up a step-by-step path. If you’re not yet using GA4 events at this granularity, you can approximate it with scroll depth events and page view sequences, or use your session replay tool to watch where users stop engaging.
- Above the fold: Are users scrolling past the hero? If scroll depth data shows 60% of users aren’t reaching 25% of the page, the opening isn’t earning attention. This is a message match or headline problem, not a CTA problem.
- Mid-page drop-off: Users reaching the form section but not starting it usually indicates a trust or relevance gap. The offer hasn’t landed yet. This is where social proof, guarantees, or clearer value framing tends to help most.
- Form abandonment: Users who start the form but don’t complete it are the most solvable segment. Check field count, required fields, and error message clarity.
Knowing which step lost the most visitors tells you where to focus and prevents you from rewriting a headline when the real problem is a six-field form asking for budget information upfront.
Use Session Replay to Watch the Behaviour
Funnel data tells you where visitors leave. Session replay tells you why. After you’ve identified the highest drop-off step, watch 20–30 session recordings filtered to users who landed on that step but did not convert. Look for:
- Rage clicks: Users clicking something that isn’t interactive, usually a visual element they expect to be a button or a link that goes nowhere.
- Scroll hesitation: Long pauses mid-scroll often indicate confusing content — something that made them stop and try to make sense of what they were reading.
- Form errors: Users who hit an error message and abandon, rather than correcting and resubmitting. Validation errors on email fields and phone number formats are the most common culprits.
- Distraction patterns: Users who scroll back up to re-read something, then leave without converting, often signal that the page failed to answer a specific objection they had in mind.
This is also where you’ll catch usability issues that no A/B test would have found: a submit button that’s below the fold on a specific device size, a captcha that fails on the first attempt, a dropdown that doesn’t work on iOS.
For this kind of work, our CRO service typically runs session replay analysis alongside heatmap data before recommending any copy or design changes — because the recommendation changes substantially depending on what the recordings show.
Run a Heatmap Comparison
Heatmaps give you aggregate behaviour across all visitors rather than individual sessions. They’re most useful for catching layout problems and identifying which elements are drawing attention and which are being ignored.
Compare heatmaps from the current period against your baseline period if your tool supports historical comparison. Look for:
- Click maps: Are users clicking on images, section headings, or decorative elements thinking they’re interactive? These false affordances pull attention away from your actual CTA.
- Scroll maps: Where does average scroll depth end? If most visitors aren’t reaching your primary CTA, moving it higher is a faster fix than rewriting it.
- Mobile vs desktop heatmaps: Compare separately. A CTA that gets 12% of clicks on desktop might be getting 2% on mobile because it’s positioned below a large image that dominates the mobile viewport.
Form a Ranked Hypothesis List
By this point, you should have evidence pointing to two or three specific problems. The discipline is to rank them by expected impact before deciding what to test first. A useful ranking considers three factors:
- Reach: How many users does this hypothesis affect? A problem at step one of the funnel affects everyone. A problem at form submission affects only the users who got that far.
- Severity: How much friction does it add? A broken submit button is catastrophic. A slightly unclear headline is minor.
- Confidence: How much evidence do you have? Quantitative data plus session replay confirmation is high confidence. A gut feeling about copy is low confidence.
Write out your top three hypotheses in this format: “We believe that [specific element] is causing [specific behaviour] because [evidence]. If we change it to [specific change], we expect [specific metric] to improve by [estimated range].”
This format forces specificity. “The page needs better copy” is not a hypothesis. “The hero headline doesn’t reflect the intent of users arriving from our paid search campaign for ‘marketing agency Rovaniemi’, causing them to bounce before scrolling, as seen in a 78% bounce rate for that segment in GA4” — that is a hypothesis you can test.
Prioritise Fixes Before You Test
Not everything needs an A/B test. Some fixes are high-confidence enough to implement directly — a broken form field, a missing SSL indicator, a CTA button that’s below the fold on iPhone 14. Ship those without waiting for a test to confirm what you already know from the recordings.
For changes where the outcome is genuinely uncertain — a new headline approach, a restructured value proposition, a shorter form — an A/B test is worth running if your traffic volume supports it. If you’re working with under 5,000 monthly visitors to the page, sequential testing (one change at a time, measured over full weeks) is more practical than a concurrent split test. Our post on conversion rate optimisation covers the testing framework we use for lower-traffic pages.
After each change, measure for at least two full weeks before drawing conclusions. One week of data will almost always produce a false signal.
Document What You Found and What You Changed
The diagnostic is only as useful as the record you keep of it. After each investigation, write up a short summary: what the drop was, what you ruled out, what you found, what you changed, and when you expect to see results. Paste it into your team’s shared workspace or project management tool.
Two reasons this matters. First, it prevents the same investigation from happening twice — the next time that page’s conversion rate falls, you’ll have context about what was changed and when. Second, it creates a library of patterns over time. In client work we’ve found that the same funnel problems tend to recur: message mismatch from paid traffic is the most common, followed by mobile layout issues, followed by form complexity. Documenting each diagnosis is how you start to see those patterns before they become expensive.
If you’d like help running this diagnostic on a page that matters to your business, get in touch — we’re usually able to identify the primary issue in the first session.