> For the complete documentation index, see [llms.txt](https://help.ringtonic.app/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.ringtonic.app/guides/analytics.md).

# Analytics

Ring Tonic provides powerful analytics to help you understand your call tracking performance and marketing ROI. Get a true bird-eye view of all your calls across every campaign, making it super easy for lead-gen teams to quickly see which areas are generating the most calls and which ones are underperforming.

The platform offers five comprehensive analytics reports:

* [**Call Activity**](#id-1.-call-activity-analytics)**:** Monitor call performance over time with detailed metrics on answered calls, missed calls, and call duration
* [**Attribution**](#id-2.-attribution-analytics)**:** Track which marketing sources drive the most calls, form leads and revenue, with full ROI analysis
* [**Tracking Number Performance**](#id-3.-tracking-number-performance)**:** Track call volume across all active numbers with filters for custom date ranges, Yesterday, Last 7 Days, Last 30 Days, and more
* [**Money Map**](#id-4.-money-map)**:** Visualize visitor and call locations on an interactive heatmap to identify geographic hotspots
* [**AI Agent**](#id-5.-ai-agent-analytics)**:** See how your AI call agents perform across every flow — outcomes, qualification and booking rates, transfers, and response latency

<figure><img src="https://2905537093-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FXSbXRgC7knjpaMCHwuKc%2Fuploads%2Fgit-blob-acf4303b0829cd146d88c8dacf0338d604776dc9%2FXnapper-2025-11-23-22.54.28.png?alt=media" alt="" width="375"><figcaption><p>Access Analytics from the left sidebar</p></figcaption></figure>

{% hint style="info" %}
All analytics data updates in real-time as calls come in. You can filter by date range, campaigns, sources, and mediums to drill down into specific segments.
{% endhint %}

***

### 1. Call Activity Analytics

Call Activity helps you monitor and analyze call performance across all your campaigns. This report shows you when calls are coming in, how many are answered vs missed, and how long calls typically last.

<div data-full-width="true"><figure><img src="https://2905537093-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FXSbXRgC7knjpaMCHwuKc%2Fuploads%2FanzHFUdQKtymlE0EGmsf%2FXnapper-2026-07-21-10.15.07.png?alt=media&amp;token=d2c327b8-97b8-4d9b-987d-f76b43b17dc7" alt=""><figcaption><p>Call Activity dashboard showing key metrics and trends</p></figcaption></figure></div>

#### What You'll See

**Captured vs Lost (Top of Page):**

The header leads with the two numbers that matter most — the leads you captured and the leads you lost — each shown with its share of your total calls (for example, "76% of 1,292 calls"):

* ✅ **Answered · captured** - Calls your team picked up
* ❌ **Missed · lost** - Calls that reached you but nobody answered — no answer, busy, or the caller hung up first (important to monitor!)

A supporting row beneath them shows where the rest of your calls went:

* **Failed** - Calls that never connected for a technical reason (a carrier error or unreachable destination), kept separate so a configuration problem doesn't hide inside your missed number
* **Spam Filtered** - Robocallers and bots blocked by your [Spam Filter](/guides/campaigns.md#configure-simple-routing) before they reached you
* **Voicemails** - Calls where the caller left a message
* **Avg Duration** - Average length of answered calls

{% hint style="success" %}
If comparison mode is enabled, you'll see percentage changes comparing your current period to the comparison period. Green indicates improvement, red indicates decline.
{% endhint %}

{% hint style="info" %}
**Every call lands in exactly one category.** Answered, Missed, Failed, Spam Filtered, and Voicemail always add up to your Total — so you can see at a glance where every call went, with nothing unaccounted for.
{% endhint %}

{% hint style="warning" %}
**Your answered rate may look lower than before.** Ring Tonic now separates out calls that were never really answered — a carrier voicemail picking up, a caller hanging up during a menu, or a robocall blocked by the spam filter. Those used to be grouped in with answered calls. Nothing about your calls has changed; the number is simply more accurate, and a better basis for judging real performance.
{% endhint %}

**Performance Chart:**

The chart visualizes your call data over time. You can customize the view:

* **Metric Selection:** Choose which metric to display (Total Calls, Answered Calls, Missed Calls, Failed Calls, Spam Filtered, or Avg Duration)
* **Time Grouping:** Group data by Day, Week, or Month
* **Comparison:** When enabled, overlay comparison period data to spot trends

<figure><img src="https://2905537093-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FXSbXRgC7knjpaMCHwuKc%2Fuploads%2Fgit-blob-580314e1c886c531f1b937bf424fed73774a3ec6%2FXnapper-2025-11-14-22.54.03.png?alt=media" alt=""><figcaption><p>Interactive chart showing call trends with comparison mode</p></figcaption></figure>

**Call Logs Table:**

Below the chart, you'll see a detailed table of all calls with:

* Call date and time
* Campaign name
* Caller phone number
* Call duration
* Call status (Answered, Missed, Failed, Spam Filtered, Voicemail)
* Traffic source and medium (for Website Tracker campaigns)
* AI qualification status (if enabled)
* Call recording (if enabled)

{% hint style="info" %}
Click on any call row to view detailed information including transcription, sentiment analysis, keywords, and deal value estimation (if AI features are enabled).
{% endhint %}

{% hint style="info" %}
**Timezones:** Call times appear in each call's campaign timezone. When a campaign uses a timezone different from your workspace, its rows are tagged with the zone (for example "EDT"); filtering the list to a single campaign shows the whole view in that campaign's timezone with a header label. See [Campaign Timezone](https://help.ringtonic.app/guides/pages/VdOTbPSa6hi12UUj6ZLp#id-4.-campaign-timezone).
{% endhint %}

<figure><img src="https://2905537093-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FXSbXRgC7knjpaMCHwuKc%2Fuploads%2Fgit-blob-6080d8a35393bf707506983120f1cc62e72d5de7%2FXnapper-2025-11-14-22.56.38.png?alt=media" alt=""><figcaption><p>Detailed call logs with filters and search</p></figcaption></figure>

**Live Updates:**

New and changed calls appear on their own. A few seconds after a call comes in, is answered or ends, the call list, the numbers at the top and the chart refresh in the background, so you can keep Call Activity open in a tab all day without refreshing it.

<figure><img src="https://2905537093-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FXSbXRgC7knjpaMCHwuKc%2Fuploads%2Fgit-blob-524d49d6bca29fa6ff35e8c80c6175018a446910%2Fcall-activity-live-updates.png?alt=media" alt="The Live updates switch beside the Call Activity title"><figcaption><p>The Live updates switch (1) beside the page title</p></figcaption></figure>

* **Live updates on** (green dot) - the page is connected and refreshing on its own
* **Reconnecting…** (amber dot) - the connection dropped; once it is back, the page catches up by itself
* **Live updates off** - switch it off to stop the refreshes; your choice is saved to your account

A tab left in the background catches up as soon as you come back to it.

{% hint style="info" %}
Live updates follow the date range you picked. If you leave the page open past midnight, select your dates again to include the new day.
{% endhint %}

#### How to Use Call Activity

**Step 1: Select Your Date Range**

1. Click the date range selector at the top
2. Choose a preset (Last 7 Days, Last 30 Days, Last 60 Days) or select custom dates
3. Optionally enable comparison mode to compare against a previous period

{% hint style="warning" %}
Date range limits depend on your subscription plan:

* **Indie Plan:** Up to 180 days
* **Agency Plan:** Up to 365 days
  {% endhint %}

<figure><img src="https://2905537093-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FXSbXRgC7knjpaMCHwuKc%2Fuploads%2Fgit-blob-9ee58d047abf089e19aa389e46f312faa5e37b3f%2FXnapper-2025-11-14-22.57.34.png?alt=media" alt=""><figcaption><p>Select date ranges and enable comparison mode</p></figcaption></figure>

**Step 2: Apply Filters (Optional)**

Filter your data to focus on specific segments:

1. **Campaigns:** Select specific campaigns to analyze
2. **Campaign Tags:** Analyze only the campaigns that have any of the selected [tags](https://help.ringtonic.app/guides/pages/VdOTbPSa6hi12UUj6ZLp#id-5.-organize-campaigns-with-tags). This filter appears once a campaign has a tag
3. **Sources:** Filter by traffic source (Google, Facebook, Direct, etc.)
4. **Mediums:** Filter by medium (organic, cpc, referral, etc.)

Click **Apply** to refresh the data with your filters.

<figure><img src="https://2905537093-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FXSbXRgC7knjpaMCHwuKc%2Fuploads%2Fgit-blob-e232fda9a124c0e742e87c80ef1e1288aa1bf5b2%2FXnapper-2025-11-14-22.58.37.png?alt=media" alt=""><figcaption><p>Filter by campaigns, sources, and mediums</p></figcaption></figure>

<figure><img src="https://2905537093-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FXSbXRgC7knjpaMCHwuKc%2Fuploads%2Fgit-blob-448b98836dbb8ad08a66dfdb9cc2cec940cf75f3%2Fcall-activity-campaign-tags-filter.png?alt=media" alt="The Campaign Tags filter open on Call Activity"><figcaption><p>Pick campaign tags to analyze the campaigns that have them</p></figcaption></figure>

**Filter the call list by tag**

The call table has its own **Filters** menu. Use **Tags** to show only the calls that carry a tag, or to hide them:

1. Click **Filters** above the table, then **Tags**
2. Choose **Is In** (calls with any of the selected tags) or **Is Not In** (calls with none of them), then pick one or more tags. The list shows the tags that are on at least one call
3. Combine it with other filters, for example **Status** = **No Answer** to see only the missed calls with that tag

<figure><img src="https://2905537093-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FXSbXRgC7knjpaMCHwuKc%2Fuploads%2Fgit-blob-e63e607d108ea09054fffa056a004163c936c364%2Fcall-activity-tags-filter.png?alt=media" alt="The Tags filter open on the call table, combined with Status = No Answer"><figcaption><p>Open Filters (1), choose Is In or Is Not In and pick the tags (2), and add Status to narrow the list (3)</p></figcaption></figure>

{% hint style="info" %}
**Find missed after-hours calls:** in your call flow, add a [Tag node](/guides/call-flow-builder.md#node-types) (for example "After hours") on the closed branch of your **Business Hours** node. Then filter the call list by **Tags** = After hours and **Status** = No Answer.
{% endhint %}

**Choose and arrange columns**

Show only the columns you need, in the order you want:

1. Click **Columns** above the table
2. Tick or untick a column to show or hide it
3. Drag a column by its handle to move it up or down the list; the table follows the same order
4. Click **Reset to default** to bring back the usual columns in their usual order

<figure><img src="https://2905537093-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FXSbXRgC7knjpaMCHwuKc%2Fuploads%2Fgit-blob-7cd01601a4b5ae3e1df40a53156d353fef49a928%2Fcall-activity-columns-menu.png?alt=media" alt="The Columns menu open on the call table"><figcaption><p>Open Columns (1), tick or untick a column (2), drag it by its handle (3), or reset to default (4)</p></figcaption></figure>

{% hint style="success" %}
Your layout is saved to your account. It stays when you refresh, come back later, or sign in on another device, in every workspace. Each teammate keeps their own layout. A column you hide from its header menu (**Hide**) is saved the same way.
{% endhint %}

**Step 3: Analyze the Data**

Use the metrics and charts to identify:

* Peak call times and days
* Missed call patterns (opportunities to improve coverage)
* Campaign performance trends
* Call duration insights (longer calls might indicate higher engagement)

**Step 4: Review Call Details**

Click on any call in the table to open the Call Details sheet with four tabs:

* **Details** - Call information, caller history, campaign, source/medium, and notes
* **Lead** - AI qualification status, deal value, tags, and manual qualification controls
* **Recording** - Call recording playback, transcription with speaker labels, sentiment analysis, keywords, and AI summary
* **Timeline** - Chronological view of all call events (ring, forward, answer/no-answer, voicemail, etc.)

{% hint style="info" %}
**Timeline Tab:** The Timeline tab shows every event that occurred during the call in chronological order—from when the call started, through forwarding attempts, to voicemail if applicable. This helps you understand exactly what happened during each call.
{% endhint %}

<figure><img src="https://2905537093-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FXSbXRgC7knjpaMCHwuKc%2Fuploads%2Fgit-blob-32a6e20985d60c236322d34dc180acdee82fb65e%2FXnapper-2025-11-18-21.06.35.png?alt=media" alt=""><figcaption><p>Detailed call information with transcription and AI insights</p></figcaption></figure>

**Step 5: Export Call Logs**

Need to analyze your call data in Excel or share with your team?

1. Click the **Export** button at the top right of the call logs table
2. Choose your preferred format:
   * **Export to Excel** - Full formatting with .xlsx format
   * **Export to CSV** - Plain text format for importing to other tools

{% hint style="info" %}
Exports respect your current filters and date range, and always include every column, whether you show or hide it in the table. If you're filtering by a single campaign, the campaign name will be included in the filename automatically.
{% endhint %}

<figure><img src="https://2905537093-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FXSbXRgC7knjpaMCHwuKc%2Fuploads%2Fgit-blob-39cb38dc46a93dc7441796a7019c5bc170325e7c%2FXnapper-2025-11-14-23.00.48.png?alt=media" alt=""><figcaption><p>Export call logs to Excel or CSV format</p></figcaption></figure>

**Step 6: Bulk Actions**

Select calls with the row checkboxes — or the header checkbox to select all — then open the **Actions** menu to act on them together:

* **Update Lead Status** — manually set the lead status on the selected calls
* **Add Tags** / **Remove Tags** — tag or untag the selected calls
* **Re-qualify Leads** — re-run AI qualification on the selected calls against your latest criteria

{% hint style="info" %}
Re-qualification re-runs the AI analysis on calls you already received — most useful after you change your qualification criteria. See [Re-qualify Existing Leads](/guides/setup-workspace.md#re-qualify-existing-leads) for the available options and how it works.
{% endhint %}

***

### 2. Attribution Analytics

Attribution shows you which marketing sources drive the most valuable calls, the most form leads, and the highest ROI. This report is essential for understanding where to invest your marketing budget.

<div data-full-width="true"><figure><img src="https://2905537093-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FXSbXRgC7knjpaMCHwuKc%2Fuploads%2Fgit-blob-7c616911e2ada6bb35b2ea46d7ef8b905dd1cbb7%2FXnapper-2025-11-18-21.07.47.png?alt=media" alt=""><figcaption><p>Attribution dashboard with ROI metrics and source performance</p></figcaption></figure></div>

#### What You'll See

**Key Metrics (Top Cards):**

1. **Total Leads** - Call leads plus form leads
2. **Total Calls** - Total number of calls received
3. **Form Leads** - Website form submissions that aren't spam
4. **Qualified Calls** - Number of calls qualified as leads by AI (requires AI automation)
5. **Conversion Rate** - Percentage of calls that were qualified
6. **Top Source** - Traffic source with the most calls plus form leads, with both counts underneath
7. **Avg Deal Value** - Average estimated deal value across qualified calls (requires AI automation)

{% hint style="info" %}
**Form leads appear when you capture website forms** with [Form Submissions](/guides/form-submissions.md). A call counts as a lead unless it's marked junk or blocked by the spam filter, and a form counts unless it's marked spam — the same counts as your [Scheduled Lead Reports](/guides/scheduled-reports.md). A workspace without form capture sees calls only, and its qualified card keeps the name **Qualified Leads**.
{% endhint %}

**Source Performance Table:**

The table breaks down performance by traffic source with these columns:

* **Source** - Traffic source (Google, Facebook, Direct, etc.)
* **Leads** - Call leads plus form leads from this source (with form capture)
* **Forms** - Form leads from this source (with form capture)
* **Calls** - Total calls from this source
* **Qualified** - Qualified leads from this source
* **Conv. Rate** - Conversion rate (Qualified ÷ Calls)
* **Avg Duration** - Average call length
* **Cost** - Total marketing cost for this source
* **Revenue** - Total estimated revenue from qualified calls
* **Cost/Call** - Average cost per call (Cost ÷ Calls)
* **ROI** - Return on investment percentage

{% hint style="info" %}
The table is sortable by any column. Click column headers to sort by that metric and identify your best and worst performing sources.
{% endhint %}

A source that brought only form leads still gets its own row, with 0 calls. Cost, Revenue, Cost/Call and ROI stay based on calls.

<figure><img src="https://2905537093-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FXSbXRgC7knjpaMCHwuKc%2Fuploads%2Fgit-blob-734eadc619a803525c449547cc45c19d8d630d88%2FXnapper-2025-11-18-21.08.19.png?alt=media" alt=""><figcaption><p>Source performance breakdown with ROI calculations</p></figcaption></figure>

**Attribution Chart:**

Compares total calls, qualified calls and form leads for each traffic source. With form capture, the chart is titled **Calls and Form Leads by Source** and adds a **Form Leads** series.

<figure><img src="https://2905537093-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FXSbXRgC7knjpaMCHwuKc%2Fuploads%2Fgit-blob-fd6f30ac94495cf1e4727d8768d0072b88a183f8%2FXnapper-2025-11-14-23.04.03.png?alt=media" alt=""><figcaption><p>Attribution trends across different marketing sources</p></figcaption></figure>

#### How to Use Attribution Analytics

**Step 1: Select Your Date Range**

1. Click the date range selector
2. Choose your analysis period
3. Enable comparison mode to see how performance changed over time

**Step 2: Apply Filters**

Focus on specific segments:

* **Campaigns:** Analyze specific campaign performance
* **Sources:** Compare different traffic sources
* **Mediums:** Break down by marketing medium

**Step 3: Analyze Source Performance**

Use the table to identify:

* **Highest ROI sources:** Where you're getting the best return
* **Low conversion sources:** Traffic sources that aren't converting
* **Cost efficiency:** Sources with the lowest cost per call
* **Revenue drivers:** Which sources bring the highest value deals

{% hint style="success" %}
**Best Practice:** Focus your budget on sources with high ROI and qualified lead conversion. Consider pausing or optimizing low-performing sources.
{% endhint %}

**Step 4: Export Your Data**

Need to analyze data further or share with your team?

1. Click **Export** button at the top right of the Source Performance table
2. Downloads an Excel file with all source performance data
3. Includes all visible columns and respects your current filters — with form capture, it also has **Total Leads** and **Form Leads** columns at the end

<figure><img src="https://2905537093-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FXSbXRgC7knjpaMCHwuKc%2Fuploads%2Fgit-blob-c184ec4517bafd4ca295e625926e3e292c5373ec%2FXnapper-2025-11-14-23.04.56.png?alt=media" alt="" width="563"><figcaption><p>Export source performance data to Excel</p></figcaption></figure>

{% hint style="info" %}
The export includes data for ALL sources in your workspace, not just the visible page. Use filters before exporting to narrow down the data.
{% endhint %}

***

### Understanding Marketing Costs & Revenue

To get accurate ROI calculations in Attribution analytics, you need to track marketing costs and revenue.

#### How Ring Tonic Calculates ROI

**Cost Data:** Ring Tonic integrates with your marketing platforms to automatically pull cost data. If not integrated, you can manually track costs by associating UTM parameters with budget amounts.

**Revenue Data:** When AI automation is enabled with deal value estimation:

1. AI analyzes call transcriptions
2. Estimates deal value based on conversation content
3. Sums qualified call values to calculate total revenue
4. Calculates ROI: `(Revenue - Cost) / Cost × 100`

{% hint style="warning" %}
**Important:** AI deal value estimation requires:

* An AI provider (OpenAI, Anthropic, or Google) key configured in workspace settings
* Auto estimate deal value enabled
* Optionally, a Products & Services catalog for more accurate estimates
  {% endhint %}

**Example ROI Calculation:**

```
Google Ads Campaign:
- Cost: $1,000
- Calls: 50
- Qualified Calls: 15
- Total Revenue: $7,500 (sum of estimated deal values)
- ROI: ($7,500 - $1,000) / $1,000 × 100 = 650%
```

***

### 3. Tracking Number Performance

Tracking Number Performance helps you monitor call activity across all your active phone numbers. This report identifies which numbers are performing well, which have high missed call rates, and which aren't receiving any calls at all.

<div data-full-width="true"><figure><img src="https://2905537093-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FXSbXRgC7knjpaMCHwuKc%2Fuploads%2FpzrXdpYVAFppiH00FFyy%2FXnapper-2026-07-21-10.21.50.png?alt=media&amp;token=0bd780e7-a542-48af-96cb-0304f807600d" alt=""><figcaption><p>Tracking Number Performance dashboard showing metrics for all active numbers</p></figcaption></figure></div>

#### What You'll See

**Captured vs Lost (Top of Page):**

The header leads with the two numbers that matter most across all your tracking numbers — the leads you captured and the leads you lost — each shown with its share of your total inbound calls:

* ✅ **Answered · captured** - Calls your team picked up
* ❌ **Missed · lost** - Calls that went unanswered — no answer, busy, or the caller hung up first

A supporting row beneath them covers the rest:

* **Failed** - Calls that never connected for a technical reason (a carrier error or unreachable destination), kept separate so a configuration problem doesn't hide inside your missed number
* **Spam Filtered** - Robocallers and bots blocked by your [Spam Filter](/guides/campaigns.md#configure-simple-routing) before they reached the number
* **Voicemails** - Calls where the caller left a message
* **Zero-Call Lines** - Active tracking numbers that received zero calls

{% hint style="warning" %}
**Zero-Call Lines** indicate tracking numbers that are active but not receiving any calls. Common causes include:

* **Low Website Traffic (Website Tracker):** There aren't enough visitors to rotate through your entire number pool, so some numbers are never displayed.
* **Script Installation Issue (Website Tracker):** The tracking code isn't installed correctly, so numbers aren't swapping at all.
* **Pending Launch (Static):** Marketing materials (like flyers or billboards) haven't been distributed yet.
* **Ad Issues:** The ad campaign driving traffic to the number is paused or disapproved.
  {% endhint %}

**Tracking Number Performance Table:**

The table shows detailed metrics for each active tracking number:

* **Friendly Name** - Custom label (editable inline by clicking the pencil icon)
* **Number** - The phone number (formatted for readability)
* **Campaign** - Which campaign the number is assigned to (clickable link)
* **Type** - Campaign type (Website Tracker or Static)
* **Calls** - Total calls received by this number
* **Missed** - Missed calls for this number (highlighted if the missed rate is above your threshold)
* **Failed** - Calls that never connected for a technical reason
* **Spam Filtered** - Robocallers and bots blocked before they reached the number
* **Voicemails** - Calls where the caller left a message
* **Avg Duration** - Average call length for answered calls
* **Trend** - Period-over-period percentage change (e.g., 📈 +15%)

<figure><img src="https://2905537093-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FXSbXRgC7knjpaMCHwuKc%2Fuploads%2FZ8DqPh7ya3LxJ9Tc46Hl%2FXnapper-2026-07-21-10.22.35.png?alt=media&amp;token=3c6f0393-6da0-40d6-afc2-ae21baadfc9c" alt=""><figcaption><p>Detailed performance metrics for each tracking number with trend indicators</p></figcaption></figure>

{% hint style="info" %}
**How the missed rate is calculated.** A number's missed rate counts only calls that could actually be answered. Spam-filtered and failed calls never reached the business, so they're shown in their own columns and left out of the rate. A number sitting behind the spam filter now shows its true missed rate instead of one diluted by blocked robocalls — so if you compared these figures before, some may read a little higher now. The calls haven't changed, only the way the rate is measured.
{% endhint %}

#### Understanding the Visual Indicators

**Zero-Call Numbers:**

Numbers with zero calls are highlighted with a red background, making them easy to spot. These require immediate attention to understand why they're not receiving calls.

{% hint style="success" %}
**Pro Tip:** Sort the table by "Missed" to quickly identify numbers with the highest missed call rates. These are opportunities to improve your answer rate and capture more leads.
{% endhint %}

#### Common Use Cases

**Website Tracker Campaign Monitoring:**

For Website Tracker campaigns with number pools:

* Verify the script is working (numbers should show activity)
* Identify if pool size is too large (many numbers with 0 calls despite healthy traffic)
* Ensure all active numbers are rotating correctly

**Static Campaign Health Check:**

For static campaigns:

* Confirm the single tracking number is receiving calls
* Monitor missed call rate to ensure good coverage
* Track performance after launching new marketing materials

**High Missed Call Rates:**

Numbers with a missed call rate above your workspace threshold (default: 5%) show a warning indicator:

* Review your forwarding configuration
* Check if your business number has adequate coverage during peak hours
* Consider implementing call routing rules or backup numbers
* Review the call logs to understand when missed calls occur most

{% hint style="info" %}
**Tip:** You can customize the missed call threshold in your **Workspace Settings** → **Analytics & Alerts** tab. Adjust it based on your business needs and call volume patterns.
{% endhint %}

{% hint style="danger" %}
**Critical:** High missed call rates mean you're losing potential leads. Every missed call is a lost opportunity. Use this report to identify and fix coverage gaps quickly.
{% endhint %}

**Number Pool Optimization:**

Use this report to optimize your number pools:

* Too many zero-call numbers? Your pool might be too large for your current traffic volume.
* All numbers heavily used? Your pool might be too small, risking visitor collisions.
* High missed rates across all numbers? Likely a forwarding destination or staffing coverage issue.

**Marketing Material Verification:**

After distributing new marketing materials:

* Check that the tracking number shows activity within expected timeframe
* Zero calls after launch indicates potential issue with materials or distribution
* Compare performance across different campaigns/materials

***

### 4. Money Map

Money Map visualizes where your visitors and callers are located on an interactive heatmap. Identify geographic hotspots, discover underserved areas, and understand the spatial distribution of your leads.

<figure><img src="https://2905537093-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FXSbXRgC7knjpaMCHwuKc%2Fuploads%2FJzw58tZGYGlHTOl1mAgn%2FXnapper-2025-12-30-14.58.01.png?alt=media&amp;token=1eeb26e7-4523-4393-98eb-84ae5ae6b9a4" alt=""><figcaption><p>Money Map Analytics Page</p></figcaption></figure>

#### What You'll See

**Key Metrics (Top Cards):**

1. **Visitors Tracked** - Number of visitors with location data (shows coverage percentage)
2. **Calls Mapped** - Number of calls with location data (shows coverage percentage)
3. **Top Visitor City** - City with the most visitor sessions
4. **Top Call City** - City generating the most calls

**Interactive Heatmap:**

The map displays two distinct layers:

* **Blue heatmap** - Visitor locations (where website visitors are browsing from)
* **Orange heatmap** - Call locations (where callers are located, or ad location for billboard tracking)

Visitor locations come from each visitor's IP address, using free IP databases by default. For more accurate city-level locations, [add your own MaxMind account](/guides/setup-workspace.md#visitor-location).

{% hint style="info" %}
**Heatmap Intensity:** Darker colors indicate higher concentrations. The orange call layer displays on top of the blue visitor layer so you can see where visitors convert to calls.
{% endhint %}

{% hint style="success" %}
**Pro Tip:** Zoom into high-activity areas to see detailed count badges. Hover over badges to see both visitor and call counts for that location.
{% endhint %}

**Top Cities Tables:**

Below the map, two tables show your top 10 cities by visitor count and call count, making it easy to identify your strongest geographic markets.

<figure><img src="https://2905537093-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FXSbXRgC7knjpaMCHwuKc%2Fuploads%2FMwAfRlZodnaDMh1lYmsf%2FXnapper-2025-12-30-14.59.01.png?alt=media&amp;token=8bbd18aa-8ef4-4e92-85c9-7419c94992db" alt=""><figcaption><p>Top Cities Tables</p></figcaption></figure>

#### How to Use Money Map

**Step 1: Select Your Date Range**

1. Click the date range selector
2. Choose your analysis period (up to 365 days on Agency plan)
3. Click **Apply** to refresh the map

**Step 2: Apply Filters (Optional)**

Focus on specific segments:

* **Campaigns:** View locations for specific campaigns
* **Sources:** Filter by traffic source (Google, Facebook, etc.)
* **Mediums:** Filter by medium (organic, cpc, etc.)

**Step 3: Analyze Geographic Patterns**

Use the heatmap to identify:

* **High-converting areas** - Where orange (calls) overlaps with blue (visitors)
* **Underserved markets** - High visitor areas with few calls (opportunity for local targeting)
* **Service area gaps** - Calls coming from areas outside your service region
* **Ad placement validation** - For billboard/static campaigns, verify calls originate near the ad location

{% hint style="warning" %}
**Billboard Rule:** For static campaigns with [ad locations configured](/guides/campaigns.md#step-6-set-ad-locations-optional), the map shows where the ad is placed (not where the caller is located). This helps validate that calls are coming from your target advertising area. Without an ad location set, calls appear at the caller's location instead.
{% endhint %}

#### Common Use Cases

**Local Service Businesses:**

* Identify neighborhoods generating the most leads
* Discover new service areas with untapped demand
* Verify your local SEO is driving calls from target areas

**Multi-Location Businesses:**

* Compare lead density across different markets
* Identify which locations need more marketing support
* Track expansion opportunities based on call patterns

**Agency Reporting:**

* Show clients geographic ROI for local campaigns
* Demonstrate ad effectiveness with location data
* Identify new market opportunities for clients

***

### 5. AI Agent Analytics

If any of your flows use the [AI Agent node](/guides/ai-call-answering.md), the **AI Agent** page rolls its performance up across every flow in the workspace.

#### What You'll See

| Section            | What it tells you                                                                                                                              |
| ------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------- |
| **Summary cards**  | AI sessions, resolution rate, qualified and booked counts, transfers, and response latency — with period-over-period change in comparison mode |
| **Per-flow table** | One row per flow with its key rates; click a row to expand the per-node breakdown                                                              |

AI-handled calls are also labeled throughout **Call Activity** — an **AI Agent** outcome column on the call list, plus **AI Handled** and **AI Outcome** filters.

{% content-ref url="/pages/zPRsePZujXkPkJKoj7jR" %}
[AI Call Answering](/guides/ai-call-answering.md)
{% endcontent-ref %}

***

### Comparison Mode

All analytic reports support comparison mode to help you track performance over time.

#### How to Use Comparison Mode

**Step 1: Enable Comparison**

1. Click the date range selector
2. Toggle **Compare** switch
3. Select your comparison period

**Step 2: View Comparison Data**

* **Metric Cards:** Show percentage changes with colored indicators (green = improvement, red = decline)
* **Charts:** Overlay comparison period data as a lighter line
* **Tables:** Some tables show period-over-period changes

<figure><img src="https://2905537093-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FXSbXRgC7knjpaMCHwuKc%2Fuploads%2Fgit-blob-8f22e932411fe9aefa4254c94b84a53ac4ed2585%2FXnapper-2025-11-14-23.08.44.png?alt=media" alt=""><figcaption><p>Comparison mode showing period-over-period changes</p></figcaption></figure>

**Common Comparison Scenarios:**

* **Previous Period:** Compare your selected date range to the immediately preceding period of equal length
* **Year over Year:** Compare your selected date range to the same period last year

{% hint style="success" %}
Use comparison mode to:

* Identify seasonal trends
* Measure campaign impact
* Track improvement over time
* Spot performance issues early
  {% endhint %}

***

### Best Practices

Here are some tips to get the most value from Ring Tonic analytics:

#### Daily Monitoring

**Check Call Activity daily to:**

* Monitor missed calls (respond quickly to improve conversion)
* Identify peak call times (ensure adequate staffing)
* Track campaign performance in real-time

#### Weekly Analysis

**Review Attribution weekly to:**

* Identify top performing sources
* Calculate ROI for each marketing channel
* Adjust budget allocation based on performance
* Export data for team meetings

#### Monthly Reporting

**Use comparison mode monthly to:**

* Track month-over-month growth
* Identify seasonal patterns
* Measure impact of marketing changes
* Report to stakeholders with data exports

#### Campaign Optimization

**Optimize campaigns by:**

* Pausing low-converting sources
* Increasing budget on high-ROI sources
* Testing different messaging for low-qualified sources
* Adjusting coverage hours based on peak call times

***

## How long your analytics data is kept

Your aggregated analytics — totals, trends, and charts — are kept for all time. The underlying individual call and form records age out based on your plan's retention window, but you're always warned in advance and can download a copy first.

{% content-ref url="/pages/gl8tJlKl3jrXgj5UnLri" %}
[Data Retention](/guides/data-retention.md)
{% endcontent-ref %}

To keep the individual records too, beyond your plan's window, turn on Extended Storage for the workspace.

{% content-ref url="/pages/LvCJm25mRT0STHrpUoJN" %}
[Extended Storage](/guides/extended-storage.md)
{% endcontent-ref %}
