Surface
Integrations

Tracking Surface Forms in Google Analytics

Track Surface form submissions in Google Analytics 4 (GA4) using Google Tag Manager (GTM). This guide shows how to capture form events like email submissions and meeting bookings.

Create custom events in Google Analytics before setting up GTM tags. GA4 won't capture events that don't exist in your property.

Step 1: Create Custom Events in Google Analytics

First, define the events you want to track in your GA4 property.

  1. In Google Analytics, navigate to Admin > Data display > Events

  2. Click Create event

  3. Enter your event name (examples: SurfaceFormEmailSubmitted, SurfaceFormMeetingBooked, SurfaceFormSubmitEvent)

  4. Check Mark as key event if this is a conversion metric

  5. Click Create

Google Analytics create event modal showing event name field and mark as key event checkbox

Repeat for each Surface form event you want to track. Common events include:

  • SurfaceFormEmailSubmitted - Fires when a visitor submits their email

  • SurfaceFormMeetingBooked - Fires when a visitor books a meeting

  • SurfaceFormSubmitEvent - Fires on final form submission

Google Analytics events list showing SurfaceFormEmailSubmitted and SurfaceFormMeetingBooked with success confirmation

Step 2: Get Your Measurement ID

You'll need your GA4 Measurement ID to configure tags in GTM.

  1. In Google Analytics, go to Admin > Data Streams

  2. Select your web stream

  3. Copy the Measurement ID (format: G-XXXXXXXXXX)

Google Analytics web stream details page showing Measurement ID G-L0L64YV6QY highlighted

Step 3: Configure GTM Tags

Create a GA4 Event tag in Google Tag Manager for each Surface form event.

  1. In Google Tag Manager, navigate to Tags > New

  2. Click Tag Configuration and select GA4 Event

  3. Paste your Measurement ID

  4. Set the Event Name to match exactly what you created in GA4 (e.g., SurfaceFormEmailSubmitted)

  5. Click Triggering and select the appropriate Surface form trigger

  6. Save the tag

Google Tag Manager GA4 tag configuration showing Measurement ID field and Event Name field

Surface forms push events to the dataLayer when actions occur. Common triggers include dlv-meetingBooked equals true for meeting bookings and dlv-emailSubmitted equals true for email captures.

Google Tag Manager choose trigger modal showing Trigger - Meeting Booked with dataLayer variable filter

Repeat for each event. Your tags list should show all configured events:

Google Tag Manager tags list showing GA4 Meeting Booked Event and other configured tags

Step 4: Publish and Test

  1. In GTM, click Submit to publish your changes

  2. Enable Preview mode to test your setup

  3. Submit a form on your site

  4. Check GTM preview to confirm tags fire

  5. In Google Analytics, open Reports > Realtime > Overview or Admin > DebugView

  6. Verify your events appear in the events list

Google Analytics Realtime dashboard showing SurfaceFormSubmitEvent with 10 events recorded

Events may take a few minutes to appear in reports. Historical data will backfill once events start firing.

Google Analytics DebugView timeline showing multiple Surface form events firing with event counts

Troubleshooting

Events not appearing in GA4: Verify the event name in GTM exactly matches what you created in Google Analytics. Names are case-sensitive.

Multiple events firing: Check your triggers to ensure they're not firing on multiple conditions. Use GTM preview mode to debug.

No data in reports: Wait 5-10 minutes after first submission. Use DebugView for real-time validation while testing.

Was this helpful?