Build Reliable Marketing Data by Understanding GA4 Events
Published: November 13, 2025
•7 min read
Introduction
A simple question like, "How many leads did we get from the new campaign?" should have a simple answer. But in Google Analytics 4, it rarely does.
You're far more likely to open a report and find a fragmented list:
generate_lead: 15Form_Submit: 10demo_request: 22
You cannot get a total because GA4 treats these as separate actions. GA4’s event-based model is flexible, but that flexibility also makes reports inconsistent and hard to trust.
In this post, we’ll explain what GA4 Events are and how to build a data quality foundation that replaces guesswork with confidence.
Key Takeaways
- What’s an Event? An event is any user action (e.g.,
page_view,video_play). In GA4, everything is an event. - The Core Problem: GA4’s flexibility allows inconsistent naming.
lead,Lead, andgenerate_leadare treated as separate events, fragmenting reports. - The Solution: Data governance. Define event names in a Measurement Plan (even a simple spreadsheet) before tracking them.
- The Rule: Consistent naming, such as using lowercase snake_case, solves most data quality issues
Understanding GA4 Events
In simple terms, an event is any action a user takes on your website or app. This is the most important concept in GA4. Instead of just counting visits, GA4 captures the entire user journey as a stream of individual actions. For example, page_view, scroll, file_download, and purchase are all events.
Every interaction is tracked as an event. This model is powerful, but it also creates most data quality issues. Think of your website as a busy café. A basic tracking system is like a bell on the door. It tells you 500 people visited today but not what they did. You do not know if they bought anything or just looked at the menu. GA4 is like a staff member with a clipboard who records each interaction as an event. A single customer’s journey might look like this:
- Event:
customer_entered(This is likesession_start) - Event:
viewed_menu(This is likepage_view) - Event:
ordered_drink - Event:
ordered_food - Event:
paid_bill(This is likepurchase)
How Flexibility Breaks Your Reports
GA4’s event model allows you to analyze the full story of what users do, not just that they visited. The problem is GA4 gives you the clipboard but no rules for recording events.
If three people log the same action differently, for example as ordered_drink, order_beverage, and Ordered_Drink, you cannot answer How many drinks did we sell? easily because you have three separate events for the same action.
In your GA4 account, this looks like Form_Submit, form_submit, and generate_lead. Different developers, tools, or tags record the same action under different names. And it gets worse when you need detail. To know which drink was ordered, the event alone is not enough. You need parameters, the extra details describing the event. This is where data quality starts to fail.
The Two Core Failure Points: Naming and Parameters
The flexibility of GA4’s event-based model is a double-edged sword. Without a clear blueprint, the system breaks down in two ways.
1. Inconsistent Event Naming
This is the most obvious problem but has serious consequences. A simple question like How many leads did we get last month? can produce:
generate_lead: 5,200 eventsform_submit: 3,100 eventsForm_Submit: 950 eventslead: 420 events
Each variation is treated as a separate event. Totals require manual addition, which is slow, error-prone, and guarantees mistakes. One missed variation, like the capitalized Form_Submit, makes every total unreliable.
As a consequence, trust can break down. An executive sees 5,200 leads from generate_lead, while the marketing manager’s spreadsheet shows 9,670. No one trusts the data or each other.
2. Messy or Missing Parameters
Parameters provide the context for each event. If the event is the action, like ordered_drink, parameters describe details such as what kind and what size.
A well-structured event looks like this:
- Event:
ordered_drink - Parameters:
drink_type= "latte",size= "large",milk_type= "oat"
This allows questions like, What is our most popular milk alternative for large lattes?
Without rules, the same action might be logged inconsistently. One person uses drink_type = "latte" and size = "large". Another uses beverage = "Latte" and drink_size = "L". A third logs ordered_drink_latte with no parameters.
Now the question, How many lattes did we sell? cannot be answered. The data is unusable.
Real-World Example: The “Which Form?” Problem
Consider a simple business question: Which of our web forms drives the most high-quality leads?
To answer it, you need one consistent event, like generate_lead, and one consistent parameter, like form_name. In many GA4 setups, this isn’t the case. Your contact page might fire contact_form_7_submit via a plugin. The newsletter footer fires newsletter_signup with a parameter form_location = "footer". A “Request a Demo” form might use generate_lead with form_id = "demo_v2". The result is data chaos. Multiple events, inconsistent parameters, and missing context make simple reporting impossible. The data is not just messy, it is fundamentally broken.
A Solution: The Measurement Plan
If inconsistent events are like building a house without a blueprint, a Measurement Plan is the blueprint. It is a formal document that dictates exactly how to track user interactions. It aligns all teams, developers, marketers, and agencies, so everyone speaks the same language.
The plan fixes the two main failure points by enforcing consistency and context.
1. Naming Convention: Enforcing Consistency
A strict naming convention solves inconsistent events. Track the logical action, not the technical implementation. Instead of events like generate_lead, form_submit, Form_Submit, contact_form_7_submit, and newsletter_signup, the plan defines one unified event, for example: generate_lead.
Every lead submission fires the same event. Executives can ask, How many leads did we get? and get a single, correct number.
2. Parameter Strategy: Adding Context
Parameters distinguish forms and lead details. A Measurement Plan defines a data dictionary to ensure clarity.
- Identify the form with
form_name. Do not use alternatives likeform_idorform_location. - Track value with value and currency.
- Assess lead quality with
lead_quality, using consistent labels such as high, medium, or low.
The Payoff: From Data Chaos to Data Clarity
Before the Measurement Plan, reports for contact_form_7_submit, newsletter_signup, and generate_lead had to be manually combined, risking mistakes.
With the Measurement Plan it is structured and could look like this:
- Contact Form:
generate_lead,form_name= "contact_us",lead_quality= "medium" - Newsletter Footer:
generate_lead,form_name= "newsletter_footer",lead_quality= "low" - Request a Demo:
generate_lead,form_name= "request_demo",lead_quality= "high", value = 1500, currency = "USD"
One simple report in GA4 now shows the total leads and their quality. Reporting can be automated and produces accurate, reliable, and trustworthy outputs.
Common Objections & Why They're a Trap
Teams often respond with familiar questions. These reactions may seem reasonable but keep data in chaos.
This seems like a lot of extra work.
Current reporting often requires pulling multiple reports, copying data into spreadsheets, and manually adding totals. The Measurement Plan is a one-time setup that automates reporting, eliminating repeated work and producing a single correct report.
Our developers are too busy for this.
Without a plan, developers guess how to implement tracking, causing frustration and technical debt. With a clear Measurement Plan, developers know exactly which event and parameters to implement, completing work quickly and correctly.
What we have is good enough for now.
Messy data is not a minor inconvenience; it is fundamentally broken. When reports produce different totals for the same metric, trust evaporates and decisions are made on unreliable information.
Can’t we just use the default automated tracking?
Default tracking collects raw interactions but does not understand business logic. It cannot unify events or apply context like lead quality. Default tracking gives clicks; a Measurement Plan gives answers.
The Path Forward: From Chaos to Clarity
The problems with inconsistent naming and missing context are not minor, they are a fundamental roadblock to growth. They create wasted time, unreliable reporting, and broken trust in your data. Without a solid foundation, critical business questions remain unanswered.
A Measurement Plan is one way to create consistent, reliable tracking and align teams. Alternatively, tools like Focalytics can automatically check your GA4 data, highlight inconsistencies, and produce a data quality report with actionable recommendations. This is a simple first step before building automated, cross-silo reports and generating insights across your organization.
![Photo of [object Object]](/images/profile.jpg)