How to Set Up Dynamic Number Insertion (DNI) in CallRail?

I hope you enjoyed this post. If you’d like our team to set up, optimize, or integrate CallRail for you, Book a call here.
How to Set Up Dynamic Number Insertion (DNI) in CallRail
Table of Contents

Dynamic Number Insertion (DNI) is one of the most powerful features inside CallRail. It allows you to show different phone numbers to visitors depending on how they found your website. Whether they came from Google Ads, social media, email campaigns, or even direct traffic, CallRail will assign a unique number to each source. This provides you with full visibility into which marketing channels are driving genuine phone call conversions.

The best part? Setting up DNI is a fast and straightforward process. Most businesses can complete the setup in under 30 minutes. Once it’s live, you’ll be able to connect phone calls to campaigns, keywords, landing pages, and even specific ads.

5 Step DNI Setup Process

Step 1: Create a Tracking Number Pool

Start by creating a tracking number pool inside your CallRail account. A number pool is a set of phone numbers that can be dynamically assigned to website visitors based on their source of origin. The more visitors you expect simultaneously, the larger your pool should be. For small businesses, three to five numbers are often enough. For high-traffic sites, you may need ten or more.

To do this, log in to your CallRail dashboard. Click Numbers, then select Add Tracking Number. Choose the Dynamic Number Insertion option and follow the prompts to set up your pool.

Track Every Call. Prove Every Dollar with CallRail

CallRail Setup – Numbers, pools, keyword tracking, and forms configured so every lead is captured and traceable.

Smart Integrations – GA4, Google Ads, HubSpot/Salesforce sync; auto-logging, source/keyword mapping, and conversion uploads.

Clean Workflows – Routing rules, missed-call alerts, recordings, and scoring that improve response time and lead quality.

Step 2: Install the CallRail JavaScript Snippet

Next, you need to install the CallRail tracking script on your website. This script powers the dynamic swapping of numbers based on user sessions and UTM parameters.

Go to your CallRail dashboard and locate your account’s JavaScript snippet. Copy the script and place it right before the closing </body> tag on every page of your website. If you’re using a tag manager like GTM, you can create a custom HTML tag and fire it across all pages.

This script must be present and firing for DNI to work properly. Without it, the number won’t change when users arrive from different channels.

Step 3: Define Your DNI Settings

After installing the script, it’s time to configure where and when your tracking numbers appear. In CallRail, go to your number pool settings and define:

  • Which pages should display dynamic numbers
  • Which sources should trigger swaps (Google Ads, organic search, direct traffic, social media, email campaigns, etc)

You can get specific here. For example, you might choose to show dynamic numbers only on landing pages or service pages, while keeping your homepage static.

You can also create custom tracking rules using UTM parameters. This allows you to swap numbers only when a visitor comes from a specific campaign or source.

Step 4: Test the Setup Using UTM Parameters

How to Test Your DNI Setup with UTM Links

Once your pool and script are in place, it’s time to test. Visit your website with different UTM parameters, like:

?utm_source=google&utm_medium=cpc&utm_campaign=plumbing_services

If DNI is working correctly, you’ll see the phone number on your site change depending on the source and campaign parameters in the URL. Try visiting your site from an incognito window with several variations to simulate real-world traffic.

This step is essential for ensuring that attribution is functioning as intended.

Step 5: Use the CallRail Number Tester Tool

To double-check that everything is working properly, CallRail offers a free browser extension called the CallRail Number Tester. Once installed, it displays the number a user sees based on their source and session details.

This tool is ideal for troubleshooting number swaps, verifying configuration settings, and ensuring that users view the correct tracking number. If the number isn’t switching, the extension will show you why.

Why Dynamic Number Insertion Matters

DNI is the backbone of accurate call attribution. Without it, you can’t reliably connect phone calls to specific campaigns or traffic sources. With it, you gain access to granular call tracking, improve conversion attribution, and empower smarter budget decisions.

Imagine knowing not just that a user called, but that they came from a specific Google Ads keyword, landed on your product page, and converted within two minutes of being on site. That’s what DNI delivers. Set it up once, and you’ll gain valuable insights every day without lifting a finger.

Frequently Asked Questions (FAQs)

What is Dynamic Number Insertion (DNI) in CallRail?

Dynamic Number Insertion is a feature that automatically changes the phone number on your website based on a visitor’s source, such as Google Ads, Facebook, or organic search. This allows CallRail to track which marketing channel drove the phone call.

How many tracking numbers do I need in my number pool?

The number of tracking numbers depends on your website traffic. Small businesses may only need three to five, while high-traffic websites should consider pools of ten or more to avoid number reuse and ensure accurate attribution.

Does DNI work with Google Tag Manager?

Yes. You can install the CallRail tracking script using Google Tag Manager by adding it as a custom HTML tag and triggering it on all pages. This allows for full flexibility without requiring you to edit your website code directly.

Can I use DNI for offline campaigns?

DNI is designed for online tracking, but you can still use dedicated CallRail numbers for offline campaigns, such as print ads or radio spots. These numbers won’t rotate dynamically but will track leads from specific offline sources.

How do I know if DNI is working correctly?

You can test your setup using UTM parameters and CallRail’s browser extension, the Number Tester Tool. This tool verifies whether numbers are being swapped across different traffic sources and alerts you if a configuration issue is detected.
Share

Let’s Drive Results
Together

Recently Published

Work with a CallRail Consulting to Track Smarter, Grow Faster

Get in touch for a quick and easy answer.

This field is hidden when viewing the form
This field is hidden when viewing the form
This field is hidden when viewing the form
This field is hidden when viewing the form
Solve this: 5 + 8 = ?
This field is hidden when viewing the form