We audit a lot of analytics implementations. In roughly two thirds of them the reported conversion rate is materially wrong — usually inflated, occasionally understated, almost always for one of four unremarkable reasons.
One: the conversion fires on page load
This is the most common defect we find and the most consequential. A conversion tag is attached to a thank-you page but triggers on page view rather than on a verified submission. Every refresh, every back-button return, every bookmarked visit counts again.
The inflation is not uniform, which is what makes it so damaging. Channels that produce more repeat visits look disproportionately effective, so budget migrates toward them on the strength of an artefact. We have seen this pattern shift six figures of annual spend in the wrong direction.
The fix is straightforward once identified. Finding it requires somebody to actually check, which is the part that usually does not happen.
Two: duplicate tags from a partial migration
Somebody installs tracking directly in the theme. Later, somebody else installs the same tracking through a tag manager. Nobody removes the first one, usually because nobody is confident about what it does or who added it.
The result is duplicated pageviews and often duplicated conversions. Session counts inflate, bounce rate collapses to an implausibly low number, and average session duration becomes meaningless. The tell is a bounce rate under ten percent, which is not a triumph of user experience but a symptom.
This one is particularly persistent because both implementations work. Nothing errors. The site behaves normally. The only evidence is in the shape of the data, and only if somebody knows what shape to expect.
Three: cross-domain journeys breaking attribution
If the checkout, booking system or payment step sits on a different domain and cross-domain tracking is not configured, the visitor is counted as a new user arriving from a referral at the exact moment they become valuable.
The effect is doubly misleading. Acquisition channels lose credit for conversions they genuinely caused, and a phantom referral source appears in the report looking like a remarkably efficient partner.
We have watched a client attempt to negotiate a partnership deal with their own payment provider on the strength of this artefact.
Four: filters that were correct once
Internal traffic exclusions built around an office IP address that changed after the move to hybrid working. Bot filtering configured before the current traffic mix existed. Development environments sending live data because a staging flag was never flipped back.
Each of these was a sound decision when made. None of them were revisited. Configuration decays quietly, and analytics configuration decays more quietly than most because nothing visibly breaks.
What to do about it
Check whether your conversion tag requires a genuine submission event rather than a page load. Look at your bounce rate and ask whether it is plausible. Complete a real conversion yourself and watch what the reporting does. Review every exclusion filter and ask whether the assumption behind it still holds.
None of this requires a specialist. It requires an afternoon and a willingness to discover something inconvenient. The alternative is continuing to make budget decisions on numbers that have quietly stopped describing reality.
Have a version of this problem? Tell us about it — we are usually happy to give a straight answer even when there is no engagement in it.