In short
- Of 3,187 websites read, 26% still load Universal Analytics. Check it is not feeding GA4, then remove it.
- 9% of sites with GA4 probably load it twice (14% of online shops), which can double page views.
- 14% of sites with a Google Ads tag show no conversion tag. Add one, or import GA4 key events and make one primary.
- 43% of tagged sites use no consent tool we recognise, an upper bound; Germany's lower GA4 figure is mostly tags waiting for consent.
- The free tracking check reads your own site the same way.
Every figure you read in Google Analytics 4 or Google Ads starts as a tag on your website. Tags are added by agencies, plugins, shop apps and developers who have since left, and almost nobody looks at them again. So nobody notices when one is out of date, or there twice, or missing.
In October 2026 we read the public tracking of 3,187 mid-sized websites: what any visitor's browser receives. A quarter of them still load Universal Analytics, which Google stopped processing more than three years ago. That was the most common finding, but not the one most likely to be changing your numbers.
What we found
Totals only; we name no site. The figures and the full method are in our report, The state of website tracking 2026.
| What an outside check could see | Sites | Share |
|---|---|---|
| Universal Analytics still loading | 817 of 3,187 read | 26% |
| GA4 visible before consent | 1,827 of 3,187 read | 57% |
| GA4 probably loading twice | 162 of 1,827 with GA4 | 9% |
| Google Ads tag, no conversion tag | 109 of 798 with Google Ads | 14% |
| No consent tool we recognise | 849 of 1,968 with analytics or ad tags | 43% |
The sample was 5,000 websites drawn at random from the Tranco research ranking (list N26LW, ranks 10,000 to 1,000,000), 1,000 each ending in .co.uk, .de, .nl, .gr and .com. We read each home page and the public Google Tag Manager containers it loads on 14 October 2026. The other 1,813 were skipped, mostly sites that refused an automated visit or asked one to stay away.
Why each one matters for your numbers
Universal Analytics. Google says standard Universal Analytics properties stopped processing hits from 1 July 2023, and 360 properties with a current order on 1 July 2024. The old tag usually sits in a Tag Manager container beside the GA4 tag that replaced it. It rarely changes your numbers, but deleting it is not always safe: the same Google page says that if your GA4 property was set up to reuse the Universal Analytics tagging ("connected site tags"), GA4 keeps receiving data through it "only if your UA tags are still on your website". It was most common in Greece (30%) and least in Germany (18%).
GA4 twice. On 9% of sites with GA4, the same GA4 ID is installed in the page itself and through Tag Manager. Among online shops on Shopify or WooCommerce it was 14%. Usually a plugin or shop app put one there, and someone later added Tag Manager. If both copies send page views, every page view is counted twice. We say "probably" because one copy can be set to send no page views, or fire only on some pages.
Google Ads without a conversion tag. On 14% of sites with a Google Ads tag, we could see no conversion tag: the one that tells Google Ads a sale or a lead happened. Without conversions, Google Ads cannot learn which clicks became customers. There are two innocent explanations that an outside check cannot see: the conversion tag may fire only on a thank-you page, or the account may import GA4 key events instead of using a tag at all.
Consent. 43% of sites with analytics or ad tags used no consent tool we recognise. Many sites build their own banner, so this is an upper bound. It also explains a figure that looks odd: only 40% of German sites showed GA4, against 53% to 68% elsewhere. That is mostly sites that load Analytics only after a visitor accepts cookies, which our check never does. It does not mean they have no Analytics.
How to check and fix your own site
- Run a check from outside. Our free tracking check reads your home page and its public Tag Manager containers in seconds, with no sign-in.
- Remove Universal Analytics (IDs starting
UA-). First make sure your site has its own GA4 tag (an ID startingG-); if the old snippet is the only Google tag on the page, replace it with a Google tag before removing it, as Google suggests. Then delete the old tag in Tag Manager, or the old code from your theme, and submit and publish the container. - Find the second GA4. Open Tag Assistant, connect your site and load one page. Two page views to the same
G-ID means two installs. Look in your plugins or shop app and in Tag Manager, and keep one. If your shop app handles purchases, removing it may remove those events, so check what each copy sends before you choose. - Give Google Ads its conversions. Either add the Google Ads conversion tag where the sale or lead happens, or import from GA4: with the accounts linked, in Google Ads go to Goals, Conversions, New conversion action, Import, Google Analytics properties, Web, and tick the key event. Conversions created from GA4 are secondary by default, which means observation only, not used for bidding. With both a tag and an import for the same sale, make only one primary, or the Conversions column counts it twice.
- Pass consent to Google. Consent mode sends your banner's answer to Google's tags; it "doesn't provide a consent banner", so you need one as well. For visitors in the EEA, Google says that to keep using its tags for measurement, ad personalisation and remarketing, you must collect consent and share consent signals with Google.
How Glancely handles it
The tracking check is the tool the report was counted with. It reads the home page and up to three Tag Manager containers the page loads. It says GA4 "probably loads twice" only when the same ID is in both, reports a missing Google Ads conversion tag only when it could read the container, and recognises a list of common consent tools and Google's consent default. It cannot see tags that load only after consent, server-side tagging, a conversion tag on a thank-you page or key events imported from GA4. The free GA4 audit goes further by reading your GA4 property itself, read-only, after a Google sign-in.
Kosmas Botsis · Founder of Glancely
Kosmas Botsis is the founder and lead data engineer of KB Analytics, an analytics engineering practice in Athens working with clients across Europe and the US: more than 250 projects for over 194 clients, and in Toptal's top 3% of talent. Glancely is what came out of that work.
About Kosmas at KB AnalyticsMore from the blog
- Your return on ad spend is wrong if spend and revenue are in different currencies
Google Ads bills in the currency the account was opened in, and GA4 reports revenue in US dollars unless someone changed it. Divide one by the other and the return moves with the exchange rate; here is how to check and fix it.
- Why every cohort table looks like it is getting worse
Group customers by the month they arrived and newer groups always look worth less, because they have had less time to spend. Here is a fair way to compare them, in GA4 and in BigQuery.
- Why your return on ad spend counts sales your ads didn't make
Divide all of your revenue by your ad spend and the ads take credit for every organic, direct and email sale. Here is how to work out the return on the channels you actually pay for, and why it can be five times lower.