Queues
Monitor email delivery queues and manage message flow with suspend and bounce controls.
Overview
The Queues page provides visibility into email delivery queues and allows administrative control over message flow. Messages waiting for delivery are organized into queues by destination domain and optionally by campaign.
unMTA provides three views of your queues:
| View | Purpose |
|---|---|
| Scheduled Queues | Active queues with messages waiting for delivery |
| Suspended Queues | Paused queues where delivery is temporarily halted |
| Bounced Queues | Queues where messages are being administratively bounced |
You can view queues across an entire cluster or filter to a specific MTA using the selector in the top right.
Scheduled Queues
The Scheduled Queues tab shows all active delivery queues. Each queue represents messages destined for a specific domain, optionally grouped by campaign.
| Column | Description |
|---|---|
| Queue | Destination domain (e.g., gmail.com) |
| Campaign | Campaign identifier, if any |
| Messages | Number of messages waiting in queue |
Results are limited to the top 200 queues by message count. If your cluster has more queues, some may not be displayed.
From any queue row, you can click the menu to suspend or bounce that specific queue.
You can schedule messages for future delivery using the X-Schedule header,
and assign messages to campaigns using the X-Campaign header. See Sending
Messages for details.
Suspended Queues
Suspended queues have delivery temporarily paused. Messages remain in the queue but won't be processed until the suspension expires or is manually removed.
| Column | Description |
|---|---|
| Domain | Destination domain affected |
| Campaign | Specific campaign, or all if not specified |
| Reason | Explanation provided when suspending |
| Duration | Time remaining until suspension auto-expires |
To resume delivery, click the trash icon to delete the suspension.
Bounced Queues
Bounced queues are being administratively cleared. Matching messages are immediately bounced and removed, and new messages arriving for the same destination are also bounced until the rule expires.
| Column | Description |
|---|---|
| Domain | Destination domain affected |
| Campaign | Specific campaign, or all if not specified |
| Reason | Explanation provided when bouncing |
| Duration | Time remaining until bounce rule auto-expires |
| Bounced | Number of messages bounced so far |
To stop bouncing new messages, click the trash icon to delete the bounce rule.
Suspending a Queue
Suspending a queue pauses delivery without discarding messages. Use this when you need to temporarily halt delivery—for example, during recipient server maintenance or while investigating delivery issues.
Configuration
| Field | Required | Description |
|---|---|---|
| Domain | Yes | Destination domain to suspend (e.g., gmail.com) |
| Campaign | No | Limit to specific campaign; leave empty for all campaigns |
| Duration | Yes | How long to suspend (hours + minutes, minimum 1 minute) |
| Reason | Yes | Explanation logged with the suspension |
How to Suspend
From a scheduled queue:
- In the Scheduled Queues tab, click the menu icon on a queue row
- Select Suspend [domain]
- Adjust duration and enter a reason
- Click Suspend
For any domain:
- Click Options in the top right
- Select Suspend a Queue
- Enter the domain (and optionally campaign)
- Set duration and reason
- Click Suspend
Suspension Behavior
- Messages remain queued but delivery attempts stop immediately
- The suspension applies to the entire cluster or selected MTA
- Suspension auto-expires after the specified duration
- You can manually delete the suspension to resume delivery early
Bouncing a Queue
Bouncing a queue permanently discards matching messages. Each bounced message generates an AdminBounce event in your logs (unless logging is suppressed).
This is a destructive operation. Bounced messages are immediately removed and cannot be recovered.
Configuration
| Field | Required | Description |
|---|---|---|
| Domain | Yes | Destination domain to bounce |
| Campaign | No | Limit to specific campaign; leave empty for all campaigns |
| Duration | Yes | How long to bounce new messages (hours + minutes, min 1 minute) |
| Reason | Yes | Logged in delivery logs and bounce records |
| Suppress logging | No | Prevents AdminBounce log records for each bounced message |
How to Bounce
From a scheduled queue:
- In the Scheduled Queues tab, click the menu icon on a queue row
- Select Bounce [domain]
- Adjust duration and enter a reason
- Optionally enable Suppress logging
- Click Bounce
For any domain:
- Click Options in the top right
- Select Bounce a Queue
- Enter the domain (and optionally campaign)
- Set duration and reason
- Click Bounce
Bounce Behavior
- Existing messages in matching queues are immediately bounced and removed
- New messages arriving during the duration are also bounced
- Each bounced message generates an
AdminBounceevent (unless suppressed) - The bounce rule auto-expires after the specified duration
- You can manually delete the bounce rule to stop bouncing new messages
AdminBounce events appear in your webhooks and log shipping if configured. See Events for details on the event payload.
Removing Suspensions and Bounces
Removing a Suspension
- Navigate to the Suspended Queues tab
- Find the suspension you want to remove
- Click the trash icon on that row
- Delivery resumes immediately for the affected queue
Removing a Bounce Rule
- Navigate to the Bounced Queues tab
- Find the bounce rule you want to remove
- Click the trash icon on that row
- New messages will no longer be bounced (already bounced messages are gone)
Best Practices
When to Suspend
- Temporary delivery issues — Pause while a recipient server is experiencing problems
- Investigation — Hold messages while investigating high bounce rates
- Coordination — Pause delivery while coordinating timing with a recipient domain
- Maintenance — Halt delivery during your own maintenance windows
When to Bounce
- Invalid domains — Clear messages for domains confirmed as invalid or abandoned
- Recipient request — Honor requests to remove all pending messages
- Business decision — Stop all delivery to a domain based on policy
- Cleanup — Clear test or unwanted messages from queues
Duration Guidelines
| Scenario | Suggested Duration |
|---|---|
| Quick investigation | 5–15 minutes |
| Recipient server maintenance | 1–4 hours |
| Extended investigation | 24 hours |
| Permanent removal (bounce) | 24+ hours |
Logging Considerations
- Keep logging enabled for audit trails unless you have a specific reason not to
- Suppress logging only for high-volume bounces where individual records aren't needed
- AdminBounce events are valuable for tracking what was removed and why