Website Tracking & Analytics Audit
Free SEO + tracking audit — see exactly what's broken in under 60 seconds
Your website's tracking setup is mostly functioning well, but there are a few areas to improve. Google Tag Manager (GTM) is correctly installed and active, and Google Analytics 4 (GA4) is firing as expected. However, there is a warning regarding the initialization of the dataLayer, which should ideally occur before the GTM container script. Additionally, Google Consent Mode is not fully configured, which could affect data collection under certain privacy settings. Since your site is not on Shopify, there are no concerns about Shopify-native analytics or duplicate pixel risks. Next, consider auditing other page types like product pages, cart, and checkout to ensure comprehensive tracking across your site. Given the current warnings, it might be beneficial to connect your store to PayHelm AI for further insights and optimization.
GTM container installed and loading.
GA4 is installed and sending data.
Not an ecommerce store — scored on basic analytics coverage.
No data-quality issues found in tracked events.
Consent Mode present but incomplete (v2 signals missing).
Tags load quickly.
No conflicting analytics IDs.
Consent Mode is set up, but the v2 signals (ad_personalization) were not seen. Consent Mode v2 needs ad_user_data and ad_personalization for Google Ads remarketing and modeling to work.
Tags loaded quickly (GTM in 1.18s) — no performance concern.
No cross-domain (linker) tracking was detected. If your checkout or other steps live on a different domain, set up linker tracking so visits aren't split into separate sessions.
Google Ads Enhanced Conversions were not detected. They send hashed first-party data (email/phone) to recover conversions lost to cookie restrictions — worth enabling if you run Google Ads.
GA4 User-ID tracking was not detected. If you have logged-in users, setting a User-ID lets GA4 join their activity across devices and sessions.
SEO basics are mostly in place with a few opportunities to improve.
Title is 30 characters — within the ideal 30–70 character range.
Béton poli et revêtement époxy (30 chars)Meta description is 147 characters — within the ideal 70–160 character range.
Découvrez des conseils essentiels pour l'entretien et la durabilité du béton dans notre blog dé… (147 chars)3 H1 headings found. Most SEO guidance recommends a single H1 per page to signal the primary topic clearly.
3 H1 tags found.No noindex directive — the page is eligible to be indexed.
robots: follow, index, max-snippet:-1, max-video-preview:-1, max-image-preview:largeCanonical tag points to the page itself — no duplicate-content signals sent to search engines.
https://betonmaintenance.ca/All core Open Graph tags found — links display richly when shared on social media.
og:title ✓ og:description ✓ og:image ✓Structured data found — search engines can use it to generate rich results (star ratings, FAQs, products, breadcrumbs, etc.).
JSON-LD script foundViewport meta tag found — the page is set up for mobile-friendly rendering.
viewport meta tag presentAI discoverability looks strong — AI crawlers can access, parse, and cite this site's content.
llms.txt is present and well-formed — AI assistants that check this file can quickly find your key pages and docs.
Found at /llms.txt with a title heading and 41 linked resources.robots.txt doesn't block any major AI crawler — ChatGPT, Claude, Perplexity, and Google's AI features can all fetch and cite your content.
All 15 known AI crawlers are allowed.Structured data (JSON-LD) is present with types AI answer engines commonly extract facts from (e.g. FAQPage, Product, Organization).
Schema.org types found: WebSite.Meaningful text content is present in the raw HTML response — AI crawlers that don't execute JavaScript can still read and cite this page.
~964 words of text visible in the raw HTML response.No sitemap.xml found. Without one, crawlers (including AI crawlers) can only discover pages by following links, which may miss deeper content.
No /sitemap.xml found.- Publish a sitemap.xml — it's the fastest way for both search engines and AI crawlers to discover every page worth citing, not just the ones linked from your homepage.
Marketing & analytics tags observed sending data while the page loaded.
Every dataLayer push observed during page load — with full payload and configuration analysis.
›GTM lifecycle events (3)— gtm.js, gtm.dom, gtm.load, etc.
Data points present in the dataLayer that your tags can read (the values pushed alongside each event).
The actual tracking requests your browser sent — the ground-truth proof that a tag fired.
GTM-NM5KW9P
A Google Tag Manager container is installed on this page.
1/1 container(s) returned a successful gtm.js response.
The container's JavaScript downloaded successfully, so GTM can run.
Found <noscript> ns.html iframe.
The fallback for visitors with JavaScript disabled is in place.
GTM snippet appears inside <head>.
The container is loaded early, as Google recommends, so tags fire as soon as possible.
dataLayer was not clearly initialised before the container snippet.
If the container loads before dataLayer is ready, early values (like ecommerce data) can be lost.
Fix this issueG-KBJ2KJC78R — collect hit observed.
Google Analytics 4 is actively sending pageview/event data.
default=false, update=false, signals=[ad_storage, ad_user_data]
Consent Mode is set up, but the v2 signals (ad_personalization) were not seen. Consent Mode v2 needs ad_user_data and ad_personalization for Google Ads remarketing and modeling to work.
Fix this issueGTM 1177ms, GA4 first hit 2212ms, DOMContentLoaded 1792ms
Tags loaded quickly (GTM in 1.18s) — no performance concern.
No linker configuration observed
No cross-domain (linker) tracking was detected. If your checkout or other steps live on a different domain, set up linker tracking so visits aren't split into separate sessions.
Not detected
Google Ads Enhanced Conversions were not detected. They send hashed first-party data (email/phone) to recover conversions lost to cookie restrictions — worth enabling if you run Google Ads.
Not detected
GA4 User-ID tracking was not detected. If you have logged-in users, setting a User-ID lets GA4 join their activity across devices and sessions.
Ecommerce Funnel — Not Applicable
This site doesn't appear to be an online store, so the ecommerce funnel report has been skipped. GTM tag coverage, triggers, variables, and on-page scripts are still audited above.
If this site does sell products, try re-running the audit on a product page URL — that will surface add-to-cart, checkout, and purchase event coverage.
Your tracking has gaps — PayHelm can fix this.
Broken tags mean lost attribution and bad decisions. PayHelm unifies your ecommerce, ad, and analytics data so every number is trustworthy — no guesswork.