# Schedule and publish posts

> Every post is either a draft, which never publishes, or on the schedule, which publishes at its time. Choose Save as draft, Add to Calendar or Post now in the composer, and Studio takes it from there.

Source: https://voholabs.com/docs/posts/scheduling  
Last updated: 5 October 2026

Scheduling is the last step of writing a post. You can also schedule through an [AI agent](https://voholabs.com/docs/agents), the [API](https://voholabs.com/docs/api) or the [CLI](https://voholabs.com/docs/cli); they all put the post on the same calendar.

## What is the difference between a draft and a scheduled post?

| | Draft | Scheduled |
|---|---|---|
| Publishes on its own | Never | At its date and time |
| Checked against network limits | Only that it has some content | Fully, for every channel |
| Charged credits (X, free plan) | No | Yes, when scheduled |
| Shown in the calendar | Yes, marked **Draft:** | Yes |

A draft that you open again shows **Schedule** instead of **Add to Calendar**. To take a scheduled post off the schedule without deleting it, open it and choose **Save as draft**.

## How do I schedule a post?

1. In the composer, choose the date and time in the date picker at the bottom.
2. Choose **Add to Calendar**. Studio checks every channel and saves the post.
3. To publish straight away instead, hover **Add to Calendar** and choose **Post now**.

To change the time later, drag the post to another slot in the calendar, or open it, change the date and choose **Update**. See [The calendar](https://voholabs.com/docs/posts/calendar).

## How do repeating posts work?

Choose **Repeat Post Every...** at the bottom of the composer and pick an interval, from **Day** to **Month**. After the post publishes, Studio publishes it again each time the interval passes, until you remove the repeat or delete the post.

On the free plan, each repeat of an X post is charged when it goes out, not all at once. The composer says so next to the cost.

## What are time slots?

Time slots are the times of day you like to post on a channel. Studio uses them to suggest a date: **Create Post** opens at the next free slot across your channels, and a channel's own **Create Post** uses that channel's slots. Agents can ask for the next free slot with the `findSlotTool`.

To change a channel's slots:

1. In the calendar, open the channel's menu and choose **Edit Time Slots**.
2. Under **Add Time Slot**, pick the **Hour** and **Minutes** and choose **Add**.
3. Remove a slot with its bin icon.
4. Choose **Save Changes**.

Slots only suggest a time. You can always pick any other time in the date picker.

## What happens after I schedule a post?

1. The post waits on the calendar until its time.
2. At that time Studio publishes the first part, then any follow-up parts in order, waiting for any delay you set on them.
3. If the post links to another post with `(post:<id>)`, Studio waits for that post to go out first, for up to an hour.
4. Once published, the post in the calendar links to the live post, the bell notifies you, and any [webhooks](https://voholabs.com/docs/api/webhooks) and [plugs](https://voholabs.com/docs/posts/plugs) run.

If the network rejects the post, it is marked with a red outline and an exclamation mark. Hover the mark to read the reason.

## Why did a scheduled post not publish?

| What you see | Why | What to do |
|---|---|---|
| A network's message, such as a duplicate-content error | The network refused the post. | Open the post, change what it objects to, and choose **Update** to put it back on the schedule. |
| Refresh channel needed | The channel's access expired. | Choose **Reconnect channel** in the channel's menu, then reschedule. |
| Channel disabled | The channel is turned off in Studio. | Choose **Enable Channel** in the channel's menu, then reschedule. |
| This post links to a post that hasn't published yet | The post it references did not go out within an hour. | Publish the other post, or remove the reference. |
| Not published: there weren't enough credits when it was due. | On the free plan, the wallet could not pay for an X post. | Top up, then reschedule it. |

The [troubleshooting page](https://voholabs.com/docs/help/troubleshooting) covers more cases.

## Frequently asked questions

### Do I need to keep Studio open for a post to publish?

No. Studio publishes from its servers, so you can close the browser once the post is on the calendar.

### Which time zone are times in?

The time zone of the browser you are using. Under Settings › Global Settings you can switch the clock between AM:PM and 24 hours.

### Can I schedule a post in the past?

No. Past times in the calendar are greyed out, and you cannot drop a post onto them. To publish straight away, use Post now.

### Do drafts cost credits?

No. Nothing is charged for a draft. On the free plan, an X post is charged when it goes on the schedule, and the charge is given back if you move it back to draft. See [Post to X](https://voholabs.com/docs/channels/x).

### How do I know a post went out?

The bell in the top bar notifies you when a post is published or fails, and the post in the calendar links to the live post. You can also turn on email notifications in Settings › Global Settings.

## Related pages

- [Create a post](https://voholabs.com/docs/posts/create)
- [The calendar](https://voholabs.com/docs/posts/calendar)
- [Post to X](https://voholabs.com/docs/channels/x)
- [Troubleshooting](https://voholabs.com/docs/help/troubleshooting)
