All posts
MeasurementStep-by-step

GA4 Key Events: How to Create and Mark Them for Leads

Set up GA4 key events for a lead business: create a lead event from a thank-you page or Tag Manager, mark it as a key event and find it in reports.

October 2, 2026·6 min read·by Olexander Cheberko
Table of contentstap to expand

GA4 key events are the events you mark as important to your business, the ones GA4 called conversions until Google renamed them. For a lead business that means one event, generate_lead, that fires only when a form lead or a booking goes through, marked as a key event and checked in Realtime before any report is trusted.

Choose the lead signal

Check 1: Should form_submit be your lead key event?

WhereGA4AdminData collection and modificationData streams
Do: Click your web stream and look under Enhanced measurement for Form interactions.
You should see: form_submit treated as raw material, not as the lead. Google defines it as firing "when the user submits a form", any form on the site, with no word about your server accepting it. Its form_id and form_name parameters reach reports only through custom dimensions.
If not: Do not mark form_submit itself. If it is your only signal, create a narrower event from it with event_name equals form_submit and form_name equals your form's name attribute, as Google's lead form tutorial does. A thank-you page (check 2) or a success-only trigger (check 4) is a better signal.

Create the lead event

Check 2: Create generate_lead from the thank-you page

WhereGA4AdminData displayEvents
Do: Click + Create event, enter generate_lead in Event name, turn on Mark as key event, select Create without code, pick page_view as the existing event that triggers it, enter the thank-you page address under URL and click Create. The page must load only after a lead goes through.
You should see: generate_lead in the Custom events table; it reaches the Recent events tab only once GA4 processes a hit (create or modify key events). Google recommends generate_lead over a custom event to use prebuilt Analytics features. A created event never applies to past data.
If not: Your screen shows Custom event name and Matching conditions instead. Enter event_name equals page_view and page_location contains your thank-you path.
Careful: Create a new event; never modify page_view. A modification overwrites it, and page_view would stop collecting every other page.

Check 3: No thank-you page? Send the event from Tag Manager

WhereGoogle Tag ManagerTagsNew
Do: Choose Google Analytics: GA4 Event, enter your Measurement ID and generate_lead as the Event Name (Google's GTM event setup).
You should see: The name spelled exactly generate_lead. Google says any name outside its predefined list creates a custom event instead of the recommended one.
If not: Correct the name in the tag, not by renaming the event in GA4: an event that is already a key event stops being one when you rename it.

Check 4: Does the trigger fire only on a successful submit?

WhereGoogle Tag ManagerTriggersNew
Do: For a standard HTML form, choose Form Submission, tick Check Validation and limit it to the lead form under Some Forms. If the form's script overrides the browser's submit event, Google points to a Custom Event trigger instead: push an event from the form's success handler and enter that event name in the trigger.
dataLayer.push({'event': 'lead_submitted'});
You should see: The trigger attached to the generate_lead tag and to nothing else.
If not: Tick Check Validation. Without it, Google says the trigger "will fire whenever a user attempts to submit the form", so failed attempts count as leads.

Check 5: Does a booking confirmation fire its own event?

Do: Book a test appointment through your booking tool and note where the confirmation appears.
You should see: Either a confirmation page on your domain, which you turn into an event as in check 2, or an event the tool sends to GA4 itself. Calendly's Google Analytics integration, set up under Automations > Integrations & apps, sends invitee_meeting_scheduled when an invitee books a meeting.
If not: If the booking happens inside an embed and nothing reaches GA4, follow tracking Calendly bookings in Google Ads and GA4.
Careful: Mark one event per booking. If the tool's event and a confirmation page event both fire and both are key events, one booking counts twice.

Mark it and test it

Check 6: Is the event marked as a key event?

WhereGA4AdminData displayEvents
Do: On the Recent events tab, click the star next to generate_lead. If it comes from Tag Manager or a booking tool and GA4 has not received it yet, click + Create event, enter the name, turn on Mark as key event, select Create with code and click Create (create with code), so it counts from the first hit.
You should see: The event on the Key events tab. A standard property allows 30 key events, Analytics 360 allows 50.
If not: No + Create event button means your role is too low: marking a new event needs Marketer or above on the property.

Check 7: Does the counting method fit a lead?

WhereGA4AdminData displayEvents
Do: On the Key events tab, click the far right of the generate_lead row and choose Change counting method.
You should see: Once per event, which Google marks recommended, counts every trigger; Once per session, marked legacy, counts one per session. Key events created from Universal Analytics goals default to once per session.
If not: Pick the method that matches how your team counts leads. If visitors often resubmit one inquiry in a visit, once per session keeps it at one. The change applies to future key events only.

Check 8: Does one test lead show up once?

WhereGA4ReportsRealtime
Do: Submit one real test lead, then one with a required field left empty. On the Tag Manager route, run both in Preview first (preview and debug) and publish only once the tag fires on the real lead alone.
You should see: generate_lead once in Event count by Event name and once in Key events by Event name, and nothing from the failed attempt (Google's tutorial).
If not: Give it time: a new key event setting takes from a few minutes up to a few hours to apply. To watch your own device event by event, open DebugView under Admin > Data display; Tag Assistant turns on the debug mode it needs.
Careful: Accept analytics cookies on the test device. Under consent mode, events from a visitor who has not consented do not show in debug mode.

Check 9: Where do key events show in reports?

WhereGA4ReportsAcquisitionLead acquisition
You should see: New leads, the number of unique users with a generate_lead event, by channel (Lead acquisition report). Reports such as Landing pages and User acquisition carry a Key events column; pick generate_lead from its All events menu to count only leads (report on key events).
If not: Standard reports can take up to 24 hours to show a newly marked key event, and marking never rewrites past data. If Lead acquisition is missing from the left menu, an Editor can add it back.

After the key event works

When generate_lead counts each accepted lead once, link GA4 to Google Ads if you want the same count in your ad reports, and run the GA4 audit checklist over the rest of the property. A key event still ends at the form: it cannot say which leads became customers. Sending that outcome back to the ad click is closed-loop attribution, the part I build.

Tags

ga4-key-eventshow-to-create-key-event-in-ga4track-form-submissions-ga4generate-leadgoogle-tag-managerlead-tracking

Frequently asked questions

What is the difference between a key event and a conversion in GA4?

A key event is any GA4 event you mark as important to your business; GA4 called these conversions until Google renamed them. A conversion now means an important action you use to measure ad campaign performance and optimize bidding, and creating one from a key event requires a linked Google Ads account.

How many key events can a GA4 property have?

Up to 30 on a standard property and 50 on Analytics 360. GA4 also marks some events as key events on its own, such as purchase, and Google's help lists more, session_start among them, that it marks when Ads Personalization is on with a linked Google Ads account.

How long does a new key event take to appear in GA4 reports?

Up to 24 hours in standard reports, while Realtime shows it a few minutes after someone triggers it. Marking an event never changes past data, so submissions from before you marked it stay ordinary events.

Can I mark form_submit as a key event in GA4?

You can, but enhanced measurement sends form_submit when a visitor submits any form on the site, the newsletter box included. Google's own lead form tutorial creates a narrower event from form_submit with a form_name condition and marks that one instead.

Related posts