How It Works
Your organization has a concurrency pool — a fixed number of slots that represent how many calls can run simultaneously. When a call starts, it takes a slot. When it ends, the slot is freed for the next call. If all slots are full, new calls are queued and wait until a slot opens up.The concurrency limit applies across all call types — webcall, chat, telephony outbound, and telephony
inbound all share the same pool.
Reserved vs Shared Slots
By default, all your concurrency slots are shared — any agent can use any available slot, first-come first-served. This works well when you have a single agent or when all agents have equal priority. But when you have multiple agents with different priorities, you can reserve slots for specific agents. This guarantees that important agents always have capacity, even during peak traffic.Shared Pool (Default)
With no reservations configured, all slots are shared:Reserved Slots
When you reserve slots for an agent, those slots are guaranteed — no other agent can use them. This is useful when an agent handles critical calls that should never be queued.Reserved + Shared: How They Work Together
Here’s the key rule: reserved slots are guaranteed, and agents can also use shared slots when they need more capacity. Let’s walk through a scenario:Agent A gets busy
Agent A receives 12 calls → fills all 12 reserved slots. No shared slots used yet.
Agent A needs more
Agent A receives 3 more calls → reserved slots are full, so it takes 3 slots from the shared pool. Shared
pool is now empty.
Agent B arrives
Agent B receives 5 calls → even though the shared pool is empty, Agent B’s 5 reserved slots are
guaranteed. All 5 calls get through immediately.
Who Can Use What
| Slot Type | Who can use it? | When? |
|---|---|---|
| Agent’s own reserved slots | Only that agent | Always available, guaranteed |
| Shared pool | Any agent | First-come first-served, after reserved slots are full |
| Another agent’s reserved slots | Nobody else | Never — reserved slots are exclusive |
Quick Examples
Scenario 1: Agent within its reservationAgent A has 10 reserved, currently running 7 calls → using 7 reserved slots, 0 shared. ✅Scenario 2: Agent exceeding its reservation
Agent A has 10 reserved, currently running 14 calls → using 10 reserved + 4 shared. ✅Scenario 3: Shared pool is full
Shared pool has 5 slots, all in use. Agent B has 8 reserved and is running 6 calls → Agent B gets its 6 calls through reserved slots, no shared needed. ✅Scenario 4: Agent with no reservations
Agent C has 0 reserved. It can only use the shared pool. If the shared pool is full, Agent C’s calls are queued. ⏳
Setting Up Reservations
Viewing Your Concurrency
Navigate to Concurrency in the sidebar. You’ll see:- Total concurrency — your org’s limit (based on your plan)
- Reserved bar — colored segments showing each agent’s reservation
- Shared — the remaining unreserved portion (grey)
Adding an Agent Reservation
- Click the Add button
- Select the agent you want to reserve slots for
- Set the number of reserved slots per call type:
- Webcall — browser-based voice calls
- Chat — text chat conversations
- Outbound — telephony calls your agent makes
- Inbound — telephony calls your agent receives
- Click Save
Editing Reservations
Click the ⋯ menu next to any agent in the table, then select Edit reservations to change the values.Removing an Agent
Click the ⋯ menu and select Remove agent to set all reservations to 0. The freed slots return to the shared pool immediately.Best Practices
Start without reservations
Start without reservations
If you’re just getting started or have a single agent, you don’t need reservations. The shared pool works
perfectly for simple setups.
Reserve for high-priority agents
Reserve for high-priority agents
Only reserve slots for agents that handle critical workflows — like customer support or payment
processing. Let lower-priority agents share the remaining pool.
Don't over-reserve
Don't over-reserve
If you reserve all your slots, the shared pool becomes 0. Agents can still work, but they can’t exceed
their reservations even if other agents are idle. Leave some shared capacity for flexibility.
Monitor during peak hours
Monitor during peak hours
Watch the Concurrency page during high traffic. If agents are consistently queuing, consider upgrading
your plan or adjusting reservations.
FAQ
What happens when my org hits the concurrency limit?
What happens when my org hits the concurrency limit?
New calls are queued and wait for a slot to free up. Calls are dispatched in order as slots become
available. No calls are dropped — they just wait.
Can I reserve more slots than my org limit?
Can I reserve more slots than my org limit?
No. The total reserved across all agents cannot exceed your org’s concurrency limit.
Do reserved slots count separately per call type?
Do reserved slots count separately per call type?
Reservations are set per call type (webcall, chat, outbound, inbound), but they all draw from the same
org-level pool. An agent’s total reservation is the sum across all types.
What if I don't configure any reservations?
What if I don't configure any reservations?
Everything works as a shared pool — all agents compete equally for slots. This is the default behavior and
works well for most use cases.
Can I change reservations while calls are active?
Can I change reservations while calls are active?
Yes. Changes apply immediately to new calls. Active calls are never interrupted — they continue until they
end naturally.
How do I increase my concurrency limit?
How do I increase my concurrency limit?
Your concurrency limit is determined by your plan. Contact sales or upgrade your plan to increase it.

