How to structure tracking numbers for multiple traffic sources
The way you organize your tracking numbers determines how granular your call attribution can be.
This article explains the main structural approaches and when to use each one.
The core principle: One swap group per source you want to measure separately
- Each swap group in Nimbata represents a pool of numbers assigned to a specific traffic source or audience.
- When a visitor arrives from that source, the DNI script swaps in a number from that group and attributes any resulting call to it.
- If two sources share the same swap group, you cannot distinguish calls from one versus the other.
- If each source has its own group, you can.
Common structures
Single source tracking
Use one swap group set to All Online Sources if you only need to know that a call came from your website, without separating channels.
This is the simplest setup and requires the smallest number pool.
Channel-level tracking
Use a separate swap group for each major channel you want to measure independently:
- One group for Google Ads (Paid Search)
- One group for Organic Search
- One group for Direct
- One group for Referral / Social
- Each group requires its own pool of numbers.
- Visitors are assigned numbers from the pool that matches their session source.
- This structure lets you compare call volume and quality by channel.
Campaign-level tracking
- For paid channels where you want to track down to the campaign, ad group, or keyword level, use DNI with a Google Ads or paid-search swap group.
- Nimbata captures the
gclidparameter and passes keyword and campaign data alongside the call. - You do not need a separate number per campaign.
- One paid search swap group handles all Google Ads traffic.
- The granular data comes from the session parameters captured at the time of the call.
Offline and fixed-source tracking
For sources where DNI is not appropriate.
Print, radio, billboards, business cards, or directory listings use a single dedicated number per source.
These numbers do not belong to a pool and do not swap; they are permanently published on the specific channel.
- Billboard on Highway 101 > one fixed local number
- Yellow Pages listing > a different fixed local number
- Direct mail campaign > another fixed number
Each call to these numbers is automatically attributed to the source the number is assigned to.
Mixing online and offline
A typical multi-source setup looks like this:
- Website – All digital (DNI pool): catches all website visitors not covered by a more specific group
- Google Ads (DNI pool): captures paid search sessions with full keyword attribution
- Print / offline (fixed numbers): one number per offline channel
This gives you full digital session attribution plus clean offline tracking, without overlap.
How many numbers do you need?
DNI pool size depends on your peak concurrent visitors and average session duration.
Fixed-source numbers are always one number per source.
Detailed Guide: How to calculate the size of your tracking number pool
Detailed Guide: How many tracking numbers do you need?
Setting it up
Once you know your structure, create your swap groups and assign numbers accordingly.
Detailed Guide: How to set up swap groups
Detailed Guide: Tracking numbers 101: how to set up call tracking numbers with Nimbata
Detailed Guide: DNI script 101: what is dynamic number insertion?
Updated on: 05/05/2026
Thank you!