Skip to content
    Back to Tips & Tricks
    Data Architecture55

    Normalise Inconsistent GA4 Event Names in a Semantic Layer

    Written by Viktor KvantSenior Web AnalystJune 28, 20262 min read

    GA4's free-form event names drift across teams. A dbt model mapping variants like cta_click and user_clicked_cta to one canonical type keeps metrics consistent.

    GA4 lets implementers define any custom event name. That flexibility looks helpful at first but quickly produces disorder: different teams name the same action differently, parameters are used inconsistently, and analysts spend their time reconciling events instead of analysing them.

    A semantic layer built on top of the raw events fixes this by acting as the single definition of each business action. In dbt, a model can map divergent names such as event_name = 'user_clicked_cta' and event_name = 'cta_click' into one canonical table, for example fact_user_engagement, with a standardised engagement_type = 'cta_click' and consistent attributes.

    Keeping that mapping in a version-controlled lookup, such as a dbt seed of raw event name to canonical type, turns each new naming variant into a reviewed change rather than a silent fork in the data. An accepted_values test on the canonical column flags any event that has not been mapped.

    The benefit reaches beyond the analytics team. Engineers, product managers and executives can query models such as dim_product or fact_purchase and trust that the definitions are the same everywhere. Marketing analytics stops being a silo and becomes organisation-wide behavioural telemetry.

    Server-side collection makes the layer more valuable, not less. Tools such as Robin Signals that collect and route events server-side fit into the same design: standardising event definitions at the point of collection, or immediately downstream, keeps the data clean and makes the pipeline easier to adapt as privacy regulation changes.

    Raw GA4 event data is fine for ad-hoc debugging, but it is a poor foundation for anything else. A semantic layer, whether built as dbt models or as a data catalogue with clearly defined metrics, pays back in analyst productivity, trust in the numbers and the ability to answer new questions quickly. It is also the foundation that causal inference and machine learning depend on.

    Author

    Viktor Kvant

    Senior Web Analyst specialising in data ownership, advanced tracking implementations, and translating data into strategic business value.

    Connect on LinkedIn