We Moved Our Site and Stopped Counting Visitors for 38 Days
A firm that sells measurement switched hosts on August 28 and lost its own analytics until October 6. What broke, why nobody noticed, what it cost, and the check we now run after every deploy.
- Author
- BT Labs
- Published
- Reading time
- 4 min read
We sell measurement. For 38 days, we didn’t measure our own website.
On August 28 we moved breakingtrailtech.com to a new host. The site got faster, cleaner and easier to update. It also stopped reporting a single visitor to Google Analytics. We found out on October 6, during a routine audit.
This is the write up we’d ask a client to read before they trust us.
What broke
Three things, stacked on top of each other.
The analytics tag never made the move. The old site loaded it from a setting in the old platform. The new site was rebuilt from scratch, and nobody put the tag back. That’s the obvious one.
Our own security settings would have blocked it anyway. The new site ships with a strict security policy that only lets the browser load scripts from approved places. Google’s analytics servers weren’t on the list, and neither was the analytics beacon from our new host. So even if someone had pasted the tag back in, it would have failed without an error anyone could see.
We were also hiding our own styling from Google. A line in our robots.txt file told search engines not to read the folder that holds the site’s CSS and fonts. Google could read our words but couldn’t see how the page rendered.
Why nobody noticed
The site looked perfect. Pages loaded, links worked, the build passed every check we’d written. And every one of those checks tested the site. None of them tested whether the site was being measured.
That’s the trap we warn clients about. A dashboard that goes quiet doesn’t send an alert. It just shows a flat line, and a flat line on a small site looks a lot like a slow month.
What it cost
Here is the gap, from Google Analytics:
- July 15 to August 29: 378 sessions over 46 days, about 8 a day.
- August 30 to October 6: zero. Not low. Zero, for 38 days straight.
- October 7 onward: recording again.
At the old rate, roughly 300 visits went uncounted. We’ll never know the real number, which is the point. Search Console kept working, because it doesn’t depend on our site’s code. It shows 201 search impressions and zero clicks in those same 38 days, so the gap didn’t cost us search visitors we can see. It cost us the ability to know anything about the people who did show up.
The honest version of the cost: if a prospect had come in through a referral during those five weeks, we couldn’t tell you how they found us, what they read, or where they left.
What we fixed
- Put the analytics tag back, loading only on the live site.
- Added Google’s and our host’s analytics addresses to the security policy, so the tag can actually run.
- Removed the robots.txt line that hid our CSS and fonts from search engines.
- Started tracking the clicks that matter as events: booking a call, emailing us, opening the scorecard.
All four shipped on October 6, and the live site was checked by loading it, not just by building it.
The check we run now
After every deploy, we load the live site and confirm three things before calling it done:
- The analytics tag is on the page.
- The security policy allows it to load.
- A real visit shows up in the analytics dashboard within a few minutes.
It takes about two minutes. It would have saved us five weeks.
If you’ve moved your website, switched platforms or changed hosts in the last year, it’s worth spending those two minutes on yours. A site that looks fine and a site that’s being measured are two different things.