Get your Broken after redesign tracking to 95%+ accuracy guaranteed in writing.
Nothing is wrong with the site. The tracking that was wired into the old one just didn't come with it — the thank-you URL changed, the theme renamed its dataLayer keys, the checkout moved hosts, and the product IDs are new. We compare old to new tag by tag, rebuild against what the site actually does now, and hand your developers a spec so the next redesign isn't another outage.
Free30 minutesNo obligation
Broken after redesign · what breaks
What a redesign actually breaks
- 01
The thank-you page URL changed
Triggers keyed to /order-confirmation or /thank-you stop matching the new path, and every conversion tag depending on that URL silently stops firing. No error appears in GTM, in Ads, or anywhere else.
- 02
The new theme renamed its dataLayer keys
It pushes productId where the old one pushed item_id, or nests the ecommerce object a level deeper. Variables resolve to undefined and events go out with empty value and currency — firing, but carrying nothing.
- 03
It's a SPA now, and pageviews stopped after the first load
React, Next or a headless storefront changes routes without a page load. If History Change triggers were never added, every step after the landing page is invisible, including the entire checkout.
- 04
The replatform changed your product IDs
New SKUs or variant IDs in purchase events no longer match the Merchant Center feed or the Meta catalog, so dynamic remarketing shows unmatched items and your value-based audiences quietly empty out.
Broken after redesign · the fix
What changes once the new site is tagged for what it actually is — Broken after redesign
Conversions come back from the pages that now exist
Triggers rebuilt against the new routes, the new confirmation flow and the SPA's history events, so purchase and lead fire from the real steps instead of from URLs that were retired at launch.
No double counting from the snippet the old theme left
Hardcoded gtag or pixel code that survived the migration gets removed, or deduplicated against GTM by transaction ID, so you stop reading two of everything and calling it growth.
Catalog and feed line back up
Item IDs in your events matched to the new feed IDs, checked in the diagnostics panel, so dynamic ads have products to show and value-based audiences repopulate.
A spec that survives the next redesign
The dataLayer contract written down and handed to your developers, so the next theme update is a pre-launch checklist item rather than a week of nobody noticing.
Broken after redesign · normal or broken
A launch dip is normal. A flatline means a trigger stopped matching.
Traffic, rankings and engagement genuinely wobble after a replatform, and no tagging work changes that. Conversions dropping to exactly zero on the day of launch is a different animal, and it is always mechanical.
Normal, not a fault
Organic sessions dip for a few weeks after a replatform
New URLs, re-crawled pages and redirects settling. A gradual dip that recovers is search catching up with you. It looks alarming next to a conversion flatline and has nothing to do with it.
Landing-page paths in old reports no longer resolve
Historical GA4 rows still hold the retired URLs, so year-over-year page reports read like everything broke. That's a reporting artifact of changing your URL structure, not lost tracking.
Conversion counts shift when the funnel itself changed
If checkout went from three steps to one, fewer people abandon and the mid-funnel events genuinely stop existing. Compare the money event across the launch, not the step events that were redesigned away.
Engagement metrics move after a design change
Faster pages and different navigation change behavior for real. Bounce and engagement rate moving on the same day as the launch is usually the new site doing its job, not a broken tag.
Actually broken
Purchases or leads went to exactly zero on launch day
Not a dip — zero. A trigger keyed to /thank-you or /order-confirmation stopped matching a path that no longer exists, and nothing in GTM, Google Ads or GA4 will raise an error about it.
Events fire but arrive with empty value and currency
The tag runs, the payload is hollow. The new theme renamed its dataLayer keys — productId where the old one pushed item_id, or ecommerce nested a level deeper — so your variables resolve to undefined.
Only the landing page is recorded on the new SPA
React, Next or a headless storefront changes route without a page load. Without History Change triggers the entire checkout is invisible while the homepage looks perfectly tracked.
Conversions doubled instead of dropping
The old theme's hardcoded gtag or pixel survived the migration alongside the GTM tag. Two tags, one order, and the post-launch report reads like growth right up until you reconcile it.
Broken after redesign · diagnose
An hour in GTM Preview finds most of what the launch broke
Do this before hiring anyone — the list it produces is most of the actual job.
- 01
Walk your own funnel in GTM Preview as a customer
Open Preview against the live new site and go from ad landing page to confirmation with a real test order. Write down every trigger that doesn't fire and every variable that reads undefined.
- 02
Read the dataLayer at the confirmation step
Type `dataLayer` into the console on the thank-you page and expand the last push. Compare its key names against what your GTM variables are looking for. Renamed keys show themselves immediately here.
- 03
Search the new page source for stray tags
View source and search for `gtag(`, `fbq(`, `AW-` and `GTM-`. Any container or pixel ID you don't recognize is either a staging container shipped to production or a leftover the migration carried over.
- 04
Try last quarter's top converting URLs on the new site
Pull the top converting paths out of GA4 and open each one. Every 404 or unexpected redirect is a trigger that needs rewriting, and it's usually the confirmation page that nobody thought to test.
- 05
Check the console for blocked requests
Console errors mentioning Content-Security-Policy mean the new site's headers are blocking your own tags. A fresh CSP shipped with a redesign is a very quiet way to kill your tracking.
- 06
Spot-check one product ID against your feed
Take an item_id from a live purchase event and search for it in Merchant Center and the Meta catalog. Replatforms reissue SKUs and variant IDs far more often than anyone expects them to.
Broken after redesign · prove
How we prove the new site is counted like the old one was — Broken after redesign
The test isn't whether tags fire. It's whether one order produces exactly one conversion, checked against your own order records.
Source of truth
Your order table or CRM, for the days since launch
- Run live test transactions on desktop and mobile and confirm exactly one conversion per order — not zero, and not two.
- Match a full day of platform-reported conversions to your order table by transaction ID, and account for every difference.
- Compare the day before launch to the day after on the money event only, ignoring step events the redesign removed.
- Confirm item IDs in purchase events resolve in Merchant Center and the Meta catalog with no unmatched rows at variant level.
- Verify the server container's transport URL and the new site's Content-Security-Policy both allow the first-party subdomain.
- Re-check the full funnel a week after launch, once caching, redirects and the CDN have settled into their final state.
Broken after redesign · free audit
What we check in the free audit
- Walk your own funnel in GTM Preview as a customer
- Read the dataLayer at the confirmation step
- Search the new page source for stray tags
- Try last quarter's top converting URLs on the new site
- Check the console for blocked requests
- Spot-check one product ID against your feed
Checked against
Your order table or CRM, for the days since launch
Free30 minutesNo obligation
Broken after redesign · when not to buy
When a post-redesign rebuild isn't warranted
Not every redesign breaks tracking, and some breaks are a one-hour job you should do yourself.
- The redesign was a visual refresh on the same platform, same URLs, same theme events. Check GTM Preview once and you're probably done.
- You haven't launched yet. Put the tagging requirements into the build spec and run a container against staging — cheaper and calmer than this.
- You don't run paid media and don't make decisions off the data. There's no bidding algorithm to starve, so a slower internal fix is defensible.
- A developer on your team already found and fixed the broken triggers and your orders reconcile. Verify it once; don't pay to redo it.
Broken after redesign · what we deliver
What we rebuild on the new site — Broken after redesign
A before-and-after tag inventory
Every tag, trigger and variable from the old site listed against its fate on the new one: survived, broken, or now firing twice. This is the document that tells you how bad it is.
Triggers rewritten for the new routes
URL, element visibility and History Change triggers rebuilt for the new paths and SPA behavior, including checkout steps and the confirmation flow, not just the homepage.
The dataLayer rebuilt to a written spec
Event names, parameters and types documented first, then implemented with your developers, so variables stop resolving to undefined the moment someone renames a field.
Duplicate and orphan cleanup
Staging container IDs shipped to production, leftover hardcoded pixels, dead remarketing tags and the old consent snippet — all found and removed rather than left to interfere.
Catalog and feed ID remap
purchase and view_item item IDs mapped to the new product IDs in Merchant Center and the Meta catalog, then confirmed in each platform's diagnostics rather than assumed correct.
Server container and CSP check on the new host
Transport URL, custom subdomain and the new site's Content-Security-Policy headers verified, because a fresh CSP is a common and very quiet way to block your own tags.
Written guarantee
95%+ tracking accuracy
Measured against Your order table or CRM, for the days since launch. Miss it and we keep working at no cost.
FAQ
Broken after redesign questions, answered
Often, yes, and here's the fastest route: open GTM Preview on the new site, walk your funnel end to end as a real customer, and write down every trigger that doesn't fire and every variable that reads undefined. That list is most of the job, and it takes an hour. Where it stops being self-serve is a headless build with no page loads, a checkout that moved to another host, or a replatform that changed product IDs — those need developer time and catalog work rather than GTM clicks.
Quickly, but don't panic-buy. The orders and leads are still happening — the new site is fine. What you're losing each day is the record of which campaigns caused them, and Smart Bidding has less to learn from. That compounds, which is why a week is fine and a quarter isn't.
Because keeping the container ID isn't the same as keeping the triggers. The GTM snippet in the new theme's header will load happily and fire nothing, if the URLs it listens for no longer exist and the dataLayer keys it reads have been renamed. The container is intact. The wiring between it and the site is what got cut.
Either. Most of the GTM and server container work we do ourselves with container access. The dataLayer pushes usually belong in the codebase, so we write the spec and your developers implement it, then we verify. On Shopify or WordPress we can often do the whole thing without touching your repo.
Not the data itself — anything not collected can't be backfilled. The one partial exception is Google Ads offline uploads, which can bring conversions back inside the 90-day click window if a click ID was stored somewhere, typically your CRM. Beyond that, the useful move is reconciling against your order table so you know exactly how large the gap was and can annotate the reports.
Yes, and it's cheaper and calmer before than after. We put the tagging requirements into the build spec, run a container against staging, and give you a pre-launch checklist that gets signed off with everything else. Clients who do this hit launch day with working conversion data instead of a fire drill.
If your redesign was a visual refresh on the same platform with the same URLs and the same theme events, check GTM Preview, confirm the purchase or lead event still fires with a real value, and you're done. This page is for replatforms, headless rebuilds and theme swaps — the changes that move URLs, rename dataLayer keys, or reissue product IDs.
More on Broken after redesign
- GuideGoogle Ads Conversion Action 'Inactive' or 'No Recent Conversions': The Fix
- GuideThe 20-Minute Conversion Tracking Self-Audit (Checklist)
- Tracking broke after redesignWhy did my tracking break after a website redesign?
- tracking broke after checkout migrationWhy did my tracking break after a checkout migration?
- conversions changed after banner installWhy did my conversions change after installing a consent banner?
Free · 30 min
Send me the old site and the new one
Free30 minutesNo obligation
