Skip to content
Analytics October 9, 2026 9 min read

How to Set Up Custom Conversion Events in GA4

How to Set Up Custom Conversion Events in GA4

Setting up custom conversion events in GA4 takes three moves: send the event, register its parameters as custom definitions, then mark it as a key event so it shows up in your conversion reporting. Nothing in Google Analytics 4 tracks a quote request, a pricing-page scroll or a phone tap on its own, which is why so many accounts look busy but report zero conversions. The walkthrough below covers the Google Tag Manager route, the naming rules that stop you rebuilding everything in six months, and the quality checks most tutorials skip.

What Counts as a Custom Event in GA4

GA4 collects four tiers of events: automatically collected (page_view, session_start), enhanced measurement (scroll, outbound click, file_download), recommended events with predefined names and parameters, and custom events you define yourself. A custom event is anything you name and fire that does not already exist in Google’s list, for example quote_request_submitted or pricing_calculator_used.

Before you invent a name, check Google’s recommended events reference. If a predefined event such as generate_lead or purchase matches what you are tracking, use it, because those names unlock prebuilt report cards and integrate cleanly with Google Ads. Save genuinely custom names for behaviour nobody else models.

Why GA4 Calls Them Key Events Now

In 2024 Google renamed “conversions” inside Analytics to key events, reserving the word conversion for Google Ads. Functionally the mechanic is identical: you flip a toggle on an event and GA4 starts counting it as a business outcome. If you are still mapping old habits onto the new interface, our breakdown of what actually changed between GA4 and Universal Analytics explains why goals, destinations and event categories no longer exist.

One practical limit matters here: a standard property supports up to 30 key events, 500 distinct event names, and 25 parameters per event. That ceiling sounds generous until a developer ships 40 button-click variants with unique names.

Three Ways to Send the Event

  • Google Tag Manager: the default choice for most sites, because triggers, variables and version history live outside the codebase.
  • gtag.js directly: a developer adds a gtag(‘event’, ‘quote_request_submitted’, {…}) call on the action. Fastest for single-purpose tracking, hardest to change later.
  • GA4’s “Create event” tool: found under Admin, Data display, Events. It mints a new event from an existing one (for example, page_view where page_location contains /thank-you). No code, no developer, but it only works with data GA4 already receives.

The create-event tool is the quickest way to get a thank-you page conversion live in about four minutes, and it is a reasonable stopgap while a proper form-submission event gets built.

Build a Custom Key Event With Google Tag Manager

  1. Define the action in plain language first. “User submits the contact form and sees the success message” is testable; “form clicks” is not.
  2. Create the trigger. For a form that redirects, use a Page View trigger on the confirmation URL. For AJAX forms, use a Custom Event trigger listening for the dataLayer push your developer adds, or an Element Visibility trigger on the success message.
  3. Create a GA4 Event tag. Select your Google tag configuration, set the event name to something like quote_request_submitted, and attach the trigger.
  4. Add event parameters. Three to five is plenty: form_location, form_name, service_interest, lead_value. Parameters are where the reporting value hides, since “47 leads” is less useful than “31 of 47 leads came from the service pages”.
  5. Preview in GTM. Open Preview mode, complete the form, and confirm the tag fires exactly once with the right parameter values.
  6. Publish the container with a version note recording what you changed and why.

New event names appear in GA4’s Events list within 24 hours in most properties, though the Realtime report shows them in under a minute.

Register Parameters as Custom Dimensions

Custom parameters are invisible in standard reports until you register them. Go to Admin, Custom definitions, Create custom dimension, give it a display name, set the scope to Event, and type the parameter name exactly as it is sent, including underscores and lower case. Standard properties allow 50 event-scoped custom dimensions, so register the parameters you will actually segment by.

Registration is not retroactive in the standard reporting interface. Data collected before you create the dimension stays blank, which is the single most common reason people think their custom event tracking “broke” after a week of clean testing. Exploration reports and BigQuery exports behave more forgivingly, but the safest habit is to register dimensions the same day you publish the tag.

Mark It as a Key Event and Attach a Value

Open Admin, Data display, Events, find your event in the list and toggle Mark as key event. From that point forward GA4 counts it in the key events column across acquisition, engagement and landing page reports. The toggle is not retroactive either, so the first 48 hours of data will sit in the events table without conversion credit.

If the action has commercial worth, send value and currency parameters with the event. A roofing company that closes 1 in 5 inspection requests at an average job size of $11,000 can reasonably pass a value of 2200 per lead. Monetised key events let you compare channels on revenue rather than raw volume, which is where most reporting arguments end.

Naming Conventions That Save You Rework

GA4 event names are case sensitive, capped at 40 characters, and cannot start with a number or use spaces. Beyond the technical rules, pick a pattern and write it down somewhere your developer and your agency can both read:

  • object_action format: quote_request_submitted, video_75_watched, phone_number_clicked. The object first keeps related events alphabetically adjacent in the events list.
  • Parameters for variation, not new event names: one cta_click event with a cta_location parameter beats fourteen separate click events burning through your 500-name limit.
  • No PII, ever: no email addresses, phone numbers or names in parameters. Google’s terms prohibit it and the data gets purged.
  • Document the spec: a shared sheet listing event name, trigger condition, parameters and owner takes an hour to build and settles every future “is this number right?” conversation.

Test Before You Trust the Numbers

Three checks catch nearly every faulty setup. Open DebugView (Admin, DebugView) with GTM Preview running or the Google Analytics Debugger extension enabled, then complete the action and inspect the event stream, including the parameter values GA4 actually received. Next watch the Realtime report, which confirms data is landing in the right property rather than a sandbox. Finally, wait 24 to 48 hours and compare GA4’s key event count against the source of truth, meaning your CRM, inbox or booking system.

A 5 to 10 percent gap between GA4 and your CRM is normal, driven by ad blockers, consent refusals and cross-device behaviour. A 60 percent gap means something is genuinely broken. Google’s documentation on modifying and creating events is worth keeping open while you debug.

Mistakes That Quietly Inflate Conversion Counts

  • Counting clicks instead of submissions. A button-click trigger fires even when validation fails, which can overstate leads by 20 to 30 percent on forms with strict field rules.
  • Thank-you page refreshes and bookmarks. Page-view triggers double count when someone reloads. Add a trigger exception or a once-per-page firing limit.
  • Duplicate tag deployments. A gtag snippet hard-coded in the theme plus the same tag in GTM produces two events per action.
  • Consent mode blocking without basic consent signals. If your banner blocks analytics storage and you have not enabled consent mode v2 properly, entire regions vanish from reporting.
  • Marking micro-actions as key events. Fifteen key events including scroll depth and PDF downloads make the conversion column meaningless for channel comparison.

Once your GA4 events are trustworthy, the same discipline applies to other platforms. Our guide to setting up the Meta Pixel for reliable conversion tracking covers the equivalent event mapping on the Facebook side, and clean cross-platform data makes custom Looker Studio reporting far less painful to maintain.

Turning Event Data Into Decisions

Custom events earn their keep when you segment them. Build a free-form exploration with your key event as the metric, landing page and session source as dimensions, then look for pages that attract traffic but convert under 1 percent. That comparison usually surfaces two or three fixes worth more than any new tracking, which is the practical side of conversion rate optimisation.

You can also create audiences from custom events, for example users who fired pricing_calculator_used but not quote_request_submitted, and send them to Google Ads for remarketing. Audience membership is forward-looking only, so build those lists early even if campaigns are months away.

Frequently Asked Questions

How Long Does a New Custom Event Take to Appear in GA4?

Expect 24 to 48 hours for a custom event to appear in standard reports, though the Realtime and DebugView reports show it within roughly 30 seconds. The event name must be collected at least once before the key event toggle becomes available.

How Many Key Events Can a GA4 Property Have?

Standard GA4 properties support up to 30 key events, 500 distinct event names and 25 parameters per event. Analytics 360 properties raise several of these limits, but most businesses only need five to eight meaningful key events.

Do I Need Google Tag Manager to Set Up Custom Events?

No. GA4’s built-in “Create event” tool and direct gtag.js calls both work without Tag Manager. GTM is still the practical choice for anything involving form success states, element visibility or dataLayer values, because changes do not require a developer deploy.

Why Do My GA4 Key Events Not Match My CRM Leads?

A 5 to 10 percent variance is expected from ad blockers, consent refusals, bot filtering and cross-device sessions. Larger gaps usually trace back to duplicate tags, click-based triggers firing on failed validations, or events landing in the wrong property.

Should Custom Events Be Imported Into Google Ads?

Yes, import the key events you want to bid on, but only one primary action per campaign goal to avoid training Smart Bidding on mixed signals. Linking the accounts first lets GA4 key events flow into Ads as conversion actions, typically within 24 hours of import.

Get Your GA4 Tracking Reviewed

If your reports show traffic but no key events, or the numbers have never matched your inbox, a short audit of your tag setup usually finds the cause in under an hour. Talk to SEO Quirk about getting your GA4 events, parameters and Google Ads imports configured properly, or browse the rest of our analytics and paid media work to see how we approach measurement.

Leave a Reply

Your email address will not be published. Required fields are marked *