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
Go to Phone Numbers in Settings
Inside the GoHighLevel sub-account, navigate to Settings and then Phone Numbers. Click the Add Number button.
Select Add Number Pool
In the dialog that appears, choose the Add Number Pool option rather than purchasing a single number.
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.
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.
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.
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.
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
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.






