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

# Ticket Assignment

> Automatically assign incoming tickets to the most available teammate, or let your team manually pick up work.

As your support volume grows, you need an efficient way to route tickets to the right people. Chatbase offers three assignment methods so you can match your workflow, whether you prefer full control, even distribution, or simple rotation.

## Assignment methods at a glance

<Columns cols={3}>
  <Card title="Manual" icon="hand">
    Tickets remain unassigned until a teammate claims one or a manager assigns it.
  </Card>

  <Card title="Balanced" icon="scale-balanced">
    Each new ticket goes to the available agent with the **fewest open tickets**.
  </Card>

  <Card title="Round Robin" icon="arrows-rotate">
    Each new ticket goes to the available agent who has gone **longest without receiving one**.
  </Card>
</Columns>

***

## Manual assignment

With manual assignment, new tickets land in the shared inbox and wait for a teammate to pick them up or for a manager to assign them directly. This is the default for all new helpdesk configurations.

**Best for:**

* Small teams where agents self-select work
* Specialized tickets that require specific expertise
* Low-volume inboxes that don't need automation

***

## Balanced assignment

Balanced assignment automatically routes each incoming ticket to the available agent with the **lowest number of open tickets**. This keeps workloads even across your team, so no single agent gets overwhelmed while others sit idle.

### How it works

1. A new ticket arrives in the helpdesk.
2. The system finds all agents whose status is **Available**.
3. If a max ticket limit is configured, agents who have reached that limit are excluded.
4. The ticket is assigned to the agent with the **fewest open tickets** (non-closed, non-cancelled).
5. If multiple agents are tied, the one who was **least recently assigned** a ticket receives it.

***

## Round robin assignment

Round robin distributes tickets sequentially by assigning each new ticket to the available agent who was **least recently assigned**, regardless of how many tickets they currently have open. It's a good fit for **sales and lead distribution** where equal opportunity matters more than current workload.

### How it works

1. A new ticket arrives in the helpdesk.
2. The system finds all agents whose status is **Available**.
3. If a max ticket limit is configured, agents who have reached that limit are excluded.
4. The ticket is assigned to the agent with the **oldest last-assignment timestamp**, the teammate who has waited longest for a new ticket.

Unlike balanced assignment, round robin does **not** factor in how many tickets an agent currently has open. It purely rotates based on assignment order.

***

## Comparison

| Feature                          | Manual | Balanced                | Round Robin             |
| :------------------------------- | :----- | :---------------------- | :---------------------- |
| Auto-assigns tickets             | No     | Yes                     | Yes                     |
| Selection criteria               | —      | Fewest open tickets     | Least recently assigned |
| Considers current workload       | —      | Yes                     | No                      |
| Respects max ticket limit        | —      | Yes                     | Yes                     |
| Only assigns to available agents | —      | Yes                     | Yes                     |
| Tie-breaking rule                | —      | Least recently assigned | —                       |
| Supports next-shift fallback     | —      | Yes                     | Yes                     |

***

## Unassigned tickets

When no agents are available or all agents have reached their ticket limit, the ticket stays in the shared inbox as **unassigned**. It is not lost. The system will automatically assign it when capacity opens up.

Unassigned tickets are always processed **oldest first** and assigned **incrementally**, one at a time, so that no single agent is swarmed with the entire backlog the moment they come online. You don't need to manually reassign queued tickets.

***

## When all agents are unavailable

If every agent is set to **Away**, **Busy**, or **Paused**, the auto-assignment algorithms (balanced and round robin) cannot find an eligible agent. Here's what happens:

* Incoming tickets stay **unassigned** in the shared inbox with a **New** status.
* Tickets remain queued until an agent becomes available.
* When capacity opens up, unassigned tickets are assigned incrementally, oldest first, one at a time, until the backlog is cleared.

<Tip>To avoid a growing backlog, ensure at least one agent is set to **Available** during business hours.</Tip>

***

## Assign to next available shift

When every agent is unavailable and you use **Balanced** or **Round Robin** assignment, you can enable **Assign to next available shift** so that incoming tickets are automatically routed to an agent whose shift starts soonest, instead of staying unassigned.

### How it works

1. A new ticket arrives and the system finds no available agents (all are `Off shift`, `Away`, `Busy`, or `Paused`).
2. The system looks at all **scheduled** agents and calculates when each agent's next shift begins, skipping any agents who are on time off.
3. The ticket is assigned to the agent (or agents, if tied) whose shift starts the **earliest**.
4. The chosen agent is selected using the same algorithm you configured. **Balanced** picks the one with the fewest open tickets, **Round Robin** picks the one least recently assigned.

<Info>This feature only applies to **scheduled** agents (those assigned to a shift). Manual agents are not considered because their next available time cannot be predicted.</Info>

### Enabling the toggle

<Steps>
  <Step title="Open assignment settings">
    Navigate to your chatbot's **Helpdesk Settings → Assignment** page.
  </Step>

  <Step title="Choose an auto-assignment method">
    Select **Balanced** or **Round Robin**. The toggle is not available for **Manual** assignment.
  </Step>

  <Step title="Enable the toggle">
    Turn on **Assign to next available shift**. When enabled, tickets that would otherwise stay unassigned are routed to the next agent coming on shift.
  </Step>
</Steps>

### Things to know

* **Max ticket limits still apply.** If you have a max tickets per agent configured, the next-shift agent must also be under that limit to receive the ticket.
* **Time off is respected.** Agents on time off are skipped even if their shift is the soonest.
* **Multiple agents on the same shift.** When several agents share the same next shift start time, the configured assignment algorithm (Balanced or Round Robin) breaks the tie.
* **No scheduled agents?** If your team has no scheduled agents, this toggle has no effect since there are no shift start times to predict.

***

## Max tickets per agent

For both automated methods (balanced and round robin), you can optionally set a **maximum number of open tickets per agent**. When an agent reaches this limit, they stop receiving new assignments until they close or resolve existing tickets.

* **Range:** 1–999
* **Default:** Disabled (no limit)

<Steps>
  <Step title="Enable the limit">
    Toggle **Limit open tickets per person** in the assignment settings.
  </Step>

  <Step title="Set the cap">
    Enter a number between 1 and 999. A good starting point is **10** for most support teams. Adjust based on your ticket complexity and team size.
  </Step>
</Steps>

<Warning>When all available agents are at capacity, incoming tickets remain unassigned in the shared inbox. Monitor your team's workload to avoid bottlenecks.</Warning>

***

## Agent availability

Only agents with an **Available** status are eligible for automatic assignment. You can manage each agent's status from the team availability panel in the assignment settings.

| Status        | Receives auto-assigned tickets? | When to use                                                          |
| :------------ | :------------------------------ | :------------------------------------------------------------------- |
| **Available** | Yes                             | Agent is online and ready to handle tickets                          |
| **Away**      | No                              | Agent is temporarily unavailable (lunch, meeting)                    |
| **Busy**      | No                              | Agent is focused on existing work and should not receive new tickets |
| **Paused**    | No                              | Agent is offline or on extended leave                                |

Agents can update their own status at any time from the sidebar.

***

## Setting up assignment

<Steps>
  <Step title="Open assignment settings">
    Navigate to your chatbot's **Helpdesk Settings → Assignment** page.
  </Step>

  <Step title="Choose an assignment method">
    Select **Manual**, **Balanced**, or **Round Robin** based on your team's workflow.
  </Step>

  <Step title="Configure ticket limits (optional)">
    If using balanced or round robin, toggle on **Limit open tickets per person** and set a cap to prevent agent overload.
  </Step>

  <Step title="Set team availability">
    Review your team's availability in the table below the assignment method. Ensure agents who are ready to receive tickets are set to **Available**.
  </Step>
</Steps>

***

## Good to know

* **New agents default to Away.** When an agent is first added to a chatbot, their status is set to **Away**. They will not receive auto-assigned tickets until an admin or the agent themselves switches to **Available**.
* **Ticket limits only apply to auto-assignment.** The max tickets per agent setting does not restrict manual assignment. An admin can still assign tickets to an agent who has exceeded the configured limit.
* **Reassignment does not change ticket status.** When a ticket is reassigned from one agent to another, the ticket's status remains unchanged. It does not reset to **New** or **On You** automatically.
* **The Away toggle only switches between Away and Available.** Agents in **Busy** or **Paused** status cannot use the sidebar toggle. Only an admin can change their status from the Helpdesk Settings → Assignment panel.
