<!-- Source: https://docs.vinsi.ai/qa/extensions -->
# Extensions

Score calls by phone extension instead of by named agent, and choose which campaign evaluates each extension.

**Elite plan required — Upgrade needed to unlock QA Calls features!**

Created: September 16, 2026

Updated: September 16, 2026

## Overview

Some teams don't track calls by agent name — they track them by the phone extension that handled the call (for example a front desk, a shared queue, or a department line). The **Extensions** page lets you list those extensions and link each one to the QA campaign that should score its calls.

Extensions and Agents are two ways of answering the same question: _who does a scored call belong to?_ Your organization uses one or the other, never both at the same time.

### Before You Start

- **Open QA Calls.** Use the product switcher in the top bar and choose **QA Calls**. It is available to organization admins and to members who have been given access to the QA Calls module. QA Calls features are unlocked by the **Elite** or **Enterprise** support plan.
- **Switch the evaluation mode to Extensions.** The **Extensions** tab only appears in the QA Calls menu when an organization admin sets **Admin → Evaluation Mode** to **Extensions**. While the mode is set to **Agents** (the default), you'll see the **Agents** tab instead. See [QA Admin](https://docs.vinsi.ai/qa/admin).
- **Create at least one active campaign.** Every extension must be linked to an active campaign. See [Campaigns](https://docs.vinsi.ai/qa/campaigns).
- **Permissions.** The Extensions tab uses the same permission as the Agents tab. Members need write access to QA Agents to see the **Add Extension** button.

## The Extensions List

Go to **QA Calls → Extensions**. The page is titled **Extensions** with the subtitle _Phone extensions evaluated by QA — manage which campaign scores each one_. Each row shows:

| Column           | What it shows                                                                                            |
| ---------------- | -------------------------------------------------------------------------------------------------------- |
| **Label**        | The friendly name you gave the extension, with the extension number underneath (for example _Ext. 101_). |
| **Campaign**     | The campaign that scores this extension's calls, or _Not assigned_.                                      |
| **Status**       | **Active** or **Inactive**.                                                                              |
| **Last Updated** | When the extension was last changed. The list is sorted newest first by default.                         |
| **Actions**      | Edit (pencil) and remove (trash) buttons.                                                                |

Use the search box (_Search by label, extension or campaign..._) to filter the list. Columns can be sorted and resized, and the list pages at 10, 25, or 50 rows. If no extensions exist yet you'll see **No extensions yet** with an **Add Extension** button.

## Adding an Extension

1. Click **\+ Add Extension** in the top-right corner.
2. Fill in the **Add Extension** form (fields marked \* are required):

| Field                   | Details                                                                                                                                                  |
| ----------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Label \***            | A name people will recognize, e.g. _Front Desk_.                                                                                                         |
| **Extension \***        | The extension number, e.g. _101_. Must be a positive whole number and unique within your organization.                                                   |
| **Files per Run**       | The maximum number of recordings analyzed per run for this extension. Must be a positive whole number. Defaults to **1** (leaving it blank also uses 1). |
| **Campaign \***         | The campaign that scores this extension. Only active campaigns are listed; if you have none you'll see _No active campaigns available._                  |
| **Extension is active** | On by default. Inactive extensions are skipped by scheduled analysis.                                                                                    |

1. Click **Add Extension**. The button stays disabled until the required fields are valid.

If you see **That extension already exists in this organization**, the number is already on the list — edit the existing row instead of adding a new one.

## Editing or Removing

**Edit:** click anywhere on a row, or click its pencil button, to open **Edit Extension**. Change any field and click **Save Changes**. To pause scoring for an extension without deleting it, turn off **Extension is active**.

**Remove:** click the trash button, then confirm with **Remove** in the **Remove Extension** dialog. This action cannot be undone.

## Files per Run & Scheduled Analysis

Besides manual uploads on the [Upload](https://docs.vinsi.ai/qa/upload) page, VINSI can analyze recordings automatically in scheduled runs. Each active extension contributes up to its **Files per Run** recordings to each run, scored by the campaign you linked. Raise the number for busy extensions so their backlog clears faster.

Organization admins can review every run — and manually assign recordings that couldn't be matched — under **Admin → Run History**. See [QA Admin](https://docs.vinsi.ai/qa/admin). Scored calls appear on the [Results](https://docs.vinsi.ai/qa/results) page.

## Related

- [QA Admin](https://docs.vinsi.ai/qa/admin) — switch the evaluation mode and review analysis runs
- [Agents](https://docs.vinsi.ai/qa/agents) — the alternative to extensions
- [Campaigns](https://docs.vinsi.ai/qa/campaigns)
- [Results](https://docs.vinsi.ai/qa/results)
