Events

Google Tag Manager Integration

A step-by-step guide to connect Surface Form events to Google Tag Manager (GTM)

Surface forms push events to your website's data layer, so you can track interactions and conversions in Google Tag Manager (GTM).

Learn more about Surface events in our events documentation.

Overview of Surface Form Events

Surface Forms push three key events to the data layer:

Event NameWhen FiredMetadata
SurfaceFormStartedWhen the form is started(None)
SurfaceFormStepSubmittedWhen a step is submitted (e.g., email entered)emailProvided, meetingBooked , url and urlParams
SurfaceFormSubmitEventWhen the entire form is submitted(None)

1. Set Up Data Layer Variables in GTM

To capture metadata from SurfaceFormStepSubmitted, create the following Data Layer Variables in GTM:

Variable NameVariable TypeData Layer Variable Name
dlv - emailProvidedData Layer VariableemailProvided
dlv - meetingBookedData Layer VariablemeetingBooked
dlv - urlParamData Layer Variable (Object)urlParam
dlv - urlData Layer Variableurl

Steps:

  1. In GTM, go to Variables.

  2. Click New → Choose Data Layer Variable.

    GTM Variables Setup

  3. Enter the exact name (e.g., dlv - emailProvided) and set the Data Layer Variable Name to emailProvided. Make sure to capitalize the p in emailProvided !

    GTM Data Layer Variable Configuration

  4. Repeat for meetingBooked, url and urlParams.

    urlParams is an object, we need to use dot notation e.g. {{ urlParams.medium }} to get the data.

    GTM URL Parameters Configuration

2. Create Triggers Based on Events

Now create triggers that reference those variables.

Trigger NameTrigger TypeEvent NameAdditional Condition
Trigger - Email SubmittedCustom EventSurfaceFormStepSubmitteddlv - emailProvided equals true
Trigger - Meeting BookedCustom EventSurfaceFormStepSubmitteddlv - meetingBooked equals true
Trigger - URLCustom EventSurfaceFormStepSubmittedAny
Trigger - urlParamCustom EventSurfaceFormStepSubmittedAny

GTM Triggers Setup

3. Set Up Google Ads Conversion Tags

To send conversion data to an analytics or ads platform (Google, Meta, LinkedIn, and so on), create a tag that references the triggers you just made. The example below is a Google Ads Conversion Tag, which sends each conversion point to the right conversion action in Google Ads.

Tag NameConversion Action (in Ads)Firing Trigger
GAds - Form StartedForm StartedTrigger - Form Started
GAds - Email SubmittedEmail SubmittedTrigger - Email Submitted
GAds - Meeting BookedMeeting BookedTrigger - Meeting Booked
GAds - Form CompletedForm CompletedTrigger - Form Completed

For more details on how to setup Google Ads Conversion Tags, please refer to our Google Ads Tracking Guide.

Tip: Make sure your Google Ads account has conversion actions that match these names or your chosen naming convention.

Need Help?

Email us at support@withsurface.com.

On this page