Most explanations of a posting queue stop at “it picks the next free time.” That is true, and not very useful. What you want to know is what your week will look like after you queue a pile of posts, and whether that is a week you’d choose.
This post walks through one example, then covers the limits that actually bind, a way to decide what belongs in a queue, and the mistakes we see most. For the steps to use the queue itself, see the Queue feature page.
A worked example: eight evergreen posts on a Monday morning
Say you are on the Pro plan, in Chicago, and at 10:00 AM on a Monday you write eight evergreen posts and choose Add to Queue on each, one after another.
Here is what happens, in order.
- The first post cannot go earlier than five minutes from now, so it lands a little after 10:05 AM today, give or take the random nudge.
- The second needs a two-hour gap from the first, so it lands around 12:05 PM.
- The third, fourth and fifth follow at roughly two-hour steps: early afternoon, mid-afternoon, early evening.
- The sixth would fall after 8:00 PM, outside the posting window, so today is done. It goes to Tuesday, starting from 9:00 AM.
- Posts seven and eight take Tuesday’s first two slots.
So your “week” is really a day and a bit. Five posts go out on Monday between about 10 AM and 6 PM, which is more than most accounts should post in one day on one channel. That is not a bug. The queue fills the earliest room it can find, and it has no idea whether a day is too crowded for your audience.
What would you have wanted? Probably one post a day. The queue won’t do that unless you help it, and the next sections cover how.
The numbers that really cap a queue
The window is 9:00 AM to 8:00 PM your time, with at least two hours between posts. Do the arithmetic and a day holds at most six posts, and five in the typical case. That ceiling is lower than most plan limits, so the plan limit matters only on Free:
| Plan | Scheduled posts per day | Scheduled posts waiting at once | What actually limits the queue |
|---|---|---|---|
| Free | 3 | 10 | 3 a day, and 10 waiting in total |
| Pro | 30 | No limit | The window and the two-hour gap |
| Business | 100 | No limit | The window and the two-hour gap |
A few consequences:
- On Free, ten waiting posts at three a day is about three and a half days of queue. Fill it on Monday and it is empty by Thursday. The queue will refuse to add an eleventh until something publishes.
- On Pro and Business, you will never hit the daily cap through the queue. You will hit the two-hour rule first.
- The look-ahead is seven days. If those seven days are full, you get a “queue is full” message rather than a post silently pushed to next month.
- A batch added through bulk compose is the exception: it looks further ahead, up to 60 days, so a large batch can be spread out. If there isn’t room for all of it, you are told how many fit.
The two-hour gap applies across the whole workspace, not per channel. Queue one post for Instagram and one for LinkedIn and they are still two hours apart, even though they could go out together without any trouble.
Decide what goes in the queue
The queue is a good fit when the post does not care when it goes out. Use this as a quick filter.
| The post is… | Use the queue? | Why |
|---|---|---|
| An evergreen tip, a how-to, a quote | Yes | Any hour inside the window is fine |
| A reshare of an older post | Yes | Nobody is waiting on it |
| A launch, a giveaway, a sale ending Friday | No, set the time | The moment is the content |
| A reply to news or an event | No, set the time | Late is the same as wrong |
| Something that works best at 7 AM or after 8 PM | No, set the time | The window can’t reach it |
| The same post at the same hour every week | No, use a recurring schedule | The queue adds a random nudge on purpose |
| A post that must follow another within minutes | No, set the times | The queue keeps posts at least two hours apart |
A mixed approach works well. Queue the evergreen backlog, and put the dated posts on the calendar by hand. The queue works around the hand-timed posts, so it never lands on top of your launch.
Mistakes that put posts at the wrong time
Queueing through the API without a time zone. In the app, your browser supplies the zone. In the API the parameter is optional and defaults to UTC, so a post for a New York audience can land at what looks like 4 or 5 AM. Always pass the zone.
Expecting round times. Each slot is nudged by up to twenty minutes either way, so you will see 2:15 PM, not 2:00 PM. This keeps a queued week from looking mechanical. If a post has to go at 2:00 PM sharp, set it yourself.
Treating the queue as one lane per channel. It is one lane per workspace. If three brands share a workspace, their posts share the same two-hour spacing. If you need independent rhythms, give each post its own time.
Letting a hand-scheduled post sit where you wanted the queue. Anything with a time in the next seven days takes its slot, including posts that are mid-publish or have just gone out. If the queue skips a morning you expected to be empty, look for a post you timed earlier.
Forgetting that approval still applies. If your role requires approval, the post is queued but waits for approval before it goes out, so the slot alone does not mean it will publish.
Moving to the top of the queue and expecting a swap. “Move to top of queue” gives that post the next free slot. It does not push the other posts later. Everything else keeps its time.
A short checklist before you queue a batch
- Is every post truly time-insensitive? Pull out the dated ones first.
- Do you want more than one post a day on one channel? If not, don’t queue them all at once, or space them by moving a few to the bottom.
- On Free, do you have fewer than ten scheduled posts waiting?
- Are you using the API? Pass the time zone.
- Do you have posts already scheduled in the next seven days? The queue will route around them, so check they are where you meant them to be.
Reordering after the fact
Every scheduled post has Move to top of queue and Move to bottom of queue in its menu. Top means the next free slot. Bottom means the first free slot after your last scheduled post. The post’s own old slot is ignored while the new one is worked out, so moving a post never lands it two hours after where it already was. Posts that belong to a repeat schedule don’t offer these options, because the schedule owns their time.
If you want a specific day and hour, edit the post and set the time. That is always available.
If you call it from code
GET /api/posts/queue-slot returns the next free time without booking it. Pass timezone, and optionally position=end for the slot after your last post or excludePostId for a post you are about to reschedule. Then create or update the post with that time. Calls a moment apart can differ by a few minutes because of the nudge. The scheduling API guide covers the rest.
Where this fits
The queue is the right tool for a backlog of evergreen posts, which pairs well with content batching and bulk scheduling. When you know the best hour for your audience, set it yourself, and best time to post on social media is the place to work that out.
The queue is available on every plan, including Free. You can try it at app.bulkpublish.com/register.