Dynamic number insertion, often shortened to DNI, is the part of call tracking that confuses beginners the most. It does not need to. This guide explains what it is, why it matters, and how to set it up, all in plain language.

Key term
Dynamic number insertion (DNI)
A method that changes the phone number shown on your website based on how each visitor arrived. A visitor from a Google ad sees one number. A visitor from organic search sees another. See the Wikipedia entry on dynamic number insertion for background.

Why static numbers are not enough for websites

Imagine your website shows one fixed phone number. A call comes in. You know it came from the website, but not whether the visitor found you through a paid ad, a Google search, or a link from another site. For one offline ad, a single fixed number is fine. For a website with many traffic sources, it hides the detail you need.

DNI fixes this. Instead of one number for the whole site, it shows a different number depending on the visitor's source. When the call comes in, the number itself tells you where the visitor came from.

How DNI works, step by step

The technical part happens in the background, but the logic is easy to follow.

  1. You add a small snippet of code to your site

    The tool gives you one short piece of JavaScript. You paste it into your site once. It loads on every page where you want numbers to swap.

  2. A visitor arrives, and the code reads the source

    When someone lands on your page, the code checks how they got there. It looks at the link they clicked, the campaign tags in the web address, and the site that sent them.

  3. The code swaps the visible number

    Based on the source, the code replaces the phone number on the page with a tracking number from your pool. A paid-ad visitor and an organic visitor now see different numbers.

    Tip: the swap happens fast, so visitors never notice. They just see a normal phone number.
  4. The visitor calls the number they see

    The customer dials the tracking number on the page. It forwards to your real line, exactly like any tracked call.

  5. The report ties the call to the exact source

    Because each source had its own number, the report can say the call came from a specific ad or keyword, not just "the website." That is the payoff.

Number pools, in plain English

To tell many visitors apart at the same time, DNI uses a pool of numbers rather than one. If ten people from ten different sources visit at once, the tool needs enough numbers to give each a unique one for a short window.

Plain version: a number pool is a small set of tracking numbers the tool rotates among visitors. More simultaneous visitors need a larger pool. Most small sites do fine with a handful of numbers.

This is why DNI can cost a little more than a single static number. You are renting a few numbers instead of one. Tools price numbers differently, which matters at scale. CallScaler charges $0.50 per local number on its paid tiers, which keeps a pool cheap. Other tools charge more per number, so a pool adds up faster.

What DNI lets you see

With DNI working, your report can answer real questions, such as:

  • Which Google Ads keyword drove the most calls last week?
  • Do paid visitors call more than organic visitors?
  • Which landing page turns visits into phone calls best?
  • Is a specific campaign worth its cost, measured in calls?

None of these are answerable with a single fixed number on your site. That detail is the whole reason DNI exists.

Will DNI hurt my SEO or NAP consistency?

This is a common worry, and the short answer is no, if you set it up correctly. The concern is about NAP consistency, which means your Name, Address, and Phone should match across the web for local search. The fix is simple: keep your real business number for organic and direct visitors, and only swap the number for paid traffic. Most tools do this by default. Your Google Business Profile and citations keep your real number, so local search is not affected.

A simple mental model

Think of DNI like name tags at a busy event. Everyone walks in through the same door, but each person gets a tag that says where they came from. When they talk to you, the tag tells you their group. DNI gives each website visitor a temporary "tag" in the form of a unique phone number, so when they call, you know their source.

Do you need DNI?

You need DNI if you run a website with traffic from more than one source and you want to know which source drives calls. You do not need DNI if you only run a single offline ad with one number. Most online marketers do need it, which is why nearly every call tracking tool includes it.

What to read next

If you have not set up a basic tracking number yet, start with the setup guide, then add the DNI snippet. To see how this compares to Google's built-in call feature, read the comparison guide. When you are ready to pick a tool, the CallScaler review explains why it is a friendly place to start, with cheap numbers that keep a DNI pool affordable.

Practice on a real, free account

Try CallScaler free

The simplest place to apply what you just learned

Sources: Wikipedia: dynamic number insertion · Wikipedia: call tracking