Your Web Analytics Are Probably Wrong. Here Is How to Check

Before you change your budget or your agency, prove that your measurement measures something. Broken tracking is more common than bad marketing, and the failures are mechanical: duplicate tags, conversion events that stopped firing, untracked phone taps, lost cross-domain attribution, and a search query list that was never complete.

Laptop on a desk displaying a web analytics dashboard with traffic and conversion charts

Most marketing arguments inside a small company are not really arguments about marketing. They are arguments about numbers that nobody trusts. The owner says the website does not produce leads. The agency shows a report with conversions going up. The sales manager says the phone rings more on Tuesdays. All three are looking at different instruments, and at least one of the instruments is broken.

Before you change your budget, your channels, or your agency, it is worth spending an hour proving that your measurement actually measures something. In our experience auditing analytics setups for businesses in New Jersey and New York, broken tracking is more common than bad marketing. The failures are mechanical, they are specific, and you can check for all of them yourself.

Failure one: the same page counted twice

This is the most common problem we find, and the easiest to miss. A site ends up with Google Analytics installed in two places at once, usually because the tag was hardcoded into the site template at some point and then added again through Google Tag Manager by whoever came next. Nothing errors. Both copies fire.

The symptoms are distinctive. Sessions look healthy and rising. Engagement rate looks implausibly good, or bounce rate implausibly low, because every visitor appears to trigger a second event immediately after landing. Pages per session hovers near two even for traffic that obviously left.

How to check: load your homepage, open the browser developer tools, go to the network tab, and filter requests for collect. One page view should produce one measurement hit per property. If you see the same measurement ID twice, you have a duplicate. Fix it by removing the hardcoded tag and keeping the tag manager version, not the other way around, so future changes live in one place.

Failure two: your main conversion never fires

Almost every site we audit has a defined conversion event. A meaningful minority have a conversion event that has not fired correctly since the last time the contact form was changed.

This happens because form tracking is usually tied to something fragile. If tracking depends on the visitor landing on a thank-you URL, then a form that was switched to submit without a page reload silently stops counting. If tracking depends on a click on a specific button class, a redesign that renames the class breaks it. If the form is embedded from a third-party tool inside an iframe, the parent page often cannot see the submission at all.

How to check: submit your own form, from your phone, on cellular data rather than office wifi. Then watch Google Analytics real-time reports and your Tag Manager preview mode to confirm the event arrives. Do this for every path a lead can take, not just the main contact form. That means the footer form, the quote request, the chat widget, the booking tool, and the phone number.

Phone calls are the one most often missing entirely. On a local service site, a large share of leads tap the number on a mobile device. If your tel: links do not fire an event, your analytics is systematically blind to your best traffic, and it will look like mobile converts worse than desktop when the opposite may be true.

Failure three: single-page sites that only report the first page

Modern sites built as single-page applications change the URL without a traditional page load. Analytics has an enhanced measurement option that listens for those history changes, but it does not always catch the pattern a given framework uses, and it sometimes fires before the new page title is set.

The result is a report where the homepage receives almost all the traffic and your service pages look dead, or where every page is logged under the title of the page the visitor entered on. Either way, you cannot tell which content works.

How to check: open the real-time report, then click through four or five pages on your own site. Each one should appear as a distinct page path with its own correct title. If the paths appear but the titles are wrong or repeated, the measurement is firing too early in the route change.

Failure four: traffic that is not traffic, and referrals that are not referrals

Two kinds of contamination quietly distort channel reports.

The first is your own activity. Your office, your developer, your agency, your uptime monitor, and your SEO tools all generate visits. On a site with a few hundred monthly visitors, internal traffic can be a double-digit percentage of the total. Filter your own networks out, and exclude known bot and monitoring traffic.

The second is lost attribution across domains. If a visitor moves to a separate domain to pay, to book, or to fill out a hosted application form, and that domain is not configured as part of the same measurement setup, the visitor comes back looking like a brand new person referred by your own payment provider. You then see a channel called "referral" sending you conversions, and the campaign or search that actually produced the lead gets no credit. Any domain in your funnel that you control, or that your vendor lets you configure, needs to be linked and excluded as a referral source.

Failure five: believing the search console query list is complete

This one is not a bug, and it catches experienced marketers. Google Search Console does not show you every query that produced an impression. Queries that are rare enough to be potentially identifying are withheld entirely, and the number of them is large. The practical effect is that the sum of impressions across the query list is substantially lower than the site total, and the queries you can see are skewed toward the more common phrases.

So when you want to know which query drove something, use the query report with appropriate suspicion. When you want to know how a page is doing, use the page-level data, which is far more complete. Mixing the two leads to confident conclusions about keywords that were never representative in the first place.

The same caution applies to position numbers. An average position of 1.0 attached to a single impression is not a ranking achievement. It is one person, once, on a phrase nobody searches. Judge a page by impressions first, position second.

The hour-long audit, in order

  1. Confirm exactly one measurement hit per page view, per property.
  2. Submit every lead form on the site yourself, from a phone, and confirm each one produces the event you expect.
  3. Confirm phone taps, chat starts, and booking requests are tracked as events with distinct names.
  4. Click through five pages and confirm each is recorded with the right path and the right title.
  5. Exclude internal networks, agencies, and monitoring tools.
  6. List every domain in your funnel and confirm cross-domain linking and referral exclusions for each.
  7. Compare the number of leads your analytics claims for last month against the number of real leads in your inbox or CRM. Write both numbers down.

Step seven is the one that matters most, and it is the one almost nobody does. If analytics says forty conversions and your CRM contains eleven real inquiries, you do not have a traffic problem or a conversion problem. You have a counting problem, and every decision made from that report until now was made on fiction. The two numbers will rarely match exactly, because of consent choices, blocked scripts, and the people who call instead of clicking. But they should be in the same neighborhood, and you should be able to explain the gap.

Define conversions as outcomes, not clicks

Once tracking is honest, the second improvement is definitional. Many setups count anything hopeful as a conversion: a brochure download, a newsletter signup, thirty seconds on a pricing page. Those are useful signals, but if they sit in the same bucket as a real inquiry, your conversion rate becomes a number that cannot go down and cannot be acted on.

Keep one event that means "a human asked us to contact them." Keep the softer signals separately. Then close the loop: once a month, mark which of those inquiries were actually qualified, and which turned into work. The channel that produces the most form fills is often not the channel that produces the most revenue, and you will never see that difference in a report that stops at the form.

Why this breaks again, and what to do about it

The uncomfortable part of analytics hygiene is that it does not stay fixed. Tracking breaks at exactly the moments nobody is watching: a theme update, a new form plugin, a landing page built by a freelancer, a consent banner installed for compliance that blocks the tag it was not supposed to block. The failure is silent by design, because an event that stops firing produces no error, just a quieter chart.

This is the kind of problem i4US deploys AI agent teams to handle. The work is not analytical genius; it is relentless attention. An agent can watch each key event daily and raise a flag the first day a conversion event drops to zero, reconcile the lead count in analytics against the lead count in the CRM every week and report the delta in plain language, and check that the measurement tag is still present and firing once on every important page after any deployment. A person can do all of this. A person reliably does not, because it is boring until the quarter it has cost you real money.

If you want the measurement layer built properly rather than patched, that is the analytics and conversion tracking work we do, and it usually runs alongside the AI automation and marketing work we handle for New Jersey businesses. If you would rather have someone verify what you already have before spending another dollar on traffic, tell us what you are measuring and we will audit it. You can reach us at (718) 450-2000 or hello@i4us.com.