How to schedule and manage Azure Service Bus messages
Updated July 21, 2026
Azure Service Bus scheduled delivery stores a message now but does not make it available to normal receivers
until its scheduled enqueue time. In QueueExplorer, create a new message with a future
time or select existing active messages and choose Schedule Messages. You can use an exact date and time
or a relative delay such as five minutes from now.
QueueExplorer's Scheduled view lets you inspect pending scheduled messages and their times, then cancel, delete,
reschedule, copy, or release them for immediate processing.
Scheduling is a one-time enqueue, not a recurring job. Before the scheduled time, the message has
a scheduled-state Sequence Number that can be used to cancel it. When it becomes active, Azure Service Bus
appends it to the entity and assigns a new Sequence Number.
When scheduled delivery fits
Schedule a message when it should enter normal delivery at a known future time. Common cases include:
an application retry after a controlled backoff period;
a workflow timeout or reminder;
release of work after a contractual or business deadline;
a deferred-message reminder carrying the original Sequence Number; or
a one-time test message for a future deployment window.
Use an application scheduler or workflow engine when you need recurring execution, calendars, dependencies,
cancellation policies, or an auditable job history. Azure Service Bus schedules individual messages once.
1. Schedule one or more messages
You can schedule a new message directly, or resubmit selected active messages for future delivery. For an
existing-message workflow:
Open the queue or topic subscription and find the messages by body, IDs, Session ID, or application properties.
Inspect and back up the selection. Pause competing consumers when the selection must stay stable.
Right-click and choose Schedule Messages.
Choose a relative interval or an exact time and confirm the time zone shown by the dialog.
Complete the operation, then verify each message in the Scheduled view.
Schedule a reviewed selection for one-time future deliveryChoose a relative delay or confirm an exact enqueue time
Scheduling selected active messages creates scheduled copies and settles the originals as required by the
operation. Broker-owned properties change. If you need the original delivery retained as well, use Copy and
schedule the copy rather than moving the original.
Session-enabled destinations require a Session ID. If the destination uses duplicate detection, preserving a
Message ID that is still inside its detection window may suppress the scheduled copy, so verify the Scheduled
view instead of relying only on a successful command.
Expand the queue in QueueExplorer to show its message-state views.
Select Scheduled.
Add Scheduled At, Sequence Number, Message ID, Session ID, body, and application properties as columns.
Sort by Scheduled At and filter the loaded messages to audit the upcoming work.
Open the Scheduled view to inspect messages before their enqueue timeUse the Scheduled At column to review the release order and timing
Azure Service Bus Peek can discover scheduled queue messages. Scheduled topic messages remain on the topic
before their enqueue time and do not appear when peeking a subscription. Topic-level browsing is required to
discover them before Azure Service Bus evaluates subscription rules at activation.
3. Cancel, reschedule, copy, or release scheduled messages
Cancel or delete: remove the scheduled message before its enqueue time using its scheduled-state Sequence Number.
Reschedule: cancel the existing scheduled message and create another with the corrected time; verify both effects.
Release now: move it back to the original queue for immediate processing. This creates a new active message and removes the pending scheduled copy.
Move or copy elsewhere: send a new message to another queue or topic, accounting for destination sessions, duplicate detection, TTL, and topic rules.
Back up: save the message before cancellation when an operator may need to reconstruct it.
Always refresh after a state-changing action. If the scheduled time passed during the operation, cancellation by
the old Sequence Number can no longer find the message because activation assigned a new Sequence Number.
Important scheduled-message behavior
The time is an availability time. It does not guarantee a consumer will start or finish work at that instant; backlog, locks, quotas, and consumer capacity still apply.
The scheduled Sequence Number is temporary. It is valid for cancellation only while the message remains scheduled.
Activation appends a new active record. Azure Service Bus assigns a new Sequence Number when the message becomes available.
There is no recurring schedule. Create each occurrence explicitly or use a workflow scheduler.
Topic routing happens at activation. The rules present then determine which subscriptions receive copies.
Large-message API behavior differs. Microsoft documents that messages larger than 1 MB must be scheduled through a regular send with ScheduledEnqueueTimeUtc, not the schedule-message API.
Use a canary message before scheduling a large batch.
Monitor scheduled inventory and alert on messages overdue beyond an acceptable tolerance.
Back up important messages before bulk cancellation or rescheduling.
Frequently asked questions
Can I browse scheduled Azure Service Bus messages?
Yes. QueueExplorer provides a Scheduled view with scheduled times. Azure Service Bus Peek includes scheduled
queue messages; scheduled topic messages must be browsed at the topic before activation, not through a subscription.
Can I cancel a scheduled message?
Yes, before it activates, using the Sequence Number assigned while it is scheduled. After activation that
number is no longer valid and the active message has a new Sequence Number.
Does Azure Service Bus support recurring scheduled messages?
No. Each scheduled message represents one future enqueue. Use an application scheduler or workflow engine for recurrence.
Will a message be processed exactly at its scheduled time?
No. The scheduled time controls when the message becomes available. Actual processing depends on consumer
availability, backlog, locks, throttling, and downstream capacity.
QueueExplorer: a better way to inspect and manage Azure Service Bus
See what is happening in Azure Service Bus and resolve message problems without writing one-off tools.
Browse queues and topic subscriptions, inspect message contents, and manage your Azure Service Bus
environment from one desktop application. Try it free on Windows, macOS, or Linux.