Most installs work fine with the default script settings. This page explains each optional setting in Tracking › Tracking Code, and how to capture values from your own cookies on call records.
Script settings
The advanced settings in Tracking › Tracking Code let you control how the DNI script behaves on your website. Most installs work fine with the defaults. Use these settings when your site has specific technical requirements. You find them under Call Tracking, in the Advanced category.
Tracking Code
The script that swaps numbers on your website and attributes visitors to calls.
Advanced
Fine-tune script behaviour for edge cases
1. Single Page Site (SPA)
What it does
Swaps numbers as visitors navigate without reloading the page. It re-runs the number swap logic every time the page address changes without a full browser reload. Standard websites reload the entire page when a visitor navigates. Single Page Applications (SPAs), sites built with React, Vue, Angular, or similar frameworks, update the DOM dynamically without a full reload.
When this happens, the DNI script may run before the phone number exists in the DOM, leaving the number unswapped. Turning on Single Page Site (SPA) tells Nimbata to watch for page changes in the browser’s history (a new address without a reload) and re-run the swap after a short delay.
Once it is on, set a Delay (seconds) from 1 to 3, to give the new page time to render, including any animated transitions. A delay of 0 turns SPA mode off.
For numbers that appear later on the same page (a chat widget, a lazy-loaded footer), use Monitor for HTML changes instead.
When to turn it on
Your website is built on a JavaScript framework, or your phone number disappears after navigating between pages.
2. Phone/Text Redaction
What it does
Removes extra phone numbers from your website so that only tracking numbers are displayed. Some websites have multiple phone numbers published on them. Enter the phone numbers and/or leading text you wish to remove, separated with a comma.
When to use it
Your pages show phone numbers other than the one you swap (an old number, a second line), and you want visitors to see only your tracking numbers.
To hide callers’ numbers in your call activity instead, use Mask Caller ID in the Preferences of Account › Organization: once it is on, the last 7 digits of each caller ID are hashed going forwards.
3. Page paths to exclude
What it does
Prevents the DNI script from running on specific pages of your website. Type a path and press Enter to add it; add as many paths as you need. The script still loads on the paths you list, but does nothing there: no number swaps and no tracking.
- A path must match the page’s path exactly.
/thank-youcoversyoursite.com/thank-you, but not/thank-you/or/thank-you/step-2: add each one you need. - Leave out the domain and any query string (
?...). If you forget the leading/, Nimbata adds it.
Where to use this
Thank-you pages, checkout pages, admin paths, or any page where you do not want number swapping to occur.
4. Remove CC prefix from links
What it does
Changes how the DNI script writes the tracking number into tel: links. With it off, swapped links use the full international number, for example tel:+14155550142. With it on, they use the number in its display format with the punctuation removed, which leaves out the country code when the display format does.
When to turn it on
Click-to-call links on your site are not dialing correctly after the swap, and your tracking numbers include a country code prefix.
5. Monitor for HTML changes
What it does
Tracks dynamic DOM updates: it keeps watching the page for new instances of your swap target after the initial load, and swaps them as they appear. This is similar to SPA mode but operates at a lower level. Rather than re-running the full swap logic on navigation, it uses a MutationObserver to detect any new phone number strings being added to the DOM and replaces them immediately. It is on by default.
When to turn it on
Your phone number appears in content that loads after the initial page render (for example, inside a lazy-loaded section, a chat widget, or a dynamically populated footer), and SPA mode alone has not resolved the issue.
Use Eval
The Advanced settings no longer include Use Eval, the option that changed how the script runs for older or custom JavaScript environments.
Detailed guide: Set up DNI step by step
Detailed guide: Set up swap groups
Troubleshooting: Numbers not swapping
Cookie capture
Custom cookie capture lets Nimbata read values from your site’s first-party cookies and attach them to call records. This is useful when you store attribution data, CRM IDs, or other session signals in cookies that you want to correlate with calls. Local storage keys work the same way.
Cookies and local storage keys are now set up as fields in Organize › Fields, not in the Tracking Code settings. The Browser Data menu of Tracking › Tracking Code only links you there.
Before you start:
- The DNI script must already be published on your site.
- Cookie capture relies on the script being present to read cookies at session time.
Select the right project
Use the project selector in the top-right corner to confirm you’re in the correct project.
Open Fields
Go to Organize › Fields and click .
Pick Cookie
Choose the field type Cookie (Captured from your website), or Local storage for a local storage key.
Enter the cookie name
In Cookie name, type the exact name your website sets. A name can be up to 128 characters, with letters, numbers and symbols but no spaces or accented letters.
Add the cookie
Click . Nimbata updates your live tracking script straight away: there is nothing to publish. If your tracking code isn’t published yet, the cookie takes effect when you publish it.
🎉 Captured cookie values will now appear on call records and can be used as filters in Workflows and Dashboards & Reports.
Tip
To stop capturing a cookie, remove its field in Organize › Fields. Nimbata won’t remove a cookie that a workflow still uses: take it out of the workflow first.