---
title: "Scheduling Posts"
description: "Schedule content across all your platforms"
---

## Scheduling a single post

Any post you create in Octopost can be scheduled instead of published immediately.

1. Create a new post and write your content.
2. Select the platforms you want to publish to (or pick a preset).
3. Instead of clicking **Publish**, click **Schedule**.
4. Pick a date and time using the date picker. Times are shown in your local time zone.
5. Click **Confirm Schedule**.

Your post will be saved and published automatically at the scheduled time. You can edit or cancel it at any point before it goes out.

## Using the content calendar

The content calendar gives you a visual overview of everything you have scheduled. You can find it under **Calendar** in the dashboard sidebar.

The calendar shows:

- **Scheduled posts** -- Posts waiting to go out, shown at their scheduled time.
- **Published posts** -- Posts that have already been sent, so you can see your posting history.
- **Drafts** -- Saved but unscheduled posts appear in a sidebar so you do not forget about them.

You can drag and drop scheduled posts to reschedule them to a different day or time. Click any post to open it for editing.

## Bulk scheduling

If you have a batch of content ready to go, you do not have to schedule each post one by one.

1. Create all your posts as drafts first.
2. Open the **Calendar** view.
3. Click **Bulk Schedule** in the top right.
4. Select the drafts you want to schedule.
5. Pick a schedule pattern -- for example, one post per day at 9am, or three posts per week on Monday/Wednesday/Friday.
6. Octopost will assign times to each draft and show you a preview.
7. Confirm, and they are all scheduled.

You can still go in and adjust individual post times after bulk scheduling.

## How the scheduler works

Behind the scenes, the scheduler is straightforward and reliable:

- A background job checks for posts that are due **every 60 seconds**.
- When a post's scheduled time has passed, Octopost begins publishing it to each selected platform.
- Each platform is published to independently. If Twitter succeeds but LinkedIn fails, the Twitter post stays up and LinkedIn gets retried.

### Retry behavior

If publishing to a platform fails (network issue, rate limit, temporary API error), Octopost retries up to **3 times** with increasing delays:

| Attempt | Delay |
|---------|-------|
| 1st retry | 1 minute |
| 2nd retry | 5 minutes |
| 3rd retry | 15 minutes |

After 3 failed attempts, the post is marked as failed for that platform. You will see the error in your post's detail view and can retry manually whenever you want.

Retries only apply to temporary errors (server errors, rate limits, timeouts). If the error is something permanent -- like an expired token or invalid content -- Octopost will not retry and will tell you what went wrong so you can fix it.

## Time zones

Octopost uses your browser's local time zone when displaying and scheduling posts. All times you see in the app -- on the calendar, in the scheduler, in post details -- are in your local time.

Internally, all scheduled times are stored in UTC. This means:

- If you travel and your time zone changes, your existing scheduled posts will still go out at the originally intended moment in time.
- If you are scheduling with a team across different time zones, each person sees times in their own local zone.

You can see what time zone Octopost detected for you in **Settings**. If it looks wrong (this can happen with VPNs), you can override it there.

## Post statuses

Every post in Octopost has a status that tells you where it is in its lifecycle:

| Status | Meaning |
|--------|---------|
| **Draft** | Saved but not scheduled or published. Sitting in your drafts until you are ready. |
| **Scheduled** | Set to publish at a specific date and time. Will go out automatically. |
| **Publishing** | Currently being sent to platforms. You will see this briefly while it is in progress. |
| **Published** | Successfully sent to all selected platforms. |
| **Partially failed** | Sent to some platforms but not all. Check the post details to see which ones failed and why. |
| **Failed** | Could not be published to any platform after all retries. |

You can filter your post list by status to quickly find drafts that need attention or check on recently published content.

## Tips

- **Schedule during peak hours** for each platform. Posting at 9am on Twitter and noon on LinkedIn tends to perform better than blasting everything at midnight.
- **Space out your posts**. If you are cross-posting the same content, consider staggering by 15-30 minutes so it does not look like a bot hit all your accounts at the exact same second.
- **Use drafts liberally**. Write when inspiration strikes, schedule when strategy calls for it.
- **Check the calendar weekly**. A quick glance at your upcoming week helps you spot gaps and avoid accidentally double-posting.
