Blog
404 errors are burning your ad budget
You pay for the click either way. A dead landing page still costs you money. Here is how to find your paid 404s and fix them in the right order.
Bot traffic is inflating your numbers
Traffic up, sales flat. Bots are one common reason. Here are the warning signs, plus what good filtering actually does about them.
Client reports without IT: build them yourself
Your report is late because you are waiting on someone else. Here is how an account manager builds a custom client report alone in ten minutes.
Form abandonment: the one field that costs you signups
Most people who quit your form never tell you why. One field usually does the damage. Here is how to find it and fix it this week.
Website errors your customers see and you never do
Your site works on your computer. That proves nothing. Here is how broken buttons stay hidden for weeks and how to catch them in two minutes.
Fathom Analytics on Joomla: the one line and where it goes
Fathom has no Joomla extension but its script is one line. The problem is that the obvious place to paste it is the one place that gets overwritten.
Matomo on Joomla: four extensions, zero reviews
Matomo has four Joomla extensions and every one has zero reviews. Here is what that tells you and the question to answer before you install any of them.
Plausible on Joomla: the extension that does not exist
No Plausible extension exists for Joomla. Here are the three ways to add the script by hand and which one survives a template update.
Umami on Joomla: free software and who pays for it
Umami is free, open source and has no Joomla extension. Before you self host it, work out what a Node app and a Postgres database really cost you.
Low traffic sites: why GA4 hides your best data
On a site with a few hundred visits, GA4 hides rows to protect privacy. When one lead is worth thousands, that is the wrong trade for you.
Website carbon footprint: the hidden cost of your tags
Your sustainability page loads fourteen third party scripts. Here is what actually moves your site's footprint, how to measure it and what not to claim.
Analytics onboarding: why it should not take three weeks
Your new hire still asks which report shows last week's traffic. Here is what that training time actually costs and how to test a tool before you buy it.
Privacy audit: how to close the analytics risk for good
An auditor asks the same six questions about analytics. Here they are, the paperwork each one triggers and the shortcut that removes the category.
Analytics in 5 minutes a week: the only numbers you need
You do not need a dashboard project to run your site. Four questions, once a week and a rule for what to do when a number moves.
Client reporting: send a link, not a 40 page deck
Three hours in Looker Studio and the client still asks whether it is good. Here is a report structure that answers that question in one screen.
Ad blockers and analytics: why your numbers are too low
Your invoices show more customers than your analytics does. Ad blockers are one reason. Here is how to measure your own gap and what actually fixes it.
Campaign tracking without UTM chaos: did the email pay off?
You sent the newsletter. Two days later the report still says Direct. Here is a naming system that survives and why the numbers go missing.
GA4 alternative: get your traffic answers in 10 seconds
GA4 was built for companies with a data team. If you only want to know who visited and where they came from, here is what to look for instead.
Google Analytics and GDPR: is it illegal in Europe?
Several EU regulators ruled Google Analytics unlawful in 2022. Then the rules changed again. Here is where it stands and what to check on your shop.
Slow website: the tracking scripts behind your bad score
Your PageSpeed score is red and your own code is fine. The weight usually comes from tracking scripts. Here is how to find it and what to cut.
Cookie banner free analytics: 6 steps to real traffic data
The law does not require a cookie banner. Your tracking code does. Six steps to remove it and get your real numbers back.