How to install and configure the CallRail WordPress plugin to enable Dynamic Number Insertion (DNI) on a WordPress site. This approach avoids manual JavaScript snippet management and is the preferred method for WordPress-hosted clients.
CallRail offers a dedicated WordPress plugin that handles DNI pool deployment automatically. The key configuration detail is that the plugin requires a WordPress-specific integration code from CallRail's Integrations panel — not the general API key. Using the wrong credential is a common mistake.
See also: [1] | [2]
CallRail.⚠️ Do not use the general API key. The plugin requires a WordPress-specific code found in a different location.
Keep the general API key saved separately — it may be needed for other integrations (e.g., webhooks, HubSpot).
Within a minute or two, the DNI pool will begin swapping the configured target number for visitors.
Once the plugin is active and connected:
Important: Only configure one DNI pool per website. Multiple pools on a single site will cause unpredictable swapping behavior.
Because of the 20-minute visitor timer, repeated checks from the same browser session will stop showing swaps. Always verify in a fresh incognito window to simulate a new visitor and confirm the number is swapping correctly.
After any phone number updates or plugin configuration changes, clear both caches to ensure all visitors see the updated numbers:
If numbers still appear stale after clearing both caches, use an incognito window to bypass any persistent local browser cache.
This applies to both DNI pool changes and manual static number replacements on page content.
The DNI pool only swaps the single configured target number. Location-specific or campaign-specific numbers placed elsewhere on the site are static and must be updated manually in Elementor (or the relevant page builder):
tel: href link on the same element.After updating all instances, publish the page and clear both caches as described above.
This setup was implemented for [3] during a live walkthrough session. The DNI pool was configured to swap the main number (414-262-0653), and a static number was created for the Glendale location (forwarding to 262-247-7101). Melissa and Sebastian split the remaining locations to complete the static number rollout.