> ## Documentation Index
> Fetch the complete documentation index at: https://docs.retellai.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Caller ID and pacing

> Set up local presence dialing and caller ID rotation for Retell AI outbound campaigns, buy numbers by area code, and cap each campaign's concurrency and CPS.

The **Numbers** tab of a [Dialer](https://docs.retellai.com/dialer/overview.md) campaign sets the caller ID each contact sees and how fast the campaign dials. You choose the numbers the campaign calls from, called its number pool, and how they rotate, then cap the campaign's concurrent calls and calls per second (CPS).

Open the tab from a draft campaign, or click **Edit** on a launched campaign's page.

## Choose how numbers rotate

Under **Phone number setup**, pick one option:

* **Local presence dialing**: "Match local area codes to improve pickup rates." This is the default. Each contact is called from a number assigned to its own area.
* **Round robin phone numbers**: "Initiate call from your numbers pool." Each new contact gets the next number in the pool, so calls spread evenly across every number.

| | Local presence dialing | Round robin phone numbers |
| - | - | - |
| Caller ID for a new contact | A number assigned to the contact's region, or a **Default phone number** | The next number in the pool |
| Numbers to add | Numbers in the regions where your contacts are | Any numbers you own or buy |
| Contact with no matching number | Called from a **Default phone number**, or fails if there's none | Can't happen, since every number serves every contact |
| Good fit | Contacts spread across many area codes | Contacts in one area, or a few numbers your customers already know |

In both modes, a contact keeps the caller ID it got first for every later call and text, as long as that number stays in the pool. The contact sees one number from your campaign, and a callback to that number reaches the campaign. See [Build a sequence](https://docs.retellai.com/dialer/sequences.md) for how callbacks are handled.

The choice locks at launch.

For example, a solar installer calls 6,000 leads across Texas with local presence. Dallas leads see a 214 number, Houston leads see a 713 number, and leads in smaller towns see the installer's Default phone number.

![Phone number setup with Local presence dialing selected and Round robin phone numbers unselected. The Numbers by area code card has an Auto-fill button and United States and Canada tabs. Rows show Bay Area, CA with 780 contacts, 3 numbers, Suggest 16 numbers, and an Edit button; Greater Los Angeles, CA with 652 contacts and Suggest 14 numbers; New York Metro, NY with 404 contacts and Suggest 9 numbers; each with area code tags. The last row, Default phone number, reads Used to call contacts when you haven't added a number for their area code, with a Set up button.](https://mintcdn.com/retellai/vuwPMEb2Qq5g6X0u/images/dialer/dialer-local-presence.png?fit=max\&auto=format\&n=vuwPMEb2Qq5g6X0u\&q=85\&s=377e2b04e508bcbbbc13d78ba0fe5dfa)

Local presence dialing with regions ranked by contact count.

## How local presence picks a caller ID

The **Numbers by area code** card lists the regions where your contacts are, ranked by contact count, with a **United States** or **Canada** tab for each country that has contacts. A region is a group of area codes that serve the same place, such as all the overlay codes of one city. Eleven metro regions, such as Bay Area, CA and New York Metro, NY, combine several neighboring areas. A number you assign to a region can call every contact in all of its area codes.

When a contact is due, Retell picks its caller ID in this order:

1. The caller ID the contact already has from this campaign, if that number is still in the pool.
2. A number assigned to the contact's region. The contact's country and area code must match the region exactly. When a region has several numbers, they take turns.
3. A number in the **Default phone number** row: "Used to call contacts when you haven’t added a number for their area code." Contacts outside the US and Canada also use this row.
4. If none of these exist, the contact fails with "No number available to call from" and isn't called.

Retell doesn't fall back to a nearby area code at dial time. To cover a region with a number from a different area code, click **Set up** on the region, then **Use other area code**.

Each region row shows how many numbers it has and a suggestion, such as "Suggest 3 numbers." Retell suggests one number per 50 contacts in the region, and at least one. Click **Set up** (or **Edit**, once the region has numbers) to pick numbers you own in that region or plan new ones.

**Auto-fill** sets up every region at once. It selects each number you own in a region that has contacts, then fills in purchase quantities so each region reaches its suggestion. Review the quantities on the **United States** and **Canada** tabs, then click **Save**.

> [!TIP]
>
> An Auto-enroll campaign keeps adding contacts after launch, some from areas you haven't covered. Add at least one Default phone number so those contacts don't fail.

## Add numbers you own

Any number in your workspace can join the pool, including numbers you [connected through custom telephony](https://docs.retellai.com/deploy/custom-telephony.md).

* **Round robin**: click **Add numbers**, select numbers under **Reusing numbers you own**, and click **Save**.
* **Local presence**: click **Set up** on a region. The list shows the numbers you own in that region's area codes.

Campaign calls use the agents in your [sequence](https://docs.retellai.com/dialer/sequences.md), not the number's own outbound agent. A number can be in more than one campaign at a time.

A toll-free number from Retell can call US numbers only. A contact outside the US that gets a toll-free caller ID fails with "Destination not allowed". Under local presence, every toll-free number you buy for the campaign joins the Default phone number row, including toll-free numbers planned on the **Canada** tab. If you call contacts in Canada, don't buy toll-free numbers for the campaign, and keep toll-free numbers you own out of a round robin pool and out of the Default phone number row.

## Buy new numbers

While the campaign is a draft, you can plan new numbers in the **Buy new numbers** section of the **Add numbers** or **Auto-fill** dialog. Local numbers cost $2 per month and toll-free numbers cost $5 per month (as of October 2026).

* A region's dialog offers that region's area codes.
* The round robin dialog and the Default phone number row offer **Normal numbers**, which can have any US area code, and **Toll free**.
* **Auto-fill** offers area codes, normal numbers, and toll-free numbers in both the US and Canada.

Saving the dialog saves the plan but buys nothing. Planned numbers show "Bought at launch" until Retell buys them, in one of two ways:

* **Now:** on the **Overview** tab, click **Purchase** on the **Phone numbers** card. Retell "buys the numbers now and adds them to this campaign."
* **At launch:** when you click **Launch Now** or **Schedule Launch**, Retell buys the remaining planned numbers. For a scheduled campaign, the numbers are bought and billed from that moment, not from the start time.

Both ask you to choose a provider: Twilio (the default) or Telnyx. Telnyx sells US local numbers only. If you choose Telnyx, **Purchase** skips the Canadian and toll-free numbers, and launch is blocked until you switch to Twilio or remove them.

When you buy US numbers at launch, the confirm dialog has a second step that asks whether to verify them first. **Verify first, launch in 7 days** is selected by default, and the button reads **Schedule and verify**. This moves the start to at least 7 days from now, so **Launch Now** does not dial until then. A start time you picked later than 7 days out stays. To keep your start time, select **Skip for now**. Verified numbers cost \$10 per month each.

If you click **Purchase** on the **Overview** tab instead, the same choice appears as **Purchase and verify**. It does not change when the campaign starts.

A campaign can use at most 500 numbers in total (as of October 2026). Keep the numbers you own plus the new numbers you plan to buy at or under 500. The dashboard checks the two counts separately, so a pool over 500 can fail after the purchase, once the numbers are already bought and billed.

Numbers you buy stay in your workspace and in the campaign's pool, even if the launch fails after the purchase. They're billed monthly until you delete them on the **Phone Numbers** page. See [Purchase phone number](https://docs.retellai.com/deploy/purchase-number.md) for how number billing works.

After launch, you can't plan purchases in the campaign. [Buy numbers](https://docs.retellai.com/deploy/purchase-number.md) on the **Phone Numbers** page, then add them as numbers you own.

![Add numbers dialog over the dimmed Numbers tab, subtitled Needs 14 numbers to cover 652 contacts locally. Reusing numbers you own, tagged suggested, lists one Los Angeles number with Select all and Use other area code buttons. Buy new numbers shows the notice Suggest spam verification for new numbers, then rows for area codes 213 and 323 at \$2 per number with quantity steppers; 213 is set to 2. The footer reads 2 new numbers, Bought at launch, 0 you own, 2 total, with Cancel and Save buttons.](https://mintcdn.com/retellai/vuwPMEb2Qq5g6X0u/images/dialer/dialer-buy-numbers.png?fit=max\&auto=format\&n=vuwPMEb2Qq5g6X0u\&q=85\&s=044d74c76f1f4ddf4c07cc334ed44706)

The Add numbers dialog for one region, with two new numbers planned.

## SMS requirements

If your sequence has an SMS node, two rules apply to the pool:

* **Every number must be SMS-enabled.** That means a Retell Twilio number with an approved [A2P campaign](https://docs.retellai.com/deploy/sms-campaign-application.md), or your own Twilio number set up for SMS. See [Enable SMS](https://docs.retellai.com/deploy/enable-sms.md).
* **The plan can't include new numbers.** Newly bought numbers can't send SMS, so **Purchase** is disabled. Remove planned numbers on the **Numbers** tab.

Launch is blocked until both rules hold, with a message such as "The sequence sends SMS, but 2 numbers can’t." After launch, Retell rejects a pool change that adds a number without SMS.

## Spam and reputation

Carriers can label a number that places many calls as "Spam Likely", and a recycled number can arrive already flagged. Retell doesn't replace flagged numbers in a campaign automatically. To keep pickup rates up:

* **Use enough numbers.** More numbers means fewer calls from each one. Follow the suggestion of one number per 50 contacts.
* **Check new numbers.** After Retell buys them, turn on **Daily spam check** for them on the **Phone Numbers** page. It checks carrier spam flags every 24 hours, for US numbers only, and costs \$2 per month per number (as of October 2026).
* **Register your numbers.** Apply for a [verified phone number](https://docs.retellai.com/build/telephony/verified-phone.md) and [branded call](https://docs.retellai.com/build/telephony/branded-call.md), both for US numbers.
* **Swap out flagged numbers.** Remove a flagged number from the pool and add a clean one. The change reaches the campaign within about 15 minutes, and contacts that had the flagged number then get a new caller ID.

See the [Spam Likely overview](https://docs.retellai.com/build/telephony/call_efficiency_overview.md) for how to check a number's status.

## Set the dialing rate

The **Dialing capacity** section caps how many calls the campaign runs at once and how fast it starts them. Both are caps, not reservations: they limit this campaign, but they don't hold capacity for it.

![Dialing capacity section. The Campaign concurrency limit card has an Adjust concurrency link, a stepper set to 25, and the line Total limit 200, Inbound reserve 60, Other 115. The Calls per second (CPS) card has a CPS calculator link, a box reading 3 CPS capacity with an Adjust CPS limit button, and the line Twilio 1, Telnyx 1, Custom Telephony CPS 1.](https://mintcdn.com/retellai/vuwPMEb2Qq5g6X0u/images/dialer/dialer-dialing-capacity.png?fit=max\&auto=format\&n=vuwPMEb2Qq5g6X0u\&q=85\&s=168bf2ea834574db0384233d1be658c6)

The Dialing capacity section of the Numbers tab.

### Campaign concurrency limit

The campaign concurrency limit is the most calls this campaign runs at the same time. In the dashboard, the default is half your workspace [concurrency limit](https://docs.retellai.com/deploy/concurrency.md), rounded down, but never more than your workspace limit minus the inbound reserve. A campaign created through the API without a dialing capacity has no campaign limit.

* **The lower limit wins.** The campaign runs at most its own limit, and never more than the workspace's free outbound capacity.
* **No burst, no inbound reserve.** Campaign calls never use [concurrency burst](https://docs.retellai.com/deploy/concurrency.md#concurrency-burst) or the [reserved inbound concurrency](https://docs.retellai.com/deploy/concurrency.md#reserved-inbound-concurrency).
* **Shared capacity.** All campaigns, your other outbound calls, and web calls share the same outbound capacity. Several campaigns can each set the full amount, and the first call ready takes the next free slot. Hover over **Other** in the "Total limit · Inbound reserve · Other" line to see the other campaigns' limits.
* **Calls wait at capacity.** When no slot is free, the next call waits until one opens. Waiting doesn't use one of the contact's attempts.

If your workspace has no inbound reserve, a notice reads "No concurrency is reserved for inbound calls." If this campaign's limit also takes all outbound capacity, it reads "No concurrency is left for inbound calls."

Raising your workspace limit doesn't raise the campaign's limit. Update it here too.

**Adjust concurrency** opens the **Adjust concurrency limit** dialog. It changes your workspace, not just this campaign: set **Concurrent calls** and **Inbound reserve**. Each concurrent call above your included limit costs \$8.00 per month (as of October 2026). You're charged immediately when you increase the limit, and a decrease doesn't change charges for the current billing cycle. In the Dialer, this button is available to Admins only. Developers can change the concurrent calls on **Settings > Limits**, but not the inbound reserve.

### Calls per second (CPS)

CPS caps how many calls the campaign starts each second, separately for each telephony provider: Twilio, Telnyx, and Custom Telephony. SMS steps don't count toward the concurrency or CPS limits. A call counts against the provider of the number it's placed from. The card shows the sum, such as "3 CPS capacity".

By default, the campaign can use your full workspace CPS for each provider. A workspace has 1 CPS per provider unless it's been raised. All campaigns share the workspace CPS.

To cap the campaign lower, click **Adjust CPS limit** and set a value for each provider, between 1 and your workspace limit. This buys nothing. To raise workspace CPS, [adjust it on Settings > Limits](https://docs.retellai.com/deploy/concurrency.md#adjust-cps-calls-per-second). After you confirm, the campaign keeps these values even if you buy more workspace CPS later.

**CPS calculator** opens the same [calculator](https://docs.retellai.com/deploy/concurrency.md#estimate-values-with-the-calculator) as the Limits page.

## Live estimates

The **Live estimates** panel estimates how fast the campaign can reach your contacts. Edit the inputs to test scenarios:

| Input | Default |
| - | - |
| **Concurrency** | The campaign concurrency limit |
| **Calls per second (CPS)** | The campaign's CPS for the providers in your pool |
| **Answer rate** | 20% |
| **Avg. call duration** | 20 min |

The panel returns:

* **Capacity**: calls per hour. It's the lower of what CPS allows and what concurrency allows, since only answered calls hold a line for the average duration.
* **Time**: how long one call to each of the **Total contacts** takes.
* **Costs**: an estimate for the answered first calls: contacts × answer rate × average duration × the starting agent's price per minute, plus \$0.01 per minute when the pool has Retell Twilio or Telnyx numbers. It shows a dash unless the sequence starts with a phone call node that has an agent.

Estimates leave out ringing time, retries, and later sequence steps. "Changing these inputs does not change campaign limits."

## What you can change after launch

On the campaign page, click **Edit** and open **Numbers**. For a stopped or completed campaign, the button reads **Details** and every tab is read-only. Until then, you can:

* Add or remove numbers you own. You can't remove the last number.
* Change the campaign concurrency limit and CPS.

You can't switch between local presence and round robin, or plan new purchases.

Changes to numbers, concurrency, and CPS save when you click **Done** or switch tabs. **Save** in the numbers dialog only stages the change, and **Back to campaign** discards it. Concurrency and CPS changes apply from the next call. Number changes reach the campaign within about 15 minutes. A call already in progress keeps its caller ID.

Once the campaign is stopped or completed, the **Numbers** tab is read-only. Its numbers stay in your workspace and keep their monthly fee until you delete them.

## FAQ

> [accordion] How does caller ID rotation work?
>
> Rotation happens across contacts, not across calls to one contact. With round robin, each new contact gets the next number in the pool. With local presence, each new contact gets the next number assigned to its region. Every later call and text to that contact uses the same caller ID while the number stays in the pool.

> [accordion] Why do my campaign calls show as Spam Likely?
>
> Carriers can flag a number that places many calls, and a recycled number can arrive already flagged. Retell doesn't swap flagged numbers out of a campaign. Remove the flagged number on the **Numbers** tab, add a clean one, and follow the steps in [Spam and reputation](#spam-and-reputation).

> [accordion] How many phone numbers does a campaign need?
>
> At least one. For local presence, Retell suggests one number per 50 contacts in each region, and **Auto-fill** plans that many. More numbers spread the volume, so each one places fewer calls. A pool holds up to 500 numbers.

> [accordion] Can a campaign make only one call at a time?
>
> Yes. Set the campaign concurrency limit to 1, and the campaign starts its next call only after the current one ends. The limit applies to the campaign, not to a phone number. Another campaign or your own outbound calls can still use the same number at the same time.

> [accordion] How do campaigns share concurrency with inbound calls?
>
> Campaign calls use only outbound capacity: your concurrency limit minus the inbound reserve. They never use the reserve, so those slots stay free for inbound calls. If you have no inbound reserve, inbound calls get whatever campaigns and other outbound calls leave free. Set a reserve with **Adjust concurrency** or on **Settings > Limits**. See [concurrency](https://docs.retellai.com/deploy/concurrency.md#reserved-inbound-concurrency).

> [accordion] Why is my campaign dialing slower than its limits?
>
> The limits are maximums. A campaign waits while other campaigns and outbound calls use the workspace's outbound capacity, starts calls no faster than its CPS, and dials only inside the [calling window](https://docs.retellai.com/dialer/sequences.md). A contact that waits keeps all its attempts. To see what else shares your capacity, hover over **Other** under **Campaign concurrency limit**.

Related: [Dialer overview](https://docs.retellai.com/dialer/overview.md), [Choose contacts](https://docs.retellai.com/dialer/contacts.md), [Build a sequence](https://docs.retellai.com/dialer/sequences.md), and [Understand concurrency & limits](https://docs.retellai.com/deploy/concurrency.md).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.