Balanced assignment is our recommended assignment method for support teams. It provides you with the controls you need to automatically route conversations to the most available and relevant teammate as quickly as possible so you can meet your customers' expectations at scale.
Note: Balanced assignment is only available on the Expert plan.
In this article we'll cover:
How balanced assignment decides which teammate to assign a conversation to.
How to define your teammates assignment limit to ensure they are not overloaded and can send high quality replies.
How to set your conversations prioritization logic to ensure that the most critical conversations are assigned to teammates first.
How to understand why a conversation is waiting unassigned.
To get started, navigate to your workspace Settings > Inbox > Team inboxes and click on a team inbox to modify their assignment method:
Matching conversations with teammates
When balanced assignment is enabled, conversations wait in the team inbox, until an eligible teammate is available to receive more conversations. Eligible teammates meet all of the following criteria:
They are member of the team inbox in question.
Their status is set to active.
Their open conversations are less than the teammates’ assignment limit.
Their open conversations are less than the specific inbox assignment limit (if configured).
Note: A teammate's channel availability also determines which conversations they're eligible to receive. Teammates only get assigned conversations from channels they've set themselves available for — unticking a channel in Availability stops Load Balanced Assignment routing those conversations to them.
How limits interact
For a conversation to be assigned, a teammate must satisfy both their individual limit and the team inbox limit. This allows you to manage workload based on complexity—for example, setting a lower limit for a high-priority "VIP Support" inbox compared to a general "Sales" inbox.
Tip:
You can learn more about configuring these settings in the Inbox assignment limits article.
Balanced assignment teams can also show customers their live queue position (e.g. "#3 in queue") in the Messenger while they wait for a teammate. See show customers their queue position in Messenger.
In the assignment UI, you will now see limits displayed as Inbox capacity / Teammate capacity.
The first number shows the total assignments against the inbox limit.
The second number shows the total assignments against the teammate’s overall capacity.
If either the inbox limit or the teammate’s capacity is breached, the respective number will appear in red to make capacity issues immediately visible.
When there are multiple eligible teammates for the same team inbox, conversations are assigned to the teammate with the fewest open conversations.
When multiple eligible teammates have the same number of open conversations, the teammate who didn’t get assigned a conversation for the longest time receives a conversation first.
Note: If capacity is set to 3 and 'Teammate A' has 3 conversations and 'Teammate B' has 1, 'Teammate B' will get 2 conversations before 'Teammate A' gets 1.
Understand why a conversation is waiting unassigned
When a conversation on a balanced-assignment team is waiting in the team inbox without a teammate assigned, an information icon appears next to the Unassigned state in the Inbox. Hover over or expand it to see the reason — for example, "All teammates are at their conversation capacity" or "No eligible teammates".
Note: Unassigned reasons only show for balanced-assignment teams. On manual or round-robin teams nothing shows, by design.
What the expanded view shows
Expanding the icon shows:
The main reason — a plain-language explanation of why no teammate was assigned.
Live pool state — how many teammates are in the team in total, how many are away, how many are at capacity, and how many are currently eligible.
Workspace limits — the assignment limits that applied, so you can confirm, for example, that every eligible teammate is already at the configured limit.
The reason clears automatically once the conversation is assigned to a teammate.
Note: The reason can take a few seconds to appear after an assignment run. Treat the assignee state as live — the reason catches up shortly after.
Reasons you may see
All teammates are at their conversation capacity
All teammates are at their ticket capacity
All teammates are away
No eligible teammates
No teammates on the team
No inbox access
No device connected (phone)
At channel capacity
Team assignment limit reached
Ticket assignment is disabled for this workspace
Note: For a ticket in a workspace that has ticket auto-assignment turned off, the Inbox shows "Ticket assignment is disabled for this workspace" so you can see why the conversation is waiting rather than seeing nothing.
Skill-based routing
Skill-based routing is covered in its own article. See Skill-based routing to learn how to set it up and how the routing logic works.
Defining primary and secondary team inboxes
You can define teammates membership in team inboxes from Settings > Inbox > Assignments > Teammate assignment limit.
For each teammate you can define their primary and secondary team inboxes. When all primary team inboxes are empty, the teammate starts receiving conversations from their secondary team inboxes.
For example, Bob is a teammate who speaks Italian and English. Bob’s primary focus is Italian team inboxes. Sometimes the flow of conversations in Italian team inboxes isn’t high. When this happens, Bob can start supporting the English team inboxes.
Note: If teammate has more than one inbox set as Primary, we will pool all conversations in these inboxes together, when determining which conversation to assign next through balanced assignment. Conversations will be assigned based on the following criteria 👇
Conversations marked as priority will be assigned first.
Next, conversations that are closest to hitting the SLA will be assigned.
Finally, the longest waiting conversation will be assigned.
Defining teammate assignment limits
When balanced assignment is enabled, conversations and tickets are automatically assigned to teammates up to their assignment limits. Teammates with open conversations equal to or above their assignment limit don’t receive more conversations.
Note: By default, assignment limits treat all conversations the same, regardless of the channel they were created through (Chat, Email, WhatsApp, Facebook, Instagram, SMS). You can optionally set separate limits for email and Messenger — see the channel assignment limits section below.
Include/exclude tickets in balanced assignment
Control if you want to include or exclude tickets in balanced assignment. You'll find a toggle in the Settings > Inbox > Assignments > Workload management page under the "Auto-assign and assignment limits" section.
This allows you to include or exclude tickets from assignment for teams using balanced assignment.
Learn more about Ticket assignment limits.
Workspace level assignment limit
In Settings > Inbox > Assignments > Workload management, under the "Auto-assign and assignment limits" section, you can define a workspace level assignment limit that applies to all teammates.
You can also set separate limits for conversations and tickets by using the toggle "Use separate limits for conversations and tickets".
Note: You'll only have the option to use separate limits if you include tickets for workload management.
Override the workspace limit by defining an assignment limit for individual teammates under the Teammate assignment limit tab. This helps ensure each teammate’s workload matches their skills, seniority, and complexity of conversations they work on.
For example, if you’re onboarding new teammates, we encourage you to give them a relatively lower limit during their first few weeks.
Channel assignment limits
Teammates have different capacities across channels — a teammate handling live Messenger conversations can't always take on the same number of email threads at once. You can set separate assignment limits for email and Messenger chats, giving you fine-grained control over how conversations are distributed.
Enable this in Settings > Inbox > Assignments > Workload management by turning on the "Use separate limits for email and messenger" toggle. When the toggle is off, the total assignment limit applies as before.
Email limit and Messenger limit fields let you set workspace-wide defaults that apply to all teammates who don't have individual channel limits set.
In the Teammate assignment limit tab, two columns — Email and Messenger — let you set per-teammate overrides inline for each channel.
Limit values:
0 — the teammate is stopped from receiving new conversations on that channel.
A positive number — caps new assignments to that many active conversations on the channel.
No limit set — only the total assignment limit applies.
Note:
If no default is set at any level, only the total assignment limit applies.
Channel limits are additive with the total assignment limit. A teammate must have capacity under both their channel limit and their total limit to receive a new conversation — the more restrictive of the two applies.
Phone conversations are not affected by channel assignment limits and retain a separate limit of 1. Channel limits also only apply to load-balanced assignment — manual assignments bypass both the teammate assignment limit and status.
Inbox assignment limits
You can also set limits for specific team inboxes in Settings > Inbox > Team inboxes. This works alongside individual limits to prevent overload from specific high-volume or high-complexity inboxes.
Note: Manually assigning a conversation bypasses both the teammate assignment limit and status (Active or Away). A manual assignment always goes through.
How the limits work together: worked examples
A teammate can have up to three layers of limits: a total assignment limit, optional channel limits (Messenger and Email), and inbox assignment limits on specific team inboxes. Balanced assignment only assigns a conversation when the teammate has room under every limit that applies to it. The most restrictive limit always wins.
The total limit is a ceiling, not a split
Channel limits don't need to add up to the total. Each channel limit is an independent cap that sits inside the total. For example:
Total / Messenger / Email | What the teammate can be assigned |
10 / 10 / 10 | Up to 10 conversations in any mix, such as 10 Messenger, 10 email, or 6 Messenger and 4 email. The channel limits never bind before the total does. |
10 / 5 / 5 | No more than 5 Messenger and no more than 5 email. They only reach 10 with 5 of each, or with conversations from other channels (such as WhatsApp) making up the difference. A teammate with 5 Messenger conversations gets no more Messenger, even with 5 spaces left under the total. |
10 / 5 / no limit | No more than 5 Messenger. Email is only capped by the total, so they could hold up to 10 email conversations. |
Channels without their own limit still count toward the total
Channel limits are only available for Messenger and Email. Conversations from other channels, such as WhatsApp, Facebook, Instagram and SMS, have no channel limit of their own, but they do count toward the teammate's total. If these conversations fill up the total, the teammate stops receiving Messenger and email conversations too, even though their Messenger and Email limits still show room.
For example: a teammate has a total of 10 and a Messenger limit of 5. They're handling 8 WhatsApp conversations and 2 Messenger conversations. They won't get any more Messenger conversations, because they're at their total of 10, even though they're only at 2 of 5 for Messenger.
Teammate limits count conversations across all inboxes
A teammate's total and channel limits apply across the whole workspace, not per team inbox. Their open conversations in every inbox, and their tickets if you include tickets in workload management, count toward the same limits. A teammate can look like they have room in the inbox you're viewing, while already being at a limit because of conversations held elsewhere.
That's why the assignment view shows two numbers, Inbox capacity / Teammate capacity: the first is what's assigned from this inbox, and the second is the teammate's overall total across the workspace. Check the second number to see whether the teammate can take more.
Inbox assignment limits are an extra layer
An inbox assignment limit is checked separately, on top of the teammate's total and channel limits. To assign a conversation from that inbox, the teammate needs room under the inbox limit and under their own limits.
For example: to cap how many conversations a teammate takes from one busy inbox, set an inbox assignment limit of 5 and give the teammate a higher total, such as 15. They take up to 5 from that inbox, while still having room for conversations from other inboxes and channels.
Important: The Team capacity condition in Workflows doesn't check channel limits. It checks teammates' total limits and inbox assignment limits only. A workflow can find that a team has capacity and route a conversation there, and then balanced assignment can't assign it because the available teammates are at their Messenger or Email limit. The conversation waits in the team inbox until someone has room. Don't rely on the Team capacity condition alone to confirm a conversation will be assigned when you use channel limits.
Manage teammate limits at scale
To manage your team's capacity, navigate to Settings › Helpdesk › Assignments › Teammate assignment limit.
The teammate assignment limit view allows you to filter, bulk update, and export data. To identify workload distribution patterns or outliers, you can now sort the table by clicking any of these column headers:
Name: Sort teammates alphabetically.
Conversation assignment limit: Sort numerically to see teammates with the highest or lowest chat capacity.
Ticket assignment limit: Sort numerically to manage ticket-specific workload distribution.
Primary team inboxes: Sort by the primary inboxes assigned to each teammate.
Secondary inboxes: Sort by the secondary inboxes assigned to each teammate.
Tags: sorted by tag count.
Tip: Click a column header to toggle between ascending and descending order. Your sorting preferences will be remembered the next time you visit the page.
Filter by teammate availability
You can filter the Assignment Limits table by teammate availability to instantly narrow down who's active, away, or away and reassigning, without scrolling through your entire team list.
Go to Settings > Inbox > Assignment > Teammate assignment limit and use the Status filter at the top of the table to select one of the following options:
All (default) — no filter applied; the full teammate list is shown.
Active — teammates currently online and available.
Away — teammates who have set themselves as away.
Away & Reassigning — teammates who are away and have automatic conversation reassignment enabled.
The status filter works alongside the existing name search, sort controls, and the Clear all filters button. If a filter returns no matches, an empty state is shown. Pagination resets to the beginning whenever the filter changes.
Note: Teammate availability is snapshotted at page load. Changes while the page is open won't reflect until the page is refreshed.
Bulk update teammate limits
If you need to adjust limits for multiple teammates at once:
Select the checkboxes next to the teammates you wish to edit.
Click the relevant action button at the top of the table, such as Edit assignment limit, Edit ticket assignment limit, Edit email channel limit, Edit messenger channel limit, Edit primary team inboxes, or Edit secondary team inboxes.
Confirm the actions you wish to implement.
Defining conversations prioritization
Imagine a teammate becomes available, they have the capacity to handle one conversation. This teammate belongs to multiple team inboxes where there are several conversations waiting to be assigned. You need to ensure that the most critical and time sensitive conversation gets assigned to them.
From Settings > Inbox > Assignments > Workload management in the "Conversation sorting" section you can define how conversations are prioritized before Intercom assigns the top one to available teammates. You can add or remove attributes. And reorder attributes to change their precedence.
You can rely on one or many of the following attributes:
Conversation priority: Conversations marked as priority are sorted first.
SLA: Conversations are sorted by their SLA breach time. Conversations that have already breached their SLA are sorted before the ones that have yet to breach. Conversations without an SLA are sorted last and rely on the next attribute on your list to sort them against each other.
Waiting since: Conversations where the user has been waiting longest are sorted first. Waiting time is calculated based on the oldest unanswered user reply. Conversations where the last reply is from a teammate (not waiting) are sorted last and rely on the next attribute on your list to sort them against each other.
Started at: Conversations with the oldest first user reply are sorted first.
Team inboxes priority: Conversations are sorted based on their team inboxes’ priority order defined in the workload management page.
Using the conversation sorting shown in the screenshot above (Priority, SLA, then Waiting since), here’s an example:
Conversations 2, 3, 4, and 5 are all marked as priority. Conversation 3 is assigned first because it breached its SLA furthest in the past. Then, conversation 5 is assigned as it is the closest to breach its SLA. Both conversation 2 and 4 don’t have an SLA, but conversation 4 is assigned first as it has been waiting for longer. Conversation 1 is assigned last because it is not marked as priority.
“Pull conversation” button
When enabled in your workspace, teammates see a button in your inbox that they can use when they're ready to get assigned an additional conversation. Intercom assigns the top conversation across all balanced assignment team inboxes the teammate is member of. It sorts conversations according to the prioritization attributes defined on the workspace level.
This option is useful when you want to provide your teammates with ownership over when they get assigned a conversation, but you still want to leverage the automatic prioritization and avoid cherry picking.
You can enable this button directly from Settings > Inbox > Assignments > Workload management in the "Pull conversation button" section.
Note:
The “Pull conversation” button doesn’t account for the assignment limit. It assigns conversations even if teammates are at their limit.
The "Pull conversation" button ignores a teammate's Inbox status (Active vs. Away). If a teammate hits the button while in Away mode, it will still assign them a conversation.
Reassign unsnoozed conversations when teammates are at capacity
When a snoozed conversation reopens, it can end up staying with the original assignee even if they’re already at their assignment limit. For teams using balanced assignment this can unintentionally overload teammates.
Go to Settings > Inbox > Assignments > General and turn on Reassign unsnoozed conversations when teammates are at capacity. Enabling this option returns reopened conversations to the team inbox when the original assignee is at capacity, so balanced assignment can redistribute them fairly.
How to set unsnoozed reassignment for individual teammates
Unsnoozed reassignment lets you override the workspace's at-capacity setting for individual teammates. Use it when some teammates should keep their unsnoozed conversations (for example, teammates working long-running investigations or tickets waiting on another team), while others should hand them back to the team inbox so someone available can pick them up.
To set unsnoozed reassignment for a teammate, you need the Manage workload management permission:
Go to Settings > Inbox > Assignments and open the Teammate assignment tab.
Find the teammate and choose a value in the Unsnoozed reassignment column.
The new value is saved and applies the next time one of that teammate's conversations unsnoozes while they're at capacity.
Each teammate can have one of these unsnoozed reassignment values:
To current inbox: Unsnoozed conversations go back to the team inbox when this teammate is at capacity, even if the workspace setting is off.
To current assignee: Unsnoozed conversations stay with this teammate when they're at capacity, even if the workspace setting is on.
Follows workspace setting: The teammate follows the workspace's Reassign unsnoozed conversations when teammates are at capacity setting. This is the default for every teammate.
A teammate's unsnoozed reassignment value always takes priority over the workspace setting, in both directions. Teammates set to Follows workspace setting change automatically whenever the workspace setting changes.
For example: your workspace setting is on, but a senior teammate handles long-running escalations. Set that teammate to To current assignee, and their unsnoozed conversations stay with them when they're at capacity, while everyone else's go back to the team inbox.
How to bulk edit unsnoozed reassignment for multiple teammates
You can set unsnoozed reassignment for many teammates at once from the Teammate assignment tab:
Select the checkboxes next to the teammates you want to update.
Click Edit unsnoozed reassignment and choose To current inbox, To current assignee, or Follows workspace setting.
Review the change in the "Confirm bulk change" dialog and confirm to save it for all selected teammates.
There's a limit on how many teammates you can bulk edit at once. If you select more than the limit, Edit unsnoozed reassignment is disabled and a tooltip asks you to select fewer teammates. Every unsnoozed reassignment change, single or bulk, is recorded in your workspace activity log.
Note: Unsnoozed reassignment for individual teammates has these limitations:
At capacity only: The teammate value only applies when the teammate is at capacity. Reassignment when a teammate is away is still controlled by the workspace-level away settings, so a teammate set to To current assignee can still have unsnoozed conversations reassigned while they're away.
Balanced assignment and limits required: Reassignment only happens for team inboxes using balanced assignment, and only for teammates with an assignment limit. Setting To current inbox on a teammate with no limit, or on a team inbox using round robin, has no effect.
Returned to the team inbox: The conversation is unassigned and returned to the team inbox. It isn't reassigned directly to another teammate.
Own unsnoozes don't reassign: A conversation isn't reassigned when the assigned teammate unsnoozes it themselves.
Web app only: Unsnoozed reassignment can only be set in Settings in the Intercom web app. It can't be set through the API or the Intercom mobile apps.
Reassign unsnoozed conversations when away
When a conversation unsnoozes and lands back with an away teammate, it can sit untouched until someone manually reroutes it. There are two settings to handle this automatically, both found in Settings > Inbox > Assignment > General settings, and both require the team inbox to use Balanced assignment.
Away & Reassign means a teammate is away and has explicitly turned on the option to have their conversations reassigned to others. It's a stronger signal than simply being Away.
Choose the setting that matches how your team works:
Reassign unsnoozed conversations when away: Triggers whenever the assignee is Away. Best for teams that want the broadest coverage.
Reassign unsnoozed conversations when away & reassigning: Only triggers when the assignee is specifically set to Away & Reassign. Use this if you only want reassignment when a teammate has explicitly opted in to hand off their work.
Note: Reassignment triggers when the unsnooze is caused by another teammate's action (e.g. unsnooze click, assignment, or note), an automatic timer, or a customer reply. It won't reassign if the assigned teammate unsnoozes their own conversation.
How to choose what gets reassigned and when
Automatic reassignment settings let you decide what gets reassigned when a teammate is away or at capacity, and what triggers the reassignment. Set this up on the Reassignment card in Settings > Inbox > Assignments.
On the Reassignment card, you can choose:
What gets reassigned: Conversations, tickets, or both. For example, keep long-running tickets with their owner while conversations still move to a teammate who's available to reply.
What triggers reassignment: Unsnooze, reopen, or both. With reopen selected, a conversation that reopens for an away or at-capacity teammate goes back to the team inbox, the same way an unsnoozed conversation does.
Note: Automatic reassignment settings don't change anything until you opt in. Existing workspaces keep their current behavior by default, where reassignment moves both conversations and tickets.
Need more help? Get support from our Community Forum
Find answers and get help from Intercom Support and Community Experts


















