GoHighLevel install

TrueMetriks tracks pageviews, leads, and purchases from your GoHighLevel funnels and forwards them to every ad platform you have connected. Here is how to set it up.

Video guides

Install GoHighLevel tracking

Install GoHighLevel tracking

Payment plan and subscription automation

Payment plan and subscription automation

Custom events for forms and calendars

Fire custom events for GoHighLevel forms and calendars

Copy the tracking snippet from your dashboard

In your TrueMetriks dashboard, go to Settings > Tracking, pick the GoHighLevel tab, and click Copy on the Tracking snippet.

Showing setup for GoHighLevel

Install on GoHighLevel

One snippet picks up GHL form submissions, calendar bookings, and purchases automatically.

TRACKING SNIPPET

HTML
<script async src="https://q.yourdomain.com/t/s-ghl/abcd1234.js"></script>

GoHighLevel: Funnel settings → Tracking Code → Head. Paste, save, then test a form submission.

Checkout URL pattern

checkout
Click here if you have payment plans or subscriptions
Click here if you want to fire custom events for your GoHighLevel forms and calendars
Click here if you're using Typeform or Calendly
Settings → Tracking → GoHighLevel - copy the snippet, then paste it into your funnel

Checkout URL pattern. This is the word the tracker looks for in your URL to identify a checkout page. The default is checkout. If your funnels use a different word in their checkout URLs, change it in this field and click Save.

The card also has three expandable options - one for payment plans and subscriptions, one for firing custom events for your forms and calendars, and one for Typeform or Calendly. The first two are covered below.

Open the funnel in GoHighLevel

In the GoHighLevel left sidebar, click Sites.

Your Agency

Location

  • Launchpad
  • Dashboard
  • Conversations
  • Calendars
  • Contacts
  • Opportunities
  • Payments
  • AI Agents
  • Marketing
  • Automation
  • Sites
  • Memberships
  • Media Storage
  • Reputation
  • Reporting
  • App Marketplace
GoHighLevel sidebar - click Sites

At the top of the Sites page, click the Funnels tab.

Sites Funnels Websites Stores Webinars Analytics Blogs Forms

Funnels

Create and manage funnels to generate leads, appointments and receive payments.

Name Last updated
Lead Magnet Funnel Mar 06, 2026 02:03 PM
Spring Promo Mar 06, 2026 01:55 PM
Webinar Replay Feb 13, 2026 02:14 PM
Bookings Oct 01, 2025 04:23 PM
Click a funnel to open it (the highlighted row is just an example)

Click the funnel you want to track. You will repeat this for every funnel in your account - the snippet is the same.

Paste the snippet into Head tracking code

Inside the funnel, click the Settings tab. Scroll down to Tracking & scripts and paste the snippet you copied into the Head tracking code field. Then click Save.

← Back

Webinar Replay

Steps Stats Sales Security Events Settings

Tracking & scripts

Add third-party tracking and analytics scripts to your funnel.

Head tracking code

<script async src="https://q.yourdomain.com/t/s-ghl/abcd1234.js"></script>
Funnel Settings → Tracking & scripts → Head tracking code - paste the snippet, then Save

Repeat for each funnel.

Payment plans and subscriptions (webhook)

If you sell payment plans or subscriptions, add one GoHighLevel automation that POSTs to the TrueMetriks webhook URL each time a payment lands.

Grab the webhook URL

Back in your TrueMetriks dashboard, on the same GoHighLevel install card, expand Click here if you have payment plans or subscriptions and click Copy on the webhook URL.

Click here if you have payment plans or subscriptions

If you sell payment plans or subscriptions, you need to add a webhook in your GoHighLevel automation to track these payments.

In GoHighLevel, go to Automation, create a new workflow with a Payment Received trigger, then add a Webhook action that POSTs to the URL below.

WEBHOOK URL

HTML
https://q.yourdomain.com/api/webhooks/ghl/abcd1234efgh5678ijkl90mn

You can also read the full guide by clicking the Open install guide button below.

Expand the accordion to reveal the webhook URL, then click Copy

Open Automation in GoHighLevel

In the GoHighLevel left sidebar, click Automation.

Your Agency

Location

  • Launchpad
  • Dashboard
  • Conversations
  • Calendars
  • Contacts
  • Opportunities
  • Payments
  • AI Agents
  • Marketing
  • Automation
  • Sites
  • Memberships
  • Media Storage
  • Reputation
  • Reporting
  • App Marketplace
GoHighLevel sidebar - click Automation

Create a workflow from scratch

Top right, click + Create Workflow, then + Start from Scratch in the dropdown.

+ Start from Scratch
Build Using AI
Select from Template
Import from a campaign
Company based workflow
Click Create Workflow, then Start from Scratch

Add the Payment Received trigger

In the new workflow, add a trigger and pick Payment Received from the list. Leave the trigger name as Payment Received (or change it if you want), then click Save Trigger.

Payment Received

Activates when a payment record posts successfully.

CHOOSE A WORKFLOW TRIGGER

Payment Received

WORKFLOW TRIGGER NAME

Payment Received
Pick Payment Received as the trigger, then click Save Trigger

Add the Webhook action

Below the trigger, add an action and pick Webhook (the normal one - not Custom Webhook). Configure it like this:

  • Method: POST
  • URL: paste the webhook URL you copied from your dashboard

Leave Custom Data and Headers empty. Click Save Action.

Webhook

Fire a webhook containing the contact's details.

ACTION NAME

Webhook

METHOD

POST

URL

https://q.yourdomain.com/api/webhooks/ghl/abcd1234efgh5678ijkl90mn
Pick Webhook, set Method to POST, paste the URL, then click Save Action

Publish the workflow

Top right, flip the toggle from Draft to Publish, then click Save.

YN
Draft
Publish
Flip the toggle from Draft to Publish, then click Save

For reference, your published automation should look like this:

Track Payments to TrueMetriks Test Workflow Draft
Payment Received
No filters applied
🗑 📊 Stats
+ Add New Trigger
+
Webhook
+
END
What the finished automation looks like: Payment Received trigger -> Webhook -> END

Fire custom events for forms and calendars

Custom events let you fire an extra, named Facebook event for one specific form or calendar, matched by its name, so you can build an audience or optimize a campaign around that one source. Your standard Lead and Schedule still fire alongside it. For example: a newsletter_lead event only for your newsletter form, or a strategy_call_booking event only for your strategy-call calendar.

Video guide

Fire custom events for GoHighLevel forms and calendars

Open the custom events option and click Create

On the GoHighLevel install card in your dashboard, expand Click here if you want to fire custom events for your GoHighLevel forms and calendars, then click Create.

Click here if you want to fire custom events for your GoHighLevel forms and calendars

Fire a custom Facebook event for a specific form or calendar, matched by its name (the GoHighLevel "source"). Your standard Lead and Schedule still record in TrueMetriks. Created events appear under Facebook → Custom events, tagged GoHighLevel, where you can edit or remove them.

On the GoHighLevel install card, expand Click here if you want to fire custom events for your GoHighLevel forms and calendars and click Create.

Fill in the Create custom event popup

Create custom event

newsletter_lead
Source filter Optional

Only fire when the GoHighLevel form or calendar source contains this text. Leave blank to fire on every Lead. Case-insensitive.

Newsletter Signup
The Create custom event popup. Pick Lead for a form or Schedule for a calendar, type a custom name, choose when to fire, then paste the form or calendar name into the Source filter.
  • Standard event. Pick Lead for a form or Schedule for a calendar. This is the most important choice: Lead is for forms, Schedule is for calendars.
  • Custom event name. Type any name you want, for example newsletter_lead. This is the name the event shows under in Facebook. Use letters, numbers and underscores.
  • Fire when. Leave it on Always, or choose New customers only / Returning customers only to fire just for first-time or repeat contacts. See New vs returning customers for what those mean.
  • Source filter. This is where you tell TrueMetriks which form or calendar to match. Type the name of the form (for Lead) or the calendar (for Schedule). The match is case-insensitive and a "contains" match. Leave it blank to fire the custom event on every Lead (or every Schedule) instead of one specific source.

Where to find the form or calendar name

For a form, open Sites > Forms in GoHighLevel and edit the form. The name shown at the top is the source - copy it into the Source filter.

Back Newsletter Signup
In GoHighLevel open Sites → Forms and edit your form. The name at the top - here Newsletter Signup - is the source. Copy it into the Source filter.

For a calendar, open Calendars in GoHighLevel, edit the calendar, and look at Calendar name under Basic details. Copy that into the Source filter.

Back to calendars list Edit - Strategy Call

Basic details

Strategy Call
In GoHighLevel open Calendars, edit the calendar, and look at Calendar name under Basic details - here Strategy Call. Copy it into the Source filter.

Paste the name into the Source filter exactly as it appears, then click Create.

What you get after clicking Create

The event appears under Facebook > Custom events in your dashboard, tagged GoHighLevel with the source it matches. From here you can edit when it fires or remove it.

Custom events

Lead GoHighLevel newsletter_lead source contains "Newsletter Signup"
The saved event appears under Facebook → Custom events, tagged GoHighLevel with the source it matches. The green dot and check mean it is live.

TrueMetriks also creates a matching Custom Conversion inside Facebook Ads Manager (Events Manager > your pixel > Custom conversions). It starts Inactive and turns Active once the first matching event lands. Give it 30 to 60 seconds before you test.

Custom Conversions

  • Connect data
  • Overview
  • Datasets
  • Custom conversions
  • Integrations

Measure and Optimize with Custom Conversions

Use custom conversions to measure outcomes that happen on your website or in-store, and optimize your ads for URL traffic and custom events.

Q Search by name or ID
Custom Conversions Status Data Source Total custom conversions
Course Page View
ID 924925796383746
Active
My Site Pixel
ID 1234567890123456
228
Last received 8 hours ago
newsletter_lead
ID 1303950898573493
Inactive
My Site Pixel
ID 1234567890123456
0
Never received event
Facebook Events Manager → your pixel → Custom conversions. The newsletter_lead conversion is auto-created the moment you click Create in TrueMetriks. It starts Inactive until the first matching event lands.

Test it

Submit the form (or book the calendar) you filtered on. In Facebook Events Manager > Test events you will see both the standard event and your custom event arrive together - Lead plus your custom name for a form, Schedule plus your custom name for a calendar.

Receiving activity

ghltest.your-domain.com test_event_code: TEST89826

5 options selected
Events Received Received From Setup Method Event ID Time Received
Schedule Processed Server Manual Setup 019f02ec-a9ee-78... Today at 9:54:52 AM
strategy_call_booking Custom event Processed Server Manual Setup 72bc8865251381f... Today at 9:54:52 AM
PageView Custom event Processed Server Manual Setup 019f02ec-a6cc-79... Today at 9:54:51 AM
Lead Processed Server Manual Setup 019f02ec-3c98-79... Today at 9:54:24 AM
newsletter_lead Custom event Processed Server Manual Setup d077ec4bdeb3c89... Today at 9:54:24 AM
In Facebook Events Manager → Test events, both the standard event (Lead, Schedule) and your custom event fire together. Every row says Server because TrueMetriks is server-side.

How to test

After installing the snippet (and the webhook, if you set one up), the next step is verifying everything is firing correctly. See Test your integration for the full walkthrough.

Something not firing? See Troubleshooting.

Frequently asked questions

Where do I find the tracking snippet?

In your TrueMetriks dashboard at Settings > Tracking > GoHighLevel. The snippet has a Copy button and is generated for your account.

Do I need to paste the snippet on every funnel?

Yes. GoHighLevel scopes the Head tracking code per funnel, so each funnel needs the snippet pasted into its own Funnel settings. The snippet itself is the same across all funnels in your account.

What is the Checkout URL pattern?

It is the word the tracker looks for in your URL to identify a checkout page. The default is checkout, which matches GHL checkout URLs. If your funnels use a different word, change it in your dashboard and click Save. The code does not change.

How do I fire a custom Facebook event for one specific form or calendar?

On the GoHighLevel install card, expand Click here if you want to fire custom events for your GoHighLevel forms and calendars and click Create. Pick Lead for a form or Schedule for a calendar, type a custom event name, and put the form or calendar name in the Source filter. The custom event then fires alongside the standard Lead or Schedule.

What is the Source filter and where do I find the name?

The Source filter is the name of the GoHighLevel form or calendar you want to match. For a form, open Sites > Forms and copy the form name. For a calendar, open Calendars > edit the calendar and copy the Calendar name under Basic details. The match is case-insensitive. Leave it blank to fire on every Lead or every Schedule.

Which standard event do I pick - Lead or Schedule?

Lead is for forms and Schedule is for calendars. Pick Lead to fire a custom event for a form submission, and Schedule to fire one for a calendar booking.

When do I need the webhook?

If you sell payment plans or subscriptions, the recurring charges happen after the customer leaves the page, so the script cannot see them. The webhook signals TrueMetriks every time a payment posts in GoHighLevel.

Do I need both the script AND the webhook?

For payment plans or subscriptions, yes. The script handles pageviews, leads, and the first purchase from the browser. The webhook handles every recurring payment after that.

Need help with this?

Reach us instantly on WhatsApp, or send us a message and we will get back to you. On workdays we usually respond in less than 24 hours.

or send us a message