Free tool
Is your tracking
actually working?
To check if your tracking is working, look in your page's source code for the tag each ad platform needs, then make sure nothing is installed twice. Paste your page source below and this checker finds Google Tag Manager, GA4, Google Ads, Meta Pixel, LinkedIn and Microsoft tags, consent mode and duplicates, then ranks what to fix. Duplicates come first: Google's own guide says to call config only once per Google tag, because a tag set up twice counts every result twice.
One paste, four ad platforms plus GA4 and consent, duplicates flagged, fixes ranked. Runs in your browser. The code you paste is searched as text, never run, and nothing is sent anywhere.
Tracking tag checker
What's really
on your page?
Open your website in Chrome or Edge on a computer. Right-click an empty part of the page and choose 'View page source'. Press Ctrl+A (Cmd+A on a Mac) to select all, copy, and paste it below. Do it on your home page first, then on your thank-you or order confirmation page. The starting example is made up.
Found on this page
Fix first
A check of the source you pasted, not your live site. Tags added later by Tag Manager, apps or server-side tagging won't show in the source, so 'not found' means 'not in the code', not 'not running'.
How to get
your page source.
Use a computer, not a phone. Open your site in Chrome, Edge or Firefox, right-click an empty part of the page and choose 'View page source'. A new tab opens full of code. Press Ctrl+A (Cmd+A on a Mac), copy, and paste it into the box. In Safari, turn on the developer features in Settings first.
Check two pages. Your home page shows what loads everywhere. Your thank-you or order confirmation page shows whether anything fires when a result actually happens. If that page only appears after a real enquiry, send yourself a test one and view the source of the page you land on.
Copy the source, not the page. Selecting the words on the page itself gives you text with no code in it, and the checker will find nothing.
What it
looks for.
Google: the Tag Manager container (a GTM- ID) and the Google tag. Google says new Google tags get a GT- ID, and older ones start with G- for Analytics or AW- for Google Ads. The checker looks for all three. On a thank-you page it also looks for a Google Ads conversion event, the line that tells Google a result happened.
Meta: the pixel's base code, which Meta says belongs in the head of every page you track, and the pixel ID it starts with. LinkedIn: the Insight Tag and its partner ID. Microsoft: the UET tag, which Microsoft says goes on every page of your website.
Consent: whether the page sets a consent default, whether it includes the two settings Google added in consent mode v2, and whether it comes first. Google's set-up guide says to set the default before any commands that send measurement data, and that the order is vital.
And the leftovers: old Universal Analytics code, extra containers, and signs of server-side tagging.
Why duplicates
come first.
Automated bidding learns from whatever the tag reports. If every enquiry counts twice, Google and Meta think each click is worth twice what it is, and bid accordingly. The reports look great. The bank balance doesn't move.
Google's Merchant Center help puts it plainly: events can be counted more than once if you have multiple Google tags set up, and duplicates cause inaccurate data. The usual cause is two people solving the same problem at different times: a theme setting, then a plugin, then a Tag Manager tag, all doing one job.
So the checker looks for the same ID set up twice, the same pixel started twice, and the Google tag sitting in the code while Tag Manager is also on the page. That last one isn't always a duplicate, but it's worth five minutes in Tag Manager to find out.
What a paste
can't show.
Anything added after the page loads. Tags inside Tag Manager, tags added by Shopify or a site builder's settings, and tags loaded by a consent banner after someone clicks 'accept' won't appear in the source. When Tag Manager is present, the checker says a missing tag may be in there rather than calling it missing.
Anything sent from a server. Server-side tagging is processed on a server you control, rather than in the browser, and Meta's Conversions API sends results from your server or CRM. Neither shows in the page.
Whether the tags work. Code can be present and still broken. To see tags fire, use Google's Tag Assistant and the test events view in Meta's Events Manager, then send a test enquiry and check it arrives once in each platform.
Consent mode,
the Australian version.
Consent mode lets Google tags change what they do based on a visitor's consent choice. In basic mode, tags wait until someone answers the banner. In advanced mode, tags load straight away and send cookieless measurements until consent is given.
Google requires consent signals for ads aimed at users in the European Economic Area. Australia has no equivalent Google rule. What applies here is the Privacy Act, which is federal, so the rule is the same in NSW as in every other state. The OAIC has guidance on tracking pixels, and many businesses with turnover of $3 million or less are exempt, with exceptions such as health services.
For most Australian businesses the practical steps are the same either way: say what you track in your privacy policy, never send health or other sensitive details to an ad platform, and add consent mode if you get visitors from Europe.
What I see most often
The usual
leaks.
- 1
The pixel installed twice
Once in the theme and once through a plugin or Tag Manager, so every page view and lead counts double.
- 2
A thank-you page with nothing on it
Tags load on every page, but nothing fires at the moment the enquiry or sale actually happens.
- 3
Old code nobody removed
Universal Analytics, a previous agency's container and pixels from campaigns long finished, all still loading.
The honest bit. A clean result here means the code looks right, not that the numbers are. The real test is a test enquiry: send one, then check it shows up once, and only once, in GA4 and in each ad platform.
Questions
people ask.
How do I check if my Google tag is working?
Paste your page source into the checker on this page to see which Google IDs are installed and whether any are doubled up. Then use Google's Tag Assistant to watch the tags fire as you click through, and send a test enquiry.
How do I know if my Meta Pixel is working?
Check the base code appears once in your page source, with your pixel ID: this tool does that. Then use the test events view in Meta's Events Manager to watch a page view and your lead or purchase event arrive.
Why does a tag show as missing when I know it's installed?
It's probably loaded by Tag Manager, an app or server-side tagging, none of which show in the page source. The checker flags when that's likely. Tag Assistant or the platform's own event testing will confirm it.
Do I need consent mode in Australia?
Google's consent requirement is written for users in the European Economic Area. In Australia, the Privacy Act and the OAIC's guidance on tracking pixels apply. If you get European visitors, set it up.
Is it safe to paste my page source here?
Yes. Page source is public: anyone can view it in their browser. The tool searches the text without running it, and sends nothing anywhere.
Related
Keep
going.
- ServiceTracking and analyticsGA4, Tag Manager and sales sent back to the ad platforms.
- GlossaryDigital marketing glossaryGA4, GTM, consent mode and the rest, in plain English.
- LabWhy your Google Ads look better than they areHow double counting and attribution flatter the numbers.
- MethodCause TestingProves what actually caused the sale.
- Free auditGoogle Ads auditI go through the account and send the top 3 fixes.
Want me to
take a look?
Takes a minute. Audits come back within 1 to 2 business days. For anything else, I'll get back to you as soon as possible.
What happens next
- 1I'll ask for read-only access, or just your website for a search audit.
- 2I go through it and write up the 3 biggest fixes.
- 3A 20-minute call to walk you through it. No pitch unless you ask.
