Codewerk.
Get a quote
Home/Blog/GA4 for shops: the migration everybody is postponing

GA4 for shops: the migration everybody is postponing

Universal Analytics stops processing on 1 July 2023 and your history does not come with it. Why running both in parallel now is the whole point, what breaks in e-commerce tracking, and why consent makes this messier in Germany than Google admits.

Photo: free stock photography (Unsplash licence) — see imprint

The date is fixed and your historical data is not coming with you

Google has announced that Universal Analytics properties will stop processing new hits on 1 July 2023. That is not a soft deprecation with an escape hatch; it is a date after which the reports you have built your year-on-year comparisons on simply stop filling up. Most shop owners we speak to know this and have filed it mentally under 'next year'. It is not a next-year problem, and the reason has nothing to do with the deadline.

The reason is that historical data does not migrate. GA4 is not a new skin on the same warehouse — it is a different measurement model with a different schema, and there is no import that carries your 2019 to 2022 numbers across. Whatever GA4 knows about your shop, it knows because it was collecting at the time. So the property you create in June 2023 starts with zero history, and your first Christmas in GA4 will have nothing to compare against. The property you create this month has a full year of comparison by then. That is the entire argument, and it expires quietly every day you wait.

Run both. Not as a transition — as a translation exercise.

Parallel operation is not a compromise for the nervous. It is the only way to find out what your new numbers mean. Put GA4 alongside UA now and the two will disagree, sometimes substantially, and every disagreement teaches you something you would otherwise discover in the middle of peak season. Sessions are counted differently. Bounce rate as you knew it is gone and 'engaged sessions' is not the same thing wearing a new name. Attribution windows and models differ by default.

What you want out of the parallel period is a written translation table: for each number your business actually steers by, what is it called in GA4, how far off is it, and is the gap explainable. Six numbers is usually enough — revenue, orders, conversion rate, cost per order, traffic by channel, and whatever your specific business obsesses over. If you cannot explain the gap on a number, you do not yet trust that number, and a report you do not trust is a report you will quietly stop opening.

E-commerce tracking is where the migration actually costs money

The basic pageview tag is twenty minutes of work. The e-commerce layer is not. GA4's e-commerce events are named and structured differently from the enhanced e-commerce you have been sending, the parameters differ, and item-level data has its own rules. Anything you built on top — a plugin that fires purchase events, a Tag Manager setup with years of accumulated triggers, a datalayer someone assembled in a hurry — needs to be redone rather than renamed.

Budget for the boring half, too: goals become conversion events and have to be redefined; audiences do not carry over; internal traffic filters, referral exclusions and cross-domain setup all need doing again; and every dashboard, spreadsheet and automated report that reads from the old property has to be repointed. None of this is difficult. All of it takes longer than the estimate, and none of it produces a single new insight when it is finished. It just keeps you able to see.

  • E-commerce events — different names, different parameters, a genuine rebuild.
  • Goals to conversion events — redefine each one, nothing carries over.
  • Filters, referral exclusions, cross-domain — redo them all, quietly.
  • Every report and dashboard pointing at the old property — repoint or lose it.

The German part Google's documentation skips

Google's migration guides are written as if analytics simply runs. In Germany it does not: under the TTDSG and the DSGVO, storing or reading information on a user's device for analytics needs prior consent, which means a meaningful share of your visitors are never measured at all. That is not a GA4 problem — it is equally true of UA — but the migration is the moment it becomes visible, because you are rebuilding the measurement anyway and someone will finally ask why the numbers are lower than the shop's own order count.

There is also the unsettled question of transfers to the US, which has been the subject of complaints and decisions from European data protection authorities and is not something we can resolve for you in a blog post — talk to your lawyer, and take the answer seriously rather than as paperwork. What we can say technically: build the consent integration as part of the GA4 work, not after it. Retrofitting consent onto a tag setup that assumed it could always fire is significantly more painful than designing for a 'no' from the start, and the 'no' is the common case in a German shop.

This is also a good moment to ask whether you need Google at all

Since you are rebuilding the tracking from scratch anyway, the switching cost to something else has never been lower. Self-hosted or EU-hosted analytics tools exist, they answer most shop questions perfectly well, and some of them are lighter on the consent problem by design. They are worse at the things Google is genuinely good at — deep integration with Ads, and audience work — so if you spend real money on Google Ads, staying is the pragmatic answer. If you do not, you may be carrying a compliance debate for reports you barely read.

ConcernUniversal AnalyticsGA4
New data after 1 Jul 2023Processing stopsThe only property still collecting
Your historyStays in the old propertyStarts the day you create it — no import
Measurement modelSessions and pageviewsEvents throughout — old KPIs need retranslating
E-commerce tagsEnhanced e-commerceDifferent events and parameters — a rebuild
Consent under TTDSGAlready requiredSame requirement — design for a 'no' from day one
Key takeaways
  • History does not migrate — the property you create today is the comparison year you get.
  • Run UA and GA4 in parallel until you can explain every gap between them.
  • The e-commerce layer is a rebuild, not a rename — that is where the budget goes.
  • Build consent into the tracking from the start; in Germany the 'no' is the normal case.

Frequently asked questions

Google has said standard Universal Analytics properties will stop processing new hits on 1 July 2023. Existing reports remain readable for a period after that, but nothing new flows in. The practical deadline for you is much earlier: if you want a usable year-on-year comparison in GA4, the property has to be collecting a full year before you need it.

No. GA4 uses a different measurement model and schema, and there is no path that brings your historical UA reports across. This is the single most important fact about the migration and the reason waiting is expensive: every month you delay is a month of comparison data you will never have. If you want history, export what matters from UA separately and keep it somewhere you control.

Mostly consent. Under the TTDSG, analytics that stores or reads data on a device needs prior permission, so every visitor who declines is invisible to Analytics but perfectly visible to your order table. Add ad blockers and the gap widens further. Treat your shop's own order data as the truth for revenue and use Analytics for direction and proportion, not for accounting.

The basic tag is an afternoon. A shop with working e-commerce tracking, redefined conversions, consent integration and repointed reports is realistically a few weeks of part-time work spread over a longer parallel period — most of that elapsed time is watching the two properties disagree and understanding why. Start now and it is calm work; start in spring 2023 and it is a deadline.

It is a fair question precisely now, because you are rebuilding the tracking anyway and the switching cost will never be lower. If you spend serious money on Google Ads, the integration keeps you where you are. If you do not, an EU-hosted or self-hosted tool answers most shop questions and carries less of a data-transfer debate. Decide it on how you actually use the reports.

We do this for a living — Shopware, Node.js, React, ERP integration and automation for B2B.

Talk to an engineer

// Keep reading

Related articles