wiki/clients/current/adava-care/2026-04-05-callrail-setup-implementation.md · 1109 words · 2026-04-05

CallRail Setup — Implementation Walkthrough

Overview

Internal working session with Mark Hope, Melissa Cusumano, and Sebastian Gant to implement CallRail for [1]. The session covered the rationale for call tracking, live setup of a DNI pool and a static location number, WordPress plugin integration, and cache-clearing procedures. The Glendale location was used as the worked example; remaining locations were split between Melissa and Sebastian to complete independently.

Attendees: Mark Hope · Melissa Cusumano · Sebastian Gant
Date: 2026-04-05


Key Decisions


Action Items

Owner Task Status
Melissa + Sebastian Split remaining locations 50/50; create a static CallRail number for each 🔲 Open
Melissa + Sebastian Update all instances of each location's original number on the website (page content, footer, tel: links) using Elementor 🔲 Open
Melissa + Sebastian Clear WP Engine + WP Rocket caches after each batch of edits 🔲 Open
Melissa Notify Karosh that CallRail implementation is underway but not yet complete 🔲 Open
Future Create dedicated static CallRail numbers for Google Ads call extensions / offline campaigns 🔲 Backlog
Future Set up webhook to push call recordings into HubSpot 🔲 Backlog
Future Investigate webhook to backfill Google keyword data (Google populates click-to-keyword association on ~12-hour delay) 🔲 Backlog

Implementation Details

DNI Pool — Main Website Number

Purpose: Attribute calls to their traffic source (ad click, organic, direct, etc.) for any visitor who calls the main number.

Configuration:
- Swap target: 414-262-0653 (main website number, also appears in footer)
- Pool size: 4 numbers (414 area code)
- Forwards to: 414-262-0653 (original number unchanged)
- Name: "Website Pool"
- Call recording: Enabled

How it works: A JavaScript snippet (injected via the CallRail WordPress plugin) replaces the swap-target number with a unique pool number for each visitor. That number is reserved for ~20 minutes. If the visitor calls within that window, CallRail captures the Google Click ID and attributes the call to its source. After 20 minutes the number is released back to the pool; the call still forwards correctly but attribution granularity may be reduced.

Pool sizing note: With 4 numbers, attribution degrades if more than 4 concurrent visitors are active within a 20-minute window. Monitor for data gaps and expand the pool if needed.

Static Tracking Numbers — Location Pages

Purpose: Track calls originating from specific location pages or offline campaigns. Static numbers do not swap; they are permanently placed on the page.

Configuration per location (Glendale as example):
- CallRail number: New 262-area number selected during session
- Forwards to: 262-247-7101 (Glendale's original RingCentral number)
- Name: "Glendale" (or "Glendale Website")
- Call recording: Enabled
- Whisper message: Disabled

Attribution capability: Static numbers capture source at a coarser level than the DNI pool (e.g., "website" vs. specific keyword). For keyword-level or campaign-level granularity, create a separate dedicated static number per campaign.

WordPress Plugin Integration

  1. In WordPress admin → Plugins → Add Plugin, search for "CallRail" and install + activate.
  2. In CallRail → Integrations → WordPress, copy the WordPress-specific plugin key (this is not the general API key).
  3. In WordPress admin → Settings → CallRail, paste the plugin key and save.
  4. The swap goes live within ~1–2 minutes.

⚠️ Use an incognito window to verify the swap is working. The DNI timer means repeated checks from the same browser session will stop swapping after the first hit.

Updating Location Numbers in Elementor

For each location page, three or more instances of the original number typically need updating:

  1. Visible phone number text in the location section
  2. The tel: href link on that number (controls tap-to-call on mobile)
  3. Any additional appearances lower on the page (e.g., near the address block)
  4. Footer (if the location number appears there separately from the main number)

Edit each instance via Edit with Elementor, replace both the display text and the tel: link value, then Publish.

Cache Clearing (Required After Every Edit Batch)

After completing edits, clear both caches in this order:

  1. WP Engine: WordPress admin top bar → WP Engine → Caching → Clear All
  2. WP Rocket: WordPress admin top bar → WP Rocket → Clear Cache

If numbers still appear stale after clearing, verify in an incognito window. Persistent browser cache can mask changes even after server-side caches are cleared.


Attribution Notes — Google Ads

Static location numbers will show that a call came from the website, but will not surface keyword-level data the way the DNI pool does. For Google Ads specifically:


Pricing Note

The current CallRail plan includes 10 numbers. Additional numbers beyond that incur a small incremental cost. Defer adding campaign-specific numbers until the base location rollout is complete and value has been demonstrated to the client (Karosh).


Sources

  1. Index|Adava Care
  2. Index|Adava Care — Client Index
  3. Dynamic Number Insertion|Dynamic Number Insertion (Dni) — Concept
  4. Callrail Hubspot Webhook|Callrail → Hubspot Webhook Integration