---
title: "Track webinar registrations in GA4"
description: "Send a GA4 event for every webinar registration, with the session name and referral source as parameters, so signups can be attributed to each campaign."
url: "https://www.formformform.com/automations/google-analytics-webinar-registration-tracking"
type: static
generatedAt: "2026-08-23T18:56:58.727Z"
---
![Google Analytics logo](/logos/integrations/google-analytics.svg)

# Record webinar registrations as a conversion event

Every webinar registration fires a GA4 sign\_up event carrying the session name, so registrations can be attributed campaign by campaign.

When this happens

New submission on your webinar registration form

Do this

Send a GA4 sign\_up event, or a custom event\_registration event, with the webinar name as a parameter

One-directional. A submission triggers the action — nothing is written back into your form.

Webinar promotion runs across paid social, an email push and whatever organic traffic the topic pulls in. The registration total arrives in the webinar tool with none of that attached, which makes cost per registration a manual reconciliation every time.

Events teams use this to close the loop before the next campaign brief. One event per submission, tagged with the session name and how the registrant heard about it, puts registrations in the same acquisition table as the sessions that produced them.

## Setting it up

1.  1
    
    Publish one webinar registration form per session in formformform, so the session name is fixed rather than typed. A form per session is also what lets you switch a Zap off once registration closes.
    
2.  2
    
    In Google Analytics, take the Measurement ID from your web data stream and create a Measurement Protocol API secret.
    
3.  3
    
    Set up the Zap: formformform as the trigger app, New Submission as the event, and the form for the session you are promoting.
    
4.  4
    
    Choose the Measurement Protocol action and settle the event name. sign\_up keeps registrations inside GA4's recommended set; a custom event\_registration keeps them apart from newsletter signups if you already send those. Pick one and use it for every session.
    
5.  5
    
    Add a webinar\_name parameter as a constant set to the session title. Because there is a form per session, it is typed once in the Zap and cannot be misspelled by a registrant.
    
6.  6
    
    Map "How did you hear about this webinar?" into a registration\_source parameter, and "Company Size" and "Job Title" into audience parameters if you report on registrant fit.
    
7.  7
    
    Register webinar\_name, registration\_source and any audience parameters as event-scoped custom dimensions before the first promotion goes live.
    
8.  8
    
    Mark the event as a key event, run one test registration through, confirm it in Realtime, then switch the Zap on.
    

## What maps where

Using the [Webinar Registration Form](https://www.formformform.com/templates/webinar-registration-form) as the starting point. These are its real fields — swap in your own and the mapping works the same way.

Form field

Google Analytics

How did you hear about this webinar?

registration\_source event parameter, the self-reported channel to set against GA4's own attribution

Job Title

job\_role event parameter, for judging registrant fit campaign by campaign

Company Size

company\_size event parameter, registered as an event-scoped custom dimension

Email Updates

marketing\_optin parameter recorded as true or false, showing how many registrants also join the list

Work Email

Hashed into user\_id where you use one; the address goes to the webinar platform, not to Google Analytics

## Variations worth knowing

Track attendance next to registration

Registration and attendance are different numbers. Keep this Zap for the submission and add a second Zap from your webinar platform that sends an attended event with the same webinar\_name. GA4 then holds both, and the drop between them is your show rate.

Run one form for a whole series

If a single form suits a recurring series better, add a question naming the session and map that answer into webinar\_name instead of a constant. Keep the options a fixed list, since free text produces a new dimension value for every spelling people use.

## If something isn't arriving

Registrations take hours to appear in the reports

Realtime shows the event within seconds; the standard reports are what lag. GA4 processing usually takes several hours and can take a day, so check Realtime for delivery and give the acquisition tables until the next morning before deciding a registration went missing.

Some registrations never produce an event at all

Look at the Zap history first. A missing or revoked Measurement Protocol API secret, or a filter step that quietly excluded the run, both end with no event and no complaint from Google Analytics — the Measurement Protocol returns success even when the payload is wrong.

## Frequently asked questions

Can I attribute registrations to a specific paid campaign?

Only where the event can be tied to the visitor's session. The event carries the client ID the Zap supplies, so if the real one cannot be passed, use the self-reported source parameter alongside your landing page reports rather than expecting exact campaign credit.

Should I use sign\_up or a custom event name for webinars?

sign\_up is recommended by GA4 and works in reports with no setup, but it merges with every other signup you send. If webinars need their own line, use a custom event\_registration name. Consistency across sessions matters more than which one you choose.

Do registrants need to accept cookies for this to work?

The event is sent server-side from Zapier, so it does not depend on the browser or on your on-page tag firing. That also puts it outside your consent banner, so say on the form what you record and keep personal details out of the event.

## Related automations

-   [Count demo requests as a generate\_lead conversion](https://www.formformform.com/automations/google-analytics-demo-request-conversions)
    
    Each demo request fires a GA4 generate\_lead event, so completions sit in your reports next to the campaigns that produced them.
    
-   [Log support requests with the issue category attached](https://www.formformform.com/automations/google-analytics-support-request-categories)
    
    Each support request sends a form\_submit event carrying the issue category, so you can see which topics drive people off the docs.
    
-   [Measure newsletter signups as a sign\_up event](https://www.formformform.com/automations/google-analytics-newsletter-signup-events)
    
    Every newsletter subscription sends a GA4 sign\_up event, so you can build a funnel from landing page visit to completed signup.
    
-   [Track survey completions with the rating attached](https://www.formformform.com/automations/google-analytics-survey-completion-events)
    
    Every product survey response sends a custom feedback\_submitted event carrying the rating, so respondents become a segment you can analyse.
    
-   [Weigh quote requests by estimated deal size](https://www.formformform.com/automations/google-analytics-quote-request-value)
    
    Each quote request sends a generate\_lead event with a value attached, so pages bringing bigger requests stand out from pages bringing many.
    
-   [Add webinar registrants to a remarketing list](https://www.formformform.com/automations/google-ads-webinar-remarketing-list)
    
    Every webinar registration joins a Customer Match audience you can run follow-up campaigns to after the session.
    

-   [All Google Analytics integration details →](https://www.formformform.com/integrations/google-analytics)
-   [Start from the Webinar Registration Form →](https://www.formformform.com/templates/webinar-registration-form)
-   [Browse every automation →](https://www.formformform.com/automations)

## Build the form first

The automation needs somewhere to fire from. Publish a form, connect it once, and every submission from then on runs this flow.

[Start free](https://app.formformform.com/register?utm_source=landing&utm_medium=bottom&utm_campaign=automations&utm_content=google-analytics-webinar-registration-tracking)
