Validate a dataLayer push
Paste a dataLayer entry and this finds the things that quietly break triggers and destinations: an event name that isn't consistently cased, numeric fields arriving as strings, nulls and empty strings where a value failed to populate, and personal data you might not have meant to put there. It walks the whole object and lists every key path, so you can compare against your specification — or discover you don't have one.
Free30 minutesNo obligation
Validate a data layer push
Paste a dataLayer push and this checks the things that quietly break triggers: an event name that isn't consistently cased, numeric fields sent as strings, nulls and empty strings where a value failed to populate, and personal data you might not have meant to put there.
Paste a dataLayer push and press Check. Everything happens in your browser. Nothing is sent anywhere.
Data layer validator · what breaks
What this tool is for — Data layer validator
- 01
A trigger fires on some pages and not others
Usually inconsistent event naming.
- 02
A destination rejects your events
Often a type problem.
- 03
You're writing a data layer spec
And want to see what's actually there.
Data layer validator · the fix
What you get out of it — Data layer validator
Every key path listed
So you can compare against your spec.
Type inconsistencies flagged
Numeric fields sent as strings.
Possible personal data identified
Not as an accusation — as something to confirm is deliberate.
Data layer validator · architecture
Why the data layer is the highest-leverage thing to get right
It's the contract between the people who build the site and the people who measure it. Without one, tracking depends on markup.
- 1
CSS selectors break on every redesign
Silently, with no error anywhere. A data layer decouples tracking from presentation.
- 2
Type inconsistency travels
A value sent as a string on one page and a number on another is how one destination starts rejecting events and another doesn't.
- 3
Empty strings are usually failures
A value that failed to populate looks like a value that's present. Both are wrong; only one is obvious.
- 4
A spec nobody maintains is worse than none
Because people trust it. Comparing a live payload against the spec is how you find out which you have.
Data layer validator · diagnose
What this tool cannot tell you — Data layer validator
Stated up front, because a tool that implies more confidence than it has is worse than no tool. These are checks you have to run yourself.
- 01
Whether the values are correct
It checks shape and type. It can't see your order system.
- 02
Whether the push fires at the right moment
Timing is invisible in a payload. Test a single-page checkout specifically.
- 03
Whether it matches your specification
It lists key paths so you can compare. It doesn't know your spec.
- 04
Whether something reads from the DOM instead
Search your container for CSS selectors — each one is a redesign away from breaking.
Data layer validator · prove
How to confirm the result — Data layer validator
Against your own records, not against the tool's output.
Source of truth
a live data layer payload, compared field by field against your specification
- Every specified event confirmed firing on a real journey.
- Parameter types confirmed consistent across page types.
- No values read from CSS selectors.
- The spec confirmed matching live payloads rather than intentions.
- Reconciled over a fully closed window, matched per record rather than on totals.
- Re-checked after your next site release, which is when most breaks happen.
Data layer validator · free audit
What we check in the free audit
- Whether the values are correct
- Whether the push fires at the right moment
- Whether it matches your specification
- Whether something reads from the DOM instead
Checked against
a live data layer payload, compared field by field against your specification
Free30 minutesNo obligation
Data layer validator · when not to buy
Why this isn't gated — Data layer validator
There's no email form in front of it, and that's deliberate.
- A tool you have to pay for with your contact details is a lead form wearing a costume. If this is useful, it should be useful without a transaction.
- Everything it does runs in your browser. There is no endpoint, so there is nothing for us to collect even if we wanted to — open your network tab and check.
- It will tell you when you don't have a problem. That outcome costs us a sale and happens regularly, which is the point of publishing it rather than putting it behind a call.
- If it does find something and you'd rather fix it yourself, the reference pages on this site cover the how. Hiring us is one option, not the conclusion.
Data layer validator · what we deliver
What it checks — Data layer validator
Event name casing
Against lowercase snake_case, and suggests the corrected form.
Numeric field types
value, price, quantity, tax, shipping, revenue sent as strings.
Nulls and empty strings
Usually a value that failed to populate.
Personal data by key name
Flagged for confirmation rather than condemnation.
Pricing
Pick the package that fits your ad spend
Browser-side starter
$400One-time fee · lifetime ownership
If the tool found something and you'd rather not fix it yourself: we repair the root cause in your existing setup and verify it on a live conversion.
- Root cause fixed, not worked around
- Verified on a live conversion
- Reconciled against your own records
- Written handover
1st-party server-side
Recommended$800One-time fee · most popular
Removes the class of failure rather than the instance. Money events from your own records through a first-party container on your subdomain.
- First-party server container on your own subdomain
- Events from your records, not the browser
- Deduplicated on a shared event ID at every destination
- First-party cookies beyond Safari's 7-day cap
- 95%+ accuracy and 8+ Meta EMQ, guaranteed in writing
Full 1st-party stack
$1,800One-time fee · lifetime ownership
Every paid channel server-side plus the offline loop, with monitoring so the next break surfaces in days rather than at quarter end.
- Everything in 1st-party server-side
- Pinterest, Snapchat, Reddit and LinkedIn CAPI
- CRM and offline conversion loop
- Refunds and cancellations corrected wherever each platform allows it
- Monitoring on every destination
FAQ
Data layer validator questions, answered
Yes. It also tolerates single quotes and unquoted keys, so console output pastes fine.
Not as a problem — Enhanced Conversions and CAPI matching need it. It's flagged so you can confirm it's deliberate and that consent gates whatever reads it.
Numeric fields arriving as strings. It usually works until a destination decides it doesn't, and it's how page types silently diverge.
If tracking currently depends on CSS selectors, yes — that's the fix for redesigns breaking measurement silently.
Free · 30 min
Get a data layer spec your developers can build from
Free30 minutesNo obligation
