Website attribution audit
Paste your website address and we will check whether your site can tell which ad, email or post brought each visitor in. We test 7 things that decide whether the source of a visit survives from the first click to the lead form, then score your site out of 100. It takes about 30 seconds and you do not need to sign up.
What a website attribution audit checks
Attribution breaks in small places: a tag that never loads, a pixel that fires before consent, a redirect that drops the query string, a form with no hidden fields. This attribution audit tool looks for each of those gaps on your live site. Seven checks are scored, for a total of 100. Pass earns full points, warn earns half, fail earns none.
Grades: A 90+ Solid, B 75 to 89 Good, C 60 to 74 Gaps, D 40 to 59 Leaky, F under 40 Flying blind.
Analytics (GA4)25 pointsThe analytics tag most sites use to record visits and where they came from.
- What it is
- Google Analytics 4 is the analytics tag most sites use to record visits and where they came from.
- Why it matters
- Without GA4 on every page, you cannot see which channel sent a visit, so there is nothing to attribute.
- How to fix
- Add the GA4 tag (gtag.js or through Tag Manager) to every page template, not only the homepage. Confirm the same measurement ID loads everywhere and that it is not loaded twice.
Server-side tracking (bonus)Bonus, up to +5Sending events from your server, not only from the browser.
- What it is
- Sending events to analytics and ad platforms from your server, such as server-side Tag Manager or the Meta Conversions API, instead of only from the browser.
- Why it matters
- Browser tags can be blocked by ad blockers and privacy features. A server path sends conversion data that browser tags can miss.
- How to fix
- Set up a server-side container or a platform's server API, and send key conversions through it alongside your browser tags. Trakt does not set this up for you. It is a bonus because few sites have it yet: it adds up to 5 points and never costs you any.
Forms capture UTMs and click IDs25 pointsYour lead forms save UTMs and click IDs from the visit, usually in hidden fields.
- What it is
- Your lead forms save the UTM parameters and click IDs (gclid, fbclid, msclkid, li_fat_id and similar) from the visit, usually in hidden fields.
- Why it matters
- This is where most attribution is lost. A visitor lands with UTMs on page 1, browses to page 2, and the parameters are gone by the time they fill in the form. The lead arrives with no source.
- How to fix
- Store UTMs and click IDs in a first-party cookie on landing, then write them into hidden form fields on submit. You can build this yourself or use the Trakt script, which does exactly this and respects consent.
Cookie consent with Consent Mode v215 pointsA banner that passes consent signals to Google tags and holds other tags until the visitor agrees.
- What it is
- A cookie banner that passes consent signals to Google tags through Consent Mode v2, and holds other tags until the visitor agrees.
- Why it matters
- Google needs consent signals for conversion measurement for users in the EEA and UK. Tags that fire before consent can put your data and compliance at risk.
- How to fix
- Use a consent platform that supports Consent Mode v2, set default consent states before any tag loads, and trigger ad pixels only after consent.
Ad platform pixels10 pointsTags from Meta, LinkedIn, Google Ads, TikTok and Reddit that report conversions.
- What it is
- Tags from Meta, LinkedIn, Google Ads, TikTok and Reddit that report conversions back to each platform.
- Why it matters
- Missing pixels mean platforms cannot match conversions to ads. Pixels loaded twice can double-count.
- How to fix
- Install each pixel once, ideally through Tag Manager, and check each platform's diagnostics for duplicates. Trakt does not install or fix pixels.
Redirects and links keep UTMs15 pointsRedirects and links on your homepage pass the query string through.
- What it is
- Redirects and internal links on your homepage pass the query string through, and the homepage does not return an error.
- Why it matters
- A redirect that strips ?utm_source=... makes a paid click look like direct traffic.
- How to fix
- Update redirect rules to preserve the query string, fix broken pages, and test your main tracking links end to end. Trakt does not change your redirects.
Google Tag Manager10 pointsA container that loads and manages your tags from one place.
- What it is
- A container that loads and manages your tags from one place.
- Why it matters
- It makes tags easier to audit and keeps them consistent across pages. A site that loads its tracking directly (gtag.js for GA4, or the Trakt tracker) passes this check without it, because the container is a means, not the goal.
- How to fix
- Install the GTM container snippet on every page and move existing tags into it over time.
Also found (not scored)Not scoredHeatmap and session tools, Search Console verification, and CRM and chat scripts.
- What it is
- We also show heatmap and session tools (such as Microsoft Clarity, Hotjar, FullStory), Search Console verification, and CRM and chat scripts.
- Why it matters
- They give useful context but do not decide whether a visit keeps its source, so they carry no points.
- How to fix
- Nothing to fix. Use them as a map of what else is running on your site.
A good score is only half the job
These checks tell you the tags are in place. They do not prove that the source of each visit is saved on the lead. Trakt handles the form part: it keeps UTMs and click IDs from your tracking links and adds them to every form submission. See how it works on Trakt forms and in the attribution overview.
Website attribution audit FAQ
What is a website attribution audit?
It is a check of whether your site records where each visitor came from and keeps that information until they convert. This tool looks at analytics, server-side tracking, forms, consent, pixels, Tag Manager and redirects, then gives a score out of 100.
Is the attribution audit tool free?
Yes. You can scan your site without an account. Creating a Trakt account is optional.
Do you save my scan results?
Share links last 7 days. To keep a report longer, download it as a PDF (it is made in your browser, so nothing is sent to us and no email is needed) or create a free account and save it. We load your public homepage like a browser would. We never submit your forms or log in.
How do I check if my forms capture UTMs?
Run the audit. We find the forms and embedded forms on your homepage and look for hidden UTM and click ID fields. We only load the homepage, so we cannot test whether UTMs survive when a visitor moves to a second page. To test by hand, visit your site with ?utm_source=test added, click to another page, submit a form and see if test arrives with the lead.
How do I check Consent Mode v2 on my site?
The audit looks for a consent banner, checks the page source for Consent Mode v2 signals, and flags tags that appear to load before consent. You can also confirm in Google Tag Assistant, which shows consent state for each Google tag.
Can the audit check GA4 setup in detail?
It confirms whether a GA4 tag loads on your homepage and reports the measurement ID. It does not log into your GA4 property, so it cannot check events, conversions or settings inside it.
Why does Search Console say likely verified?
Search Console verification can be done in several ways, and only the HTML meta tag is visible on your page. If we see it, we say likely verified. We cannot see DNS or file-based verification, so a missing tag does not mean you are not verified.
How do I fix a failed check?
Each result explains what we found and what to change. Most fixes happen in your site, Tag Manager or consent platform. The forms check can be fixed by adding the Trakt script, which saves UTMs and click IDs and adds them to your forms. The other checks need changes on your side.
What does the Trakt script fix?
Only the forms check. It saves UTMs and click IDs in a consent-aware first-party cookie and adds them to your forms. It does not set up server-side tracking, install pixels, fix redirects or configure GA4.
How much does Trakt cost?
Starter is free forever with no card needed. Plus is $9 a month and Pro is $19 a month.
More reading: why UTM data is lost on form submissions, leads showing as direct traffic, and our guides. See pricing for what each plan includes.