If you’re not tracking your phone calls, then you’re not getting an accurate representation of how leads become customers. After all, you’re probably tracking your online traffic — but what about all those leads that get lost when someone takes an offline action like picking up the phone? 

You can track those leads with our dynamic number insertion feature. In this article, we’ll discuss in-depth what dynamic number insertion is, how it works, and how it can help you better optimize your business for success.

What is Dynamic Number Insertion?

Dynamic number insertion is a CallRail feature that assigns a unique phone number to each online source, such as organic search, PPC ads, Yelp, or anywhere else your business has a presence online. That phone number will display to visitors who arrive at your website via that specific source, and the data will then feed to your Google Analytics account for you to review once your phone starts ringing. This allows you to pinpoint the exact source of incoming calls.

Why is this tool valuable? To put it simply, it’s the core of call tracking. In order to accurately track phone calls, you need to install dynamic number insertion. Secondly, dynamic number insertion allows you to understand who your customer is. If you know where your customer hangs out online — or, more importantly, which sources drive the most phone calls — you can focus your time and adspend on optimizing channels that drive conversions. Think about it: By knowing where all your calls are coming from, you can better optimize pretty much every aspect of your business – your marketing strategy, advertising campaigns, and even your products and services.

How Does Dynamic Number Insertion Work?

Installing CallRail’s dynamic number insertion on your website is as simple as installing a line of JavaScript code. This code will detect your user’s source and place a cookie on their browser that tells your website to display a specific phone number. This also allows the same number to always appear for that particular user, even if they leave your website and come back later.

You can easily set up dynamic number insertion directly from your CallRail dashboard. Note: If you have multiple companies in your CallRail account, you’ll need to install a different dynamic phone number insertion script for each company.

  1. Go to Settings
  2. Choose the company you wish to set up dynamic number insertion for
  3. Choose Integrations from the top menu, then click on Dynamic Number Insertion
  4. Copy the JavaScript code
  5. Paste the code into each website page right before the </body> tag

Ideally, you’ll want to install this code on every page of your website. That way, you’ll always know which source led to a call.

*Pro-Tip: Dynamic number insertion is great for pages that have phone numbers displayed in their HTML, however, you can also  dynamically swap images just as easily.

How to Use Dynamic Number Insertion

So you’ve installed dynamic number insertion on your site — awesome! But what happens next?

First, you’ll want to test your dynamic number insertion to ensure that it’s working. Make sure you clear your cookies or enable private browsing on your Web browser. This will give the appearance that you are a new visitor to your website.

Next, go to Google and search for your full URL. Then follow these steps:

  1. Click your URL
  2. Navigate to a page that has your tracking phone number
  3. If it’s there, then it worked correctly! You just acted as an organic visitor to your website.

You can also test dynamic number insertion on your PPC ads by simulating a click without actually clicking on your ad. Just add “?gclid=test” to the end of your URL in your Web browser, hit “enter” and you’ll be taken to your website as if you’d just clicked on your paid ad. If your tracking number is displayed, then DNI has been successfully implemented..

Need to test DNI on Bing Ads? The process has a few more steps:

  1. Open Mozilla Firefox and download the RefControl plugin
  2. Go to Tools > RefControl Options > Add Site
  3. Type in your site’s address as: “www.yoursite.com
  4. Select Custom and type in “http://www.bing.com
  5. Click “OK,” then clear your cookies
  6. Type in “www.yoursite.com/?utm_medium=cpc” to test the phone number swap

Concerned about NAP consistency and dynamic number insertion? Be sure to check out our advanced guide to local SEO, DNI and NAP consistency.

Analyzing the Data

Now comes the fun part: Digging into your analytics to see which sources are driving phone calls. As we mentioned earlier, dynamic number insertion instantly feeds data about your callers into your Google Analytics account for you to see exactly which sources are making your phone ring.

In Google Analytics, you can set up Goals for your calls to track them as conversions, create segments for your callers and even add calls as a step in a multi-channel conversion funnel. This way, you can see phone calls alongside other Goals and conversions and track everything side by side. The data can then be fed into Google AdWords for you to track your PPC campaigns’ conversions.

Dynamic number insertion also allows you to track calls at the keyword level. With keyword call tracking, CallRail can trace which keyword a caller used to find your business. When someone visits your website after using a certain keyword, CallRail will display the correct phone number to that person in order for you to track them. When that person leaves your website, the number is freed up for another person to use.

It’s not hard to see why keyword call tracking is a favorite feature of our customers. The ability to see which keywords are triggering phone calls is extremely valuable for paid search strategies.

Getting the Most out of Your Dynamic Number Insertion Data

The data you gather through dynamic number insertion is incredibly valuable. Consider these ideas:

  • Focus adspend on marketing and advertising campaigns that are driving high converting phone calls
  • Optimize products or services according to your Web pages that are driving calls
  • Build on content that is driving phone calls, such as blog posts, white papers, and webinars

CallRail customer Top Level Management was able to gather some outstanding data from dynamic number insertion to leverage for their business. With dynamic number insertion and keyword level call tracking in place, the Colorado-based franchise consulting agency has been able to better optimize AdWords campaigns for their clients to drive more qualified leads and sales. Consequently, they’ve also been able to lower their customer acquisition costs by 66 percent.

In addition, Top Level Management now has a more accurate picture of how well its clients’ AdWords campaigns are performing. Through CallRail, the company has been able to determine that 70 percent of its clients’ leads are phone calls (versus 30 percent that are online forms). Without CallRail’s dynamic number insertion in place, it would appear that their ad campaigns weren’t working at all.


Without call tracking in place, your business could be missing out on valuable information about what campaigns drive customers to your business, potentially wasting spend on channels that aren’t working. Adding dynamic number insertion to your analytics arsenal is a great way to dive in and get to know the ins and outs of your customers — who they are, where they hang out online, which online sources resonate the best with them, and even what keywords they use online to find your business.

Want to see how dynamic number insertion works in real time?  Schedule a demo with one of our account executives. We’d be happy to show you how CallRail prove which channels are driving leads to your business.