How to Set Up Call Tracking with Number Pools in Sparkforge
Number pools rotate tracking phone numbers on your site based on visitor source, so Sparkforge can attribute every inbound call to the ad, page, or keyword that drove it.
Number pools (also called call tracking codes) attribute inbound phone calls back to the ad, landing page, or keyword that drove the visitor. Sparkforge swaps the displayed phone number based on the visitor’s source, then ties the call back to that source in reporting.
Create a number pool
- Go to Settings > Phone Numbers.
- Click the + Add Number dropdown and choose Add Number Pool.
- Select Visitors Activity as the pool type.
- Choose which visitors to track. All visitors is recommended. PPC search only swaps numbers for paid-ad arrivals.
- Click Next: Create Pool.
Configure the pool
- Number Name: internal label for the pool.
- Pool Size: minimum 4 numbers. Higher traffic needs more numbers to avoid collisions.
- Forwarding Number: where calls actually ring. Do not use a Sparkforge or Twilio number here — it creates a routing loop.
- Swapping Number: the number shown on the page. Can match the forwarding number or be different.
Choose tracking numbers
Click Next: Choose Numbers. Pick local numbers (matched to your forwarding area code), toll-free, or numbers from any specific area code. Each number bills at the standard phone-number rate for your account.
Number features
- Whisper message: plays to you (the agent) when the call connects — e.g. "Call from Google Ads." The caller does not hear it.
- Call recording: optional. Add a recording disclosure if you turn it on.
Click Activate Number when done.
Install the snippet on your site
- Open the pool, click the three dots, choose Number Pool Info.
- Copy the Normal Snippet Code.
- In Sites > Funnels (or Websites), open the funnel and go to Settings.
- Paste the snippet into the Body Tracking code field. Save.
To swap on a single page only, open the page editor, click the Tracking Code icon, choose Footer Tracking, paste the snippet, and save.
Swap a number inside a button
Use a standard tel: anchor and the script will swap the displayed number:
<a href="tel:(972) 421-5139" class="btn btn-blue">Call Us</a>Test number swapping
Open an incognito window and visit yourwebsite.com/landing-page. The displayed phone number should change. If you set All Except Direct as the tracking option, you must reach the page from another link — not by typing the URL directly.
Track keywords from Google Ads
Add ?keyword={keyword} to the destination URL on your Google Ads. Sparkforge will fill the Keyword column in the Call Report when matching visitors call the tracking number.
yourwebsite.com/landingpage/?keyword={keyword}Group ID for multi-ad sites
If you run multiple ads pointing to the same site and want each ad to swap to its own pool, use a Group ID. Edit the pool, click Add/Edit Group ID, name it, and use the group snippet on the matching pages. The script picks the best-matching pool for each visitor.
Phone number formats supported by the swap script
For 10-digit US numbers, all of these formats are recognized and swapped:
111-222-3333111.222.3333(111) 222-3333
Frequently Asked Questions
Why do I need a number pool to track calls?
How much does a number pool cost?
Can calls from the pool ring my web app or mobile app?
Can I use a Sparkforge or Twilio number as the Forwarding Number?
How do I capture the Google Ads keyword in reporting?
Was this article helpful?
Thanks for the feedback.