For our clients, we have taken two approaches to implement GA4:
Approach 1: GA4 implementation alongside UA (via GTM)
The first approach is to implement GA4 tracking alongside a client’s UA setup. The easiest way to do this is via Custom HTML tags within Google Tag Manager. Within the tags, you can refer to the existing UA implementation on site, and fire GA4-compliant implementation and tags to fire alongside UA, without having to completely reimplement a new data structure. We have taken this approach for several clients in the last few months.
Approach 2: Full GA4 dataLayer implementation (via front and back-end development)
The other approach, as briefly mentioned before, is to fully reimplemented a GA4-compliant data structure on site, known as a dataLayer. GA4 is very strict about how the dataLayer must be structured to send events, so one option, to ensure this structure is maintained, is to use development resource, rather than a tag management tool, to implement GA4. Whilst this approach has been less common for us, we have undertaken this approach for a client at the start of this year.
Having to undertake a GA4 implementation is also a good time to review existing tagging and dataLayer structures on a client site. If they decide to piggyback off the UA tracking, it is vital that their dataLayer setup is robust and complete so that you do not miss any GA4 tagging that is based on this. For one client, we even created a new tag management setup that coincided with the implementation of GA4 on their site. Clients will need to base these decisions on several resources, such as resource, development roadmaps, level of analytics usage, and quality of existing implementation, amongst others. Another thing to consider is if a client is a GA360 customer or not, as this could impact which option they take.