Website Tracking & Analytics Audit
Free SEO + tracking audit — see exactly what's broken in under 60 seconds
Your website's tracking setup shows a few areas that need attention. Google Tag Manager (GTM) is properly installed and functioning, but Google Analytics 4 (GA4) is not set up, which means you're missing out on detailed visitor insights. On this specific page, the Meta Pixel and Google Ads tags fired successfully, indicating that some tracking is working as intended. However, there are warnings about the dataLayer not being initialized correctly before GTM, which could affect data accuracy, and issues with Google Consent Mode that might impact compliance with privacy regulations. Since your store is not using Shopify, there's no need to worry about Shopify-specific tracking issues like Trekkie or Web Pixels API. To ensure comprehensive tracking, I recommend auditing other key pages such as product pages, cart, checkout, and order-confirmation pages. Given the tracking gaps identified, you might want to connect your store to PayHelm AI for a more thorough analysis and guidance on optimizing your analytics setup.
GTM container installed and loading.
No GA4 measurement detected.
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.
The v2 consent signals were seen, but the default consent state and a consent update after the user chooses were not observed. Consent Mode v2 needs both a gtag('consent','default',…) call before tags load and a gtag('consent','update',…) call once the visitor responds (CMP: Cookiebot).
Tags loaded quickly (GTM in 1.45s) — 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 35 characters — within the ideal 30–70 character range.
Earn Money With Affiliate Marketing (35 chars)Meta description is 43 characters. Aim for 70–160 chars to maximise click-through rate.
Glynn Kosky, Affiliate Marketing, Clickbank (43 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.
No robots meta tag (defaults to index, follow).Canonical tag points to the page itself — no duplicate-content signals sent to search engines.
https://millionairepartnership.com/webclass-d24-newAll core Open Graph tags found — links display richly when shared on social media.
og:title ✓ og:description ✓ og:image ✓No structured data found. Adding Schema.org markup can unlock rich snippets and improve your search appearance.
No structured data found.Viewport meta tag found — the page is set up for mobile-friendly rendering.
viewport meta tag presentThe basics for AI access are in place, but there's no llms.txt yet — an easy, high-leverage addition.
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).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.GPTBot's User-Agent successfully fetched the real page (HTTP 200, ~452 words) — AI crawlers are not blocked at the server level.
GPTBot's User-Agent received HTTP 200 with ~452 words of visible text.No structured data found. AI answer engines lean heavily on Schema.org markup (FAQPage, Product, Organization) to extract clean facts instead of parsing raw HTML.
No JSON-LD structured data found.Meaningful text content is present in the raw HTML response — AI crawlers that don't execute JavaScript can still read and cite this page.
~447 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.- 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.
- Add JSON-LD structured data (Organization + FAQPage at minimum) so AI assistants can extract accurate facts about your business instead of guessing from page text.
- 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 (2)— 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-K26K2JH7
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 issueNo GA4 measurement detected.
No Google Analytics 4 tag was detected on this page.
3 error(s) logged.
JavaScript errors were logged during page load. These don't necessarily affect tracking — only errors that directly interrupt pixel execution matter. See any vendor-specific errors below for actionable issues.
default=false, update=false, signals=[ad_user_data, ad_personalization], CMP=Cookiebot
The v2 consent signals were seen, but the default consent state and a consent update after the user chooses were not observed. Consent Mode v2 needs both a gtag('consent','default',…) call before tags load and a gtag('consent','update',…) call once the visitor responds (CMP: Cookiebot).
Fix this issueGTM 1448ms, DOMContentLoaded 2444ms
Tags loaded quickly (GTM in 1.45s) — 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.
These tracking scripts are hardcoded directly in your page HTML. Moving them into GTM makes them easier to update, pause, version, and conditionally fire — without touching your code.
Meta Pixel script (fbevents.js) found hardcoded directly in the page HTML.
Fix: Remove the hardcoded snippet and use a GTM 'Facebook Pixel' or 'Custom HTML' tag instead.
Risk: If GTM also fires Meta Pixel, you'll double-count conversions and inflate ROAS. Centralising in GTM also lets you pause, version, and conditionally fire without a code deploy.
Failed to load resource: the server responded with a status of 403 ()
Refused to execute script from 'https://millionairepartnership.com/assets/userevents/application.js' because its MIME type ('text/html') is not executable, and strict MIME type checking is enabled.
Failed to load resource: net::ERR_FAILED
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.