Website Tracking & Analytics Audit
PayHelm

Website Tracking & Analytics Audit

Free SEO + tracking audit — see exactly what's broken in under 60 seconds

Full GTM config is private — this reports the observed runtime container (what actually loads & fires). We'll email your report to the address above.

Works, with issueshttps://gflenv.com/

Your website's tracking setup is mostly in good shape, with Google Tag Manager (GTM) and Google Analytics 4 (GA4) firing correctly on your homepage. However, there are a couple of areas that need attention. The dataLayer was not initialized before the GTM container, which can affect the accuracy of your tracking data. Additionally, your site is still using the deprecated Universal Analytics, which should be phased out in favor of GA4 for more accurate and future-proof analytics. There is no Shopify-specific tracking detected, which is expected since your site isn't on Shopify. For your next steps, consider auditing product, cart, and checkout pages to ensure comprehensive tracking across your site. Given the issues identified, I recommend connecting your store to PayHelm AI for a more detailed analysis and guidance.

Tracking Health: 90/100 · ASEO Score: 86/100 · BAI SEO Score: 70/100 · C
Overall Tracking Health
90out of 100Grade AExcellent
Tag manager installed20/20

GTM container installed and loading.

GA4 tracking20/20

GA4 is installed and sending data.

Pageview / event coverage20/20

Not an ecommerce store — scored on basic analytics coverage.

Data quality15/15

No data-quality issues found in tracked events.

Consent Mode5/10

Consent Mode present but incomplete (v2 signals missing).

Performance10/10

Tags load quickly.

No conflicts0/5

Conflicting or deprecated analytics IDs detected.

Advanced Tracking Features
Consent Mode v2Warning

Consent Mode is set up, but the v2 signals (ad_user_data, ad_personalization) were not seen. Consent Mode v2 needs ad_user_data and ad_personalization for Google Ads remarketing and modeling to work.

default: noupdate: no✓ ad_storage✓ analytics_storage✗ ad_user_data✗ ad_personalizationCMP: CookieYes
Tag PerformancePass

Tags loaded quickly (GTM in 0.84s) — no performance concern.

GTM 0.84sGA4 first hit 2.37sDOM ready 1.35sPage load 5.60s
Cross-domain TrackingInfo

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.

Enhanced ConversionsInfo

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.

User-ID TrackingInfo

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 Review
86out of 100Grade BGood

SEO basics are mostly in place with a few opportunities to improve.

Title tagPass

Title is 70 characters — within the ideal 30–70 character range.

GFL Environmental Inc. - Waste Management & Environmental Services (70 chars)
Meta descriptionWarning

Meta description is 46 characters. Aim for 70–160 chars to maximise click-through rate.

Waste Management & Infrastructure Services (46 chars)
H1 headingPass

One H1 heading found — the recommended structure for every page.

Green Today. Green For Life.
Robots / indexabilityPass

No noindex directive — the page is eligible to be indexed.

robots: index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1
Canonical URLPass

Canonical tag points to the page itself — no duplicate-content signals sent to search engines.

https://gflenv.com/
Open Graph tagsWarning

1 Open Graph tag(s) missing. Complete the set for consistent social link previews.

og:title ✓ og:description ✓ og:image ✗
Structured data (Schema.org)Pass

Structured data found — search engines can use it to generate rich results (star ratings, FAQs, products, breadcrumbs, etc.).

JSON-LD script found
Mobile viewportPass

Viewport meta tag found — the page is set up for mobile-friendly rendering.

viewport meta tag present
AI Discovery & AI SEOOpen to AI
70out of 100Grade CFair

The basics for AI access are in place, but there's no llms.txt yet — an easy, high-leverage addition.

llms.txt fileWarning

No llms.txt file found. This is a plain-text, markdown-style index of your key pages that AI assistants (ChatGPT, Claude, Perplexity) increasingly check to understand a site quickly.

No /llms.txt found (404 or empty).
AI crawler access (robots.txt)Pass

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.
Live AI crawler testPass

GPTBot's User-Agent successfully fetched the real page (HTTP 200, ~1660 words) — AI crawlers are not blocked at the server level.

GPTBot's User-Agent received HTTP 200 with ~1660 words of visible text.
Structured data for AI answersPass

Structured data (JSON-LD) is present with types AI answer engines commonly extract facts from (e.g. FAQPage, Product, Organization).

Schema.org types found: BreadcrumbList, WebSite, Organization.
Server-rendered contentPass

Meaningful text content is present in the raw HTML response — AI crawlers that don't execute JavaScript can still read and cite this page.

~2125 words of text visible in the raw HTML response.
XML sitemapWarning

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.
AI crawlers
GPTBotOAI-SearchBotChatGPT-UserClaudeBotClaude-Webanthropic-aiPerplexityBotPerplexity-UserGoogle-ExtendedApplebot-ExtendedBytespiderCCBotAmazonbotcohere-aiMeta-ExternalAgent
Opportunities
  • Add an /llms.txt file listing your most important pages (pricing, docs, product pages) in markdown format — it gives AI assistants a fast, reliable summary of your site instead of guessing from crawled HTML.
  • 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.
GTM-K6XQ4WVhead
Loaded
Tags(5)

Marketing & analytics tags observed sending data while the page loaded.

HotjarAnalytics
2 hits
Microsoft ClarityAnalytics
9 hits
Meta PixelPixel
6 hits
Google AdsConversion / Remarketing
6 hits
Google Analytics 4GA4 Event · G-VG1V0V3TZC
1 hit
Triggers(6)

Every dataLayer push observed during page load — with full payload and configuration analysis.

GTM lifecycle events (4)— gtm.js, gtm.dom, gtm.load, etc.
Variables(11)

Data points present in the dataLayer that your tags can read (the values pushed alongside each event).

gtm.starteventgtm.uniqueEventIdgtm.elementgtm.elementClassesgtm.elementIdgtm.elementTargetgtm.triggersgtm.elementUrlcmdtarget
Network hits(28)

The actual tracking requests your browser sent — the ground-truth proof that a tag fired.

200gtm.jshttps://www.googletagmanager.com/gtm.js?id=GTM-K6XQ4WV
200gtag.jshttps://www.googletagmanager.com/gtag/js?id=G-VG1V0V3TZC&cx=c&gtm=4e69g1h2
200analyticshttps://static.hotjar.com/c/hotjar-1357291.js?sv=7
200analyticshttps://www.clarity.ms/tag/s8voq54k4j?ref=gtm
200pixelhttps://connect.facebook.net/en_US/fbevents.js
200gtag.jshttps://www.googletagmanager.com/gtag/js?id=UA-101400970-1&cx=c&gtm=4e69g1h2
204adshttps://stats.g.doubleclick.net/g/collect?v=2&tid=G-VG1V0V3TZC&cid=1499065939.1789674344&gtm=45je69g1h2v885715072z89107995846za20gzb9107995846zd9107995846xf1&rc
beaconga4-collecthttps://analytics.google.com/g/collect?v=2&tid=G-VG1V0V3TZC&gtm=45je69g1h2v885715072z89107995846za20gzb9107995846zd9107995846xf1&_p=1789674341872&_gaz=1&gcd=13l
beaconadshttps://ad.doubleclick.net/ccm/s/collect?auid=1359021893.1789674344&gtm=45je69g1h2v885715072z89107995846za20gzb9107995846zd9107995846xecxf1&fmt=8
200adshttps://googleads.g.doubleclick.net/pagead/viewthroughconversion/17625348578/?random=1789674344036&cv=11&fst=1789674344036&bg=ffffff&guid=ON&async=1&en=gtag.con
200adshttps://googleads.g.doubleclick.net/pagead/viewthroughconversion/17412946648/?random=1789674344006&cv=11&fst=1789674344006&bg=ffffff&guid=ON&async=1&en=gtag.con
200adshttps://googleads.g.doubleclick.net/pagead/viewthroughconversion/18242639394/?random=1789674344067&cv=11&fst=1789674344067&bg=ffffff&guid=ON&async=1&en=gtag.con
200adshttps://googleads.g.doubleclick.net/pagead/viewthroughconversion/18245362684/?random=1789674344080&cv=11&fst=1789674344080&bg=ffffff&guid=ON&async=1&en=gtag.con
200analyticshttps://scripts.clarity.ms/0.8.70/clarity.js
200analyticshttps://script.hotjar.com/modules.e762be2b6b709245aabb.js
200pixelhttps://connect.facebook.net/signals/config/714544618909178?v=2.9.403&r=stable&domain=gflenv.com&hme=ecef7557496abce7ebfd30d9fec7f02b78383ffbf3f454783aea671f0de
200ga-otherhttps://www.google-analytics.com/analytics.js
200pixelhttps://connect.facebook.net/signals/config/1956278275077444?v=2.9.403&r=stable&domain=gflenv.com&hme=ecef7557496abce7ebfd30d9fec7f02b78383ffbf3f454783aea671f0d
200pixelhttps://www.facebook.com/tr/
204analyticshttps://o.clarity.ms/collect
204analyticshttps://o.clarity.ms/collect
200analyticshttps://www.clarity.ms/tag/s8voq54k4j?ref=gtm
200pixelhttps://www.facebook.com/tr/
200pixelhttps://www.facebook.com/tr/
302analyticshttps://c.clarity.ms/c.gif
200analyticshttps://c.clarity.ms/c.gif?ctsa=mr&CtsSyncId=15B459B62F9F413581B881DAAB9A9C0E&MUID=3E8A942B7CAA6B4E2CA983FC7D966A89
200analyticshttps://www.clarity.ms/tag/s8voq54k4j?ref=gtm
204analyticshttps://o.clarity.ms/collect
Checks
GTM container detectedPass

GTM-K6XQ4WV

A Google Tag Manager container is installed on this page.

Container script loads (gtm.js)Pass

1/1 container(s) returned a successful gtm.js response.

The container's JavaScript downloaded successfully, so GTM can run.

Noscript fallback presentPass

Found <noscript> ns.html iframe.

The fallback for visitors with JavaScript disabled is in place.

Snippet placement in <head>Pass

GTM snippet appears inside <head>.

The container is loaded early, as Google recommends, so tags fire as soon as possible.

dataLayer initialised before GTMWarning

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 issue
GA4 firingPass

G-VG1V0V3TZC — collect hit observed.

Google Analytics 4 is actively sending pageview/event data.

Deprecated Universal AnalyticsWarning

Found UA-101400970-1.

Universal Analytics stopped processing data in 2023. These tags do nothing and should be removed.

Fix this issue
Google Consent Mode v2Warning

default=false, update=false, signals=[ad_storage, analytics_storage], CMP=CookieYes

Consent Mode is set up, but the v2 signals (ad_user_data, 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 issue
Tag load performancePass

GTM 842ms, GA4 first hit 2372ms, DOMContentLoaded 1355ms

Tags loaded quickly (GTM in 0.84s) — no performance concern.

Cross-domain trackingInfo

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.

Enhanced Conversions (Google Ads)Info

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.

User-ID tracking (GA4)Info

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.

Ask a follow-up question