Skip to main content

Confirm

Are you sure?

Analytics · Checked once per domain

Web analytics installedWhat it checks and how to fix it

What it checks

Looks at the rendered homepage for a known web analytics service: Google Analytics or Tag Manager, Plausible, Fathom, Matomo, Mixpanel, Segment, Amplitude, Heap, Chartbeat, comScore, Adobe Analytics, Piano, Permutive, PostHog, Simple Analytics, Clicky or Umami. It passes when one is found, and notes whether a consent manager is present; it warns when none is detected.

Why it matters

Without analytics you cannot tell which pages bring visitors, where they leave, or whether a redesign or a marketing campaign worked. Every decision about the site becomes a guess. Privacy-friendly tools such as Plausible, Fathom or Umami give you the essentials without cookies or a consent banner.

How to fix it

Add one analytics script to the <head> of every page. A cookieless tool needs no consent banner in most jurisdictions:

<!-- Plausible -->
<script defer data-domain="example.com" src="https://plausible.io/js/script.js"></script>
<!-- Umami (self-hosted or cloud) -->
<script defer src="https://cloud.umami.is/script.js" data-website-id="your-website-id"></script>

Google Analytics 4 sets cookies, so in the EU and UK it must load only after the visitor consents:

<script async src="https://www.googletagmanager.com/gtag/js?id=G-XXXXXXX"></script>
<script>
  window.dataLayer = window.dataLayer || [];
  function gtag(){ dataLayer.push(arguments); }
  gtag("consent", "default", { analytics_storage: "denied" });
  gtag("js", new Date());
  gtag("config", "G-XXXXXXX");
</script>

Load it with defer or async so it never blocks rendering.

Monitor this automatically

Full Stack Audit runs this check and 126 others on your site on a schedule, and emails you when one that passed starts failing.

More Analytics checks