RocketLauncher AI

SMS & Phone

How to Set Up Call Tracking with Number Pools in GoHighLevel

By Marnix Geerkens. Published 2023-09-21. Updated 2026-06-02.

GoHighLevel's dynamic number pools let you track which marketing channel or keyword drove a phone call by showing different phone numbers to different visitors. Instead of assigning one static number per campaign, the platform swaps the displayed number based on where the visitor came from, so you can see exactly which ads, keywords, or pages are generating calls.

Watch it, then build it

Get the full platform free for 30 days

That walkthrough runs on GoHighLevel. Start it free through RocketLauncher and you get 30 days instead of the usual 14, the whole platform unlocked, plus our setup help and a community of thousands of builders in 47+ countries.

30 days, not 14Full platform, nothing held backFree community and setup help

We earn a referral commission if you keep GoHighLevel after the trial. It never changes your price.

Summary. Dynamic call tracking in GoHighLevel uses number pools to assign a unique phone number to each visitor session. When someone lands on your page, GoHighLevel displays a number tied to that session. When they call, the platform knows the source, keyword, and landing page that brought them in. This gives you accurate attribution data without manually maintaining separate numbers for every campaign.

What you will learn

  • Understand the difference between static and dynamic call tracking
  • Choose between Marketing Campaign and Visitors Activity pool types
  • Configure pool size based on the number of simultaneous visitors you expect
  • Embed the tracking snippet on your website to enable dynamic number swapping
  • Read call tracking reports to identify which channels drive the most calls

Steps

  1. Go to Phone Numbers in Settings

    Inside the GoHighLevel sub-account, navigate to Settings and then Phone Numbers. Click the Add Number button.

  2. Select Add Number Pool

    In the dialog that appears, choose the Add Number Pool option rather than purchasing a single number.

  3. Choose the pool type

    Select Marketing Campaign if you are tracking one channel only, such as a single paid ads campaign. Choose Visitors Activity if you are tracking multiple sources like paid search, SEO, and social. Visitors Activity is the more capable option and is recommended when you have more than one traffic source.

  4. Set the tracking options

    Select All Visitors as your tracking option if you want the broadest attribution coverage across multiple campaigns and keywords. This is the recommended choice for most setups.

  5. Name the pool and set pool size

    Give the pool a descriptive name, such as the business name and campaign period. Set the pool size to at least four numbers, which is the minimum. If your site gets heavy simultaneous traffic, increase the pool so every active visitor session gets a unique number.

  6. Select your phone numbers

    Choose numbers from your available inventory or purchase new ones to fill the pool. All numbers in the pool must be in the same area code or region for consistency.

  7. Add the tracking snippet to your website

    GoHighLevel generates a short JavaScript snippet after you save the pool. Paste this snippet into the header of every page where you want call tracking to work. The snippet reads each visitor's source data and swaps the phone number dynamically.

Tips

  • Start with a pool size of four and monitor how often numbers get reused. If two visitors frequently share a number at the same time, increase the pool.
  • Dynamic call tracking only works when the snippet is present on the page. Confirm it loads on all pages where the tracking number is displayed.
  • Check call reports weekly to see which keywords and sources generate calls, then adjust ad spend accordingly.

Related tutorials

How To Create a Message Template (SMS)
How To Create a Message Template (SMS)3:08 · SMS & Phone
Activate SaaS Mode And Set Up Twilio
Activate SaaS Mode And Set Up Twilio4:24 · SMS & Phone
Use existing business phone numbers + no more spam likely live!
Use existing business phone numbers + no more spam likely live!3:28 · SMS & Phone
How to Setup Auto Missed Call Text Back Setting
How to Setup Auto Missed Call Text Back Setting1:05 · SMS & Phone
Phone Number Settings Explained
Phone Number Settings Explained3:11 · SMS & Phone
Build Initial SMS Auto-Replies in HighLevel
Build Initial SMS Auto-Replies in HighLevel3:56 · SMS & Phone

Watch it, then build it

Get the full platform free for 30 days

30 days, not 14Full platform, nothing held backFree community and setup help

Frequently asked questions

What is the difference between static and dynamic call tracking?

Static assigns one fixed number per campaign. Dynamic swaps numbers per visitor so you track keywords and sources, not just channels.

How many numbers do I need in a pool?

At least four, which is the platform minimum. More concurrent visitors means you need a larger pool.

Will contacts still be created when a tracked number is called?

Yes. Calls through tracked numbers create or update contacts in the CRM just like any other call.

Can I use number pools alongside regular GoHighLevel phone numbers?

Yes. Pool numbers and standard purchased numbers coexist in the same account.

Do I need to add the snippet to every page?

Add it to every page where the tracked phone number appears. Missing it on any page means those calls go unattributed.

Back to all SMS & Phone tutorials