Upload Pools
Upload Pools let you define a recurring posting schedule and queue videos in advance. Instead of manually scheduling each post, you configure time slots once and just keep adding content — the system handles the rest.
How it works
Key concepts
Pool
A pool is the top-level object. It has a name, a timezone, and one or more time slots.
Slot
A slot defines:
- Time — when to post (e.g.
08:00) - Days — which days of the week to fire (e.g. Mon–Fri)
- Accounts — which connected social accounts to post to
Each slot fires independently. If you have 3 slots (08:00, 13:00, 18:00) all posting to 2 accounts, that’s 6 posts per active day.
Spread accounts over
By default every account of a slot posts at the slot time. Set Spread accounts over (5 to 60 minutes) in the pool settings and each account goes out at a random moment inside that window instead: with 20 accounts over 20 minutes, one account per minute or so, never in a fixed rhythm. A batch of accounts posting in the same minute is the pattern platforms flag as coordinated spam.
- Each account gets its own share of the window, so the posts stay evenly spread.
- The spread must end before the next slot starts: with slots at 08:00 and 08:30, the most you can set is under 30 minutes. A longer value is refused when you save.
- Staggered posts show in the calendar at their real time, as scheduled posts.
Queue item
When you add a video to a pool, it becomes a queue item with status = queued. Items are consumed in order (FIFO). When a slot fires, the next queued item is dispatched and its status becomes dispatched.
To fix a queued item, click the pencil next to it in the queue. You can change the title and the description, replace the video or photo, and change the Instagram cover (a cover image, or the frame of the video in milliseconds). It keeps its place in the queue. Once an item is dispatched it can no longer be edited.
Quota & limits
| Plan | Behaviour |
|---|---|
| Free | Subject to the monthly upload quota of the account owner (e.g. 13/month). Pool dispatches count toward this quota. |
| Paid | Unlimited dispatches. |
Pool dispatches count like any other upload — team members’ usage rolls up to the owner’s quota.
Platform-level daily limits are also enforced. If a platform rejects a post due to its own rate limit, the item is marked skipped with a warning notification instead of silently failing.
Pool states
| State | Description |
|---|---|
| Active | Slots fire at their scheduled times. |
| Paused | Slots are skipped. Queue is preserved. |
Item statuses
| Status | Meaning |
|---|---|
queued | Waiting to be dispatched at the next slot. |
dispatched | Successfully posted to the platform. |
skipped | Slot fired but the item was not posted (quota exceeded, platform error, etc.). |
Use cases
Content creator batch workflow
Record 30 videos on Sunday. Add them all to a pool configured with slots at 09:00, 15:00, 21:00 every day. The pool automatically posts 3 videos per day for 10 days — no further action needed.
Agency multi-account scheduling
Create one pool per client, each with different time slots and accounts. Add content as it’s approved. The pool queues dispatch in order without manual intervention.
API-driven automation
Use
POST /api/v1/pools/:id/videosin your n8n, Make, or custom pipeline to enqueue videos as soon as they’re rendered. The pool handles the timing.
Getting started
- Go to Upload Pools in the sidebar.
- Click New pool → set a name, timezone, and at least one time slot with accounts.
- Add videos via the queue panel (or the API).
- Toggle the pool to Active.
The scheduler will pick up the next due slot within 60 seconds.