# Call metrics

Nimbata records every call attempt, whether it was answered or not. This page explains the three measurements it uses for call activity (calls, call legs and unique callers), how unanswered and missed calls appear, and what each call disposition status means.

## How calls are counted

Nimbata uses three distinct measurements for call activity. Using the wrong one for the question you're asking is the most common source of confusion when comparing numbers across reports.

### Calls

A call is a single inbound event: one caller dialing your tracking number one time.

- Same caller rings twice > **2 calls**
- One call routes through 3 destinations in a call flow > **still 1 call**
- Ten different people each call once > **10 calls**

Use this metric for measuring **call volume** and **marketing activity**.

### Call legs

A call leg is each individual connection Nimbata establishes as part of routing a single call. When a call flow rings multiple destinations, sequentially, simultaneously, or after a transfer, each ring creates a separate leg.

- One call, one destination > **1 leg**
- One call routed to 3 destinations sequentially > **3 legs**
- One call routed to 3 destinations, caller hangs up after the 2nd rings > **2 legs**

Call legs are relevant for understanding **telephony costs** and **diagnosing call flow behavior**. They are not the right unit for marketing or volume reporting. If you are seeing higher numbers than expected in a report, call legs are often the reason.

### Unique callers

A unique caller is a distinct phone number that called within your chosen time window, regardless of how many times that number called.

- Same caller rings 3 times in one day > **1 unique caller, 3 calls**
- 10 different people each call once > **10 unique callers, 10 calls**
- 8 different people call, 2 of them call twice > **8 unique callers, 10 calls**

Call legs are never counted here. One call through a 4-destination flow is still 1 unique caller. Use this metric for measuring **true inbound demand** and understanding your **audience size**.

### How call flows affect these numbers

When a call flow rings multiple destinations, for example three sales reps in sequence, a single inbound call creates multiple legs. The **Calls** metric and the **New vs. Repeat callers** reports are normalized to the call level, not the leg level, so they always give you the correct count. Reports scoped to **Destinations** may show leg-level data, which is expected.

| Scenario                                          | Calls | Call legs | Unique callers |
| ------------------------------------------------- | ----- | --------- | -------------- |
| 1 caller, calls once, 1 destination               | 1     | 1         | 1              |
| 1 caller, calls once, 3 destinations (sequential) | 1     | 3         | 1              |
| 1 caller, calls twice, 1 destination each time    | 2     | 2         | 1              |
| 1 caller, calls twice, 3 destinations each time   | 2     | 6         | 1              |
| 5 callers, each calls once, 2 destinations each   | 5     | 10        | 5              |

### Which report to use

**Total calls per day (not counting legs)**

1. Go to [Dashboards > Trends](https://app.nimbata.com/dashboard/trends) and read its daily chart.
2. This report counts at the call level.
3. One inbound caller routing through multiple destinations counts as one call.
4. This is your headline volume metric.

**Unique callers per day**

1. Go to [Dashboards > My Dashboard](https://app.nimbata.com/dashboard/my-dashboard), click **+ Add** and add the **New vs. Repeat by Date** chart (under **Calls**, **Trends**).
2. For the whole period rather than day by day, [Dashboards > Tracking Source](https://app.nimbata.com/dashboard/tracking-source) shows **New vs. Repeat** by tracking source.
3. The same caller ringing multiple times still counts as one unique caller.

**Individual call records with full detail**

1. Go to [Activity > Calls](https://app.nimbata.com/activity/calls).
2. Select **All calls**.
3. Every call appears once, with its source, tracking number, caller ID, duration, destination, and any tags or transcriptions.
4. Use this when you need to investigate a specific call, export data, or apply filters.

**Destination-level activity**

1. Destination reports show activity broken down by destination number.
2. Because a single call can route to multiple destinations, these reports may show higher numbers than your Calls reports.
3. This is expected; it reflects leg-level activity per destination, not total call volume.

**New vs. returning callers over time**

1. Nimbata classifies a caller as **New** if it is the first time that phone number has called within your account's look-back window.
2. If the same number has called before within that window, it is **Repeat**.
3. This split is useful for understanding whether your campaigns are reaching new audiences or re-engaging existing callers.

### Quick-reference cheat sheet

| What you want to know                           | Metric                     | Where to find it                                              |
| ----------------------------------------------- | -------------------------- | ------------------------------------------------------------- |
| How many calls came in today?                   | Calls                      | Dashboards → Trends (daily chart)                             |
| How many distinct people called today?          | Unique callers             | The **New vs. Repeat by Date** chart (+ Add → Calls → Trends) |
| Did someone call more than once this month?     | New vs. Repeat             | Dashboards → Tracking Source → New vs. Repeat                 |
| How many times did a specific destination ring? | Call legs (by destination) | Dashboards → Destinations (daily chart)                       |
| What happened on a specific call?               | Individual call record     | Activity → Calls → All Calls                                  |
| What's my overall call activity at a glance?    | Dashboard summary          | Dashboards → My Dashboard                                     |

### A note on call filtering

- If you use filtering rules to block certain callers, those calls are rejected before they enter the call flow and do not appear in your call count.
- This is intentional: filtered calls represent noise, not real inbound demand.
- A call flow keypad step where a caller doesn't press a digit does **not** exclude that call from reporting.
- The call still happened and is still recorded.
- If you need a call to be excluded from your metrics entirely, use a call filtering rule, not a call flow exit path.

Detailed guide: [Build a call flow](https://help.nimbata.com/call-handling/call-flows#build-a-call-flow)\
Detailed guide: [Disposition statuses](https://help.nimbata.com/dashboards/call-metrics#disposition-statuses)\
Detailed guide: [Export call activity](https://help.nimbata.com/activity/exports#export-call-activity)

## Unanswered and missed calls

An unanswered call is not lost: it appears in your call activity with its own disposition status, and you can filter, report on, and act on it just like any other call.

### What counts as an unanswered call

Nimbata tracks call attempts from the moment the tracking number is dialed. If the call is not answered, it is logged with a disposition status that describes what happened at the network level:

- **No Answer:** The call rang at the destination but was not picked up.
- **No User Response:** The call did not reach a ringing state; the destination did not respond within the timeout period.
- **Originator Cancel:** The caller hung up before the destination answered.
- **Call Rejected:** The destination declined the call.

All of these appear in [Activity > Calls](https://app.nimbata.com/activity/calls) (under the **All Calls** tab) with their respective status and a **Talk Duration** of zero. Their **Call Duration** still counts the time the call rang, so it can run to minutes:

![The All Calls tab with inbound calls whose Outcome is NOT_ANSWERED, and their call durations.](https://help.nimbata.com/_astro/01-image_19ixa51.25SZ6BZQ_2inmm5.webp)

> **Tip:** Detailed guide: [Disposition statuses](https://help.nimbata.com/dashboards/call-metrics#disposition-statuses).

### View unanswered calls in reports

To isolate unanswered calls in your call activity:

- Go to [Activity > Calls](https://app.nimbata.com/activity/calls) under any tab.
- Click **Filters**.
- Add a filter on **Call Outcome** or **Call Status** and select the relevant unanswered disposition or dispositions.
- Click **Apply**.

![The Filters panel on Completed Calls with a Call Outcome filter set to Not Answered.](https://help.nimbata.com/_astro/02-image_iy55vj.BZx9SO-9_Z11h62C.webp)

You can also set up a custom view that always shows unanswered calls, so you do not have to apply the filter manually each time.

> **Tip:** Detailed guide: [Call views](https://help.nimbata.com/activity/call-log#call-views)

### Get alerts for missed calls

You can set up a workflow to notify your team whenever a call goes unanswered, so no lead slips through without a follow-up.

- Go to [Workflows](https://app.nimbata.com/workflows) and create a new workflow.
- Set the trigger to **Inbound Call > Call Ends**.
- Add a filter for **Call Outcome = Not Answered**.
- Add a **Send Email** or **Send Slack Notification** action.
- Enable the workflow.

![A workflow with the Inbound Call trigger firing on Call Ends, a Call Outcome is Not Answered filter, and an Email Notifications Missed Calls action.](https://help.nimbata.com/_astro/03-image_1idtcs7.CNXPUU9J_dsx2I.webp)

> **Tip:** Detailed guide: [Missed call alerts](https://help.nimbata.com/workflows/alerts#missed-call-alerts).

> **Tip:** Detailed guide: [Start from a template](https://help.nimbata.com/workflows/alerts#start-from-a-template).

### Unanswered call data in the API

Unanswered calls are included in Nimbata's API responses alongside answered calls. Each call record includes the disposition status field, which you can use to filter or segment calls programmatically on your end.

There is no separate API endpoint for unanswered calls; they are part of the standard calls response and identifiable by their disposition status value.

> **Tip:** Detailed guide: [Find your API customer ID](https://help.nimbata.com/account/account-settings#find-your-api-customer-id)

Detailed guide: [Export call activity](https://help.nimbata.com/activity/exports#export-call-activity)\
Detailed guide: [Send unanswered calls onward](https://help.nimbata.com/call-handling/call-routing#send-unanswered-calls-onward)

## Disposition statuses

Nimbata assigns a **call disposition status** to every call attempt based on standard telephony signaling (ITU-T Q.850 and SIP responses). These statuses describe **how a call ended at the network level**. They are useful for:

- Troubleshooting failed calls
- Understanding routing behavior
- Building filters or automations
- Interpreting webhook data

The default signaling code for successfully connected calls is **NORMAL_CLEARING**.

> **Note:** Disposition statuses reflect the telephony outcome of a call attempt. They do not always indicate a business outcome (for example, whether the call was a qualified lead). Always review call duration, recordings, call flow setup, and routing when diagnosing issues.

Below is a breakdown of common call disposition statuses you may see in your reports, webhooks, or automations.

| ITU-T Q.850 Code | SIP Equiv. | Enumeration              | Cause                                                 | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| ---------------- | ---------- | ------------------------ | ----------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 0                |            | UNSPECIFIED              | Unspecified. No other cause codes applicable.         | This is usually given by the router when none of the other codes apply. This cause usually occurs in the same type of situations as cause 1, cause 88, and cause 100.                                                                                                                                                                                                                                                                                                     |
| 1                | 404        | UNALLOCATED NUMBER       | Unallocated (unassigned) number \[Q.850 value 1]      | This cause indicates that the called party cannot be reached because, although the called party number is in a valid format, it is not currently allocated (assigned).                                                                                                                                                                                                                                                                                                    |
| 16               |            | NORMAL CLEARING          | Normal call clearing \[Q.850]                         | This cause indicates that the call is being cleared because one of the users involved in the call has requested that the call be cleared. Under normal situations, the source of this cause is not the network. A NORMAL_CLEARING status indicates that the call ended normally at the network level. It does not confirm call quality, duration, or business outcome.                                                                                                    |
| 17               | 486        | USER BUSY                | User busy \[Q.850]                                    | This cause is used to indicate that the called party is unable to accept another call because the user busy condition has been encountered. This cause value may be generated by the called user or by the network. In the case of user determined user busy it is noted that the user equipment is compatible with the call. This status may be generated by the recipient’s device, the carrier, or the network and does not indicate a configuration issue in Nimbata. |
| 18\*             | 408        | NO USER RESPONSE         | No user responding \[Q.850]                           | This cause is used when a called party does not respond to a call establishment message with either an alerting or connect indication within the prescribed period of time allocated.                                                                                                                                                                                                                                                                                     |
| 19\*             | 480        | NO ANSWER                | No answer from user (user alerted) \[Q.850]           | This cause is used when the called party has been alerted but does not respond with a connect indication within a prescribed period of time. Note: this cause is not necessarily generated by Q.931 procedures but may be generated by internal network timers.                                                                                                                                                                                                           |
| 21               | 603        | CALL REJECTED            | Call rejected \[Q.850]                                | This cause indicates that the destination did not accept the call, even though it was technically reachable. The rejection may be triggered by the recipient’s device, the network, or service-level restrictions. It does not always mean the end user manually declined the call.                                                                                                                                                                                       |
| 28               | 484        | INVALID NUMBER FORMAT    | Invalid number format (address incomplete) \[Q.850]   | This cause indicates that the called party cannot be reached because the destination number is not in a valid or complete format. This usually indicates a formatting or configuration issue with the destination number (for example, a missing country code or an incomplete number).                                                                                                                                                                                   |
| 41\*\*           | 503        | NORMAL TEMPORARY FAILURE | Temporary failure \[Q.850]                            | This cause indicates that the network is not functioning correctly and that the condition is not likely to last a long period of time; for example, the user may wish to try another call attempt almost immediately.                                                                                                                                                                                                                                                     |
| 63\*\*           |            | SERVICE UNAVAILABLE      | Service or option not available, unspecified \[Q.850] | This cause is used to report a service or option not available event only when no other cause in the service or option not available class applies.                                                                                                                                                                                                                                                                                                                       |
| 487              | 487        | ORIGINATOR CANCEL        |                                                       | The caller initiated the call and hung up before the destination answered. This commonly occurs when the caller cancels quickly or during simultaneous dialing setups.                                                                                                                                                                                                                                                                                                    |
| 502              |            | LOSE RACE                |                                                       | This occurs when multiple destinations are dialed simultaneously (for example, with the Multiple routing option in a call flow). Once one destination answers, the remaining call attempts are terminated with a LOSE_RACE status. This is expected behavior and does not indicate an error.                                                                                                                                                                              |
| 604              |            | MEDIA TIMEOUT            |                                                       | Media negotiation or transmission did not complete within the expected time. This may be caused by network instability, firewall restrictions, or carrier-level media negotiation issues.                                                                                                                                                                                                                                                                                 |

> **Note:** \*NO USER RESPONSE typically means the call did not reach a ringing state. NO ANSWER means the call rang but was not answered.

> **Note:** \*\*These statuses typically indicate transient network conditions and may resolve without changes to your setup.

### Signaling versus business outcome

A call disposition status tells you how the call ended technically, not whether it was a qualified lead, a missed opportunity, or a completed sale. For example:

- A call may have NORMAL_CLEARING but last only 3 seconds
- A call may show NO_ANSWER even though your routing was correct

Always evaluate disposition statuses together with:

- Call duration
- Call recordings
- Call flow logic
- Destination number configuration

### When to investigate

Occasional failures are normal in telephony networks. Investigate when you notice:

- A sudden spike in failures
- Repeated INVALID_NUMBER_FORMAT errors
- Persistent SERVICE_UNAVAILABLE or TEMPORARY_FAILURE statuses
- Calls not reaching your destination numbers

In these cases, review your call flow setup and contact support with:

- Example call IDs
- The tracking number used
- The destination number configured

For troubleshooting failed calls, use disposition statuses together with call flow and tracking number configuration for a complete picture.

Detailed guide: [Build a call flow](https://help.nimbata.com/call-handling/call-flows#build-a-call-flow)\
Detailed guide: [Calls not getting through](https://help.nimbata.com/call-handling/call-troubleshooting#calls-not-getting-through)
