Skip to content

Event Tracking with Google Analytics (GA4) via Google Tag Manager ​

Fluent Forms, one of WordPress's most powerful form builders, allows seamless integration with Google Analytics (GA4) through Google Tag Manager (GTM). This helps you track form engagement and improve conversions.

This document applies to the latest Google Analytics: GA4.

NOTE

You can use this GTM and GA4 setup with standard forms and Conversational Forms. The same view and submit events apply to both form types.

Overview ​

This guide shows you how to set up tracking for your website's forms. The goal is simple: we want to know two main things:

  1. How many people see your form.

  2. How many people actually fill it out and submit it.

Knowing this is incredibly helpful because it helps you stop guessing. You can finally get answers to questions like, "Is my contact form too long and complicated?" or "Are people even finding my signup form?"

With this setup, you can:

  • See the real problem: Find out if a lot of people are viewing a form but then giving up without submitting it.

  • Make smart changes: Test new ideas, like removing a field or changing your Submit button text, and see if it actually helps more people finish the form.

  • Get better results: Use what you learn to get more contacts, signups, or quotes from your website.

How the Three Tools Work Together ​

To make this happen, we use three tools that work together as a team:

  1. Fluent Forms: This is simply the form on your WordPress site. When someone sees the form or submits it, Fluent Forms sends out a signal.

  2. Google Tag Manager (GTM): Think of this as the helpful middleman or a post office. Its job is to catch those signals from Fluent Forms. It grabs the important information, like the form's name and the action (whether it was viewed or submitted).

  3. Google Analytics 4 (GA4): This is your main dashboard where you see all the results. GTM sends a neat, organized report over to GA4. This allows you to log in and easily see things like, "100 people saw the 'Request a Quote' form this week, and 10 people submitted it."

GTM Elements for Fluent Forms Events ​

TagsTriggersVariables
213 (2 Required, 1 Optional)
TypecHTML, GA4 ConfigurationCustom Event2 Data Layer, 1 JavaScript

Types of Tags, Triggers, and Variables:

  • Tags: Custom HTML, GA4 Configuration

  • Triggers: Custom Event

  • Variables: 2 Data Layer Variables, 1 JavaScript Variable

A built-in variable [Event] will be used to identify the type of Fluent Forms events.

1. Creating Fluent Forms Variables ​

NOTE

In Google Tag Manager, variables store values from your website (such as data layer properties) so tags and triggers can use them.

First, navigate to the Variables tab in your Google Tag Manager workspace. From there, find the User-Defined Variables area and click the New button to create a new variable.

A popup will appear. Click the edit icon to configure the variable.

A new window opens. Choose Data Layer Variable as the variable type.

Your Variable properties should look like this:

TitleFluentFormID
Variable TypeData Layer Variable
Data Layer Variable NameFluentFormID
Data Layer VersionVersion 2

Create another variable using the following configuration:

TitleFluentFormEventAction
Variable TypeData Layer Variable
Data Layer Variable NameeventAction
Data Layer VersionVersion 2

[Optional] Create another variable using the following configuration to display the Form Page Title:

2. Creating Fluent Forms Trigger ​

In Google Tag Manager, a Trigger defines the specific conditions that cause a Tag to fire. For this setup, we need to create a custom trigger that activates when it detects a Fluent Forms event, such as a form view or submission.

To do this, go to the Triggers section in your GTM workspace and click the New button to open the trigger editor.

Follow the settings below to create the trigger:

TitleFluentFormActivitiesEvent
Event TypeCustom Event
Event NameFluentFormActivities
Trigger Fires onAll Custom Events

3. Creating Fluent Forms Tags ​

Now that we have our "when" (the Trigger), it's time to set up the "what" — the Tag. A Tag is the actual task that Google Tag Manager performs when a trigger is activated. For this project to work correctly, we will create two tags that work together.

We will use a Google Analytics: GA4 Configuration tag and pass form event data from the website using a Custom JavaScript Snippet attached to webpages, and also through Google Tag Manager itself with a Custom HTML tag.

Let's create the Custom HTML tag first:

Go to Tags and click New.

Then select Tag Type as Custom HTML and paste the snippet below into the GTM code editor:

TitlecHTML – FluentFormsDataPush
Tag TypeCustom HTML
html
<script>
(function($){
  var fluentForms = $('.frm-fluent-form');
  fluentForms.each(function() {
    var $form = $(this);
    var formId = $form.attr('data-form_id');
    dataLayer.push({
      'event': 'FluentFormActivities',
      'eventCategory': 'FluentForm',
      'eventAction': 'FormView',
      'FluentFormID' : formId
    });
    $form.on('fluentform_submission_success', function() {
      dataLayer.push({
        'event': 'FluentFormActivities',
        'eventCategory': 'FluentForm',
        'eventAction': 'FormSubmitted',
        'FluentFormID' : formId
      });
    });
  });
})(jQuery);
</script>

TIP

Click the copy icon in the top-right corner of the code block to copy the full snippet, then paste it into the GTM Custom HTML tag editor.

After you insert the code, open Triggering, select Page View – All Pages as the firing trigger, as shown below:

You are almost done. Create one last tag that fetches the event data, forwards it to Google Analytics, and formats the properties that will be sent.

Go to Tags again and select Google Tag, as shown below:

Enter your Google Analytics 4 Measurement ID (steps below), then configure the settings variable.

TitleFluentForms – GA4
Tag TypeGoogle Analytics: GA4 Configuration
Measurement IDG-XXXXXXXX [Follow instructions below to grab this code]

Fields to Set:

debug_modetrueFor Debug View
EventTypeSelect as Variable
EventActionSelect as Variable
FormIDSelect as Variable
FormNameSelect as Variable

Google Analytics 4 Measurement ID ​

To get the Google Analytics 4 Measurement ID, follow the steps below:

Go to your Google Analytics Dashboard and click Admin (the gear icon in the bottom left of the page).

Select the target account or create a new one with your desired details. Also select an existing Property if you already have one, or create a new one.

Under the property name, open Data Streams.

Create a new Data Stream as Web if your website is not already configured. Provide an appropriate URL without a protocol and a Stream Name.

[Optional] Click the gear icon to select only the data you need for Fluent Forms event tracking. Enable Page Views only. Other data types can add unnecessary noise to Google Analytics for this setup.

After you click Save, you will see the Data Stream details. Copy the Measurement ID and paste it into Google Tag Manager.

Return to the last tag you created. When the Google Analytics settings are configured, select the trigger the same way you did for Custom HTML.

NOTE

Select the FluentFormActivitiesEvent trigger you created in the previous step.

You are done with the setup. You can test your changes in Preview Mode or make them live by Publishing from the Workspace.

Enter a meaningful Version Name so you can identify this work later and revert to it if needed.

After you confirm the setup works for Fluent Forms, publish your workspace. Then open a page that contains a form, submit it with test data, and check Events in Google Analytics.

4. Final result in Google Analytics ​

The sample form used for testing looks like this:

After the page loads, even without any interaction, the form sends a FormView event to GTM. Your configuration picks it up, and the event appears in Google Analytics.

You can expand the page_view event for further details.

After you submit the form, you will see another event: FormSubmitted.

Expand the Event Data sections to see more details:

Google Analytics 4 also includes Debug View. Because we enabled debug_mode in the GA4 configuration tag, you can explore live events there as well:

Troubleshooting ​

If FormView or FormSubmitted events do not show up, check the items below.

Nothing appears in GTM or GA4 ​

  • Publish your GTM workspace after saving changes.
  • Test in an incognito window with ad blockers turned off.
  • Confirm the GTM container is on the page and clear your site cache.

FormView works, FormSubmitted does not ​

  • Submit the form successfully and wait for the confirmation message.
  • Failed validation or spam protection blocks the fluentform_submission_success event.
  • Test with a simple form first.

No FormView on page load ​

  • Set the Custom HTML tag trigger to Page View – All Pages.
  • Make sure jQuery is loaded on the page.
  • The form must use the frm-fluent-form class.
  • Popups and page builders may load the form late — test on a normal page first.

GTM works, GA4 is empty ​

  • Check the Measurement ID in the FluentForms – GA4 tag.
  • Set the GA4 tag trigger to FluentFormActivitiesEvent, not All Pages.
  • Match data layer variable names exactly: FluentFormID and eventAction.
  • Use DebugView for live results. Standard reports can take 24–48 hours.

Variables show as undefined ​

  • Fix FluentFormID and FluentFormEventAction variable names in GTM.
  • Remove FormName from the GA4 tag if you did not create that optional variable.

Duplicate events ​

  • Do not use GTM and a separate GA4 snippet on the same site.
  • Check for multiple GTM containers or duplicate Custom HTML snippets.

Still stuck? ​

Use GTM Preview: load a form page, check for FluentFormActivities, then submit and look for FormSubmitted. If Preview works but GA4 does not, recheck the Measurement ID and GA4 tag trigger.

That's it. You will now receive events in Google Analytics for all Fluent Forms on your website. To analyze conversions directly inside WordPress alongside GA4, see the Submission Reports. For more help, see How to Get Support.

Enjoy Fluent Forms as the most powerful form plugin for WordPress!