How to schedule Bluesky posts in 2026

Bluesky has no built-in scheduler. The app only lets you post right now. To schedule Bluesky posts, you connect your account to a scheduling tool with a Bluesky app password, a scoped, revocable credential you create in settings and never your main password. The tool then publishes each post on time over the AT Protocol.

Can you schedule Bluesky posts natively in the app?

No. This is the honest starting point most guides skip. Bluesky has no native scheduling in the app or on the website. You write a post and it goes out immediately, or not at all. There is no “schedule for later” button, no draft-and-queue calendar, nothing server-side that holds a post until a set time. If you want a post to go out on Tuesday at 9am while you are asleep, the app cannot do it for you.

That is not a knock on Bluesky. It is a young network built on an open protocol, and scheduling simply is not a first-party feature yet. But it means the only way to schedule Bluesky posts is to connect your account to an outside tool that can publish for you at a chosen time. The good news: Bluesky’s open design makes that connection clean and safe, as long as you use the right credential.

How does a scheduler connect to Bluesky?

A scheduler connects to Bluesky using an app password, not your main password. This is the single most important detail, and it is the one to get right for your account’s safety. An app password is a separate credential Bluesky lets you create for exactly this purpose: it is scoped, it is revocable, and handing it to a tool never exposes your real login. Here is how you set it up:

  1. Open Bluesky settings. In the Bluesky app or on bsky.app, go to Settings, then App passwords.
  2. Create a new app password. Give it a name you will recognize later, such as “PostDodo,” and Bluesky generates a one-time credential in the format xxxx-xxxx-xxxx-xxxx.
  3. Never use your main password. Your main password logs into your whole account. An app password only lets a connected tool post on your behalf, and you can revoke it any time without changing your real login.
  4. Paste your handle and the app password into the scheduler. Give it your handle (for example name.bsky.social, or your own custom domain) plus the app password. A good tool stores an encrypted session token, not the password itself.

That is the whole connection. Because the app password is scoped and revocable, you stay in control: if you ever want to cut a tool off, you delete that one app password in Bluesky settings and it stops working instantly, with no effect on your account or your other connections.

How do you schedule a Bluesky post step by step?

Once your account is connected with an app password, scheduling a post is quick. The flow is the same in any honest tool. In PostDodo it looks like this:

  1. Write your post. Compose your text, reply, or thread, and attach up to four images if you want. Keep it within the 300-character limit (more on that below).
  2. Pick a future time. Choose the date and time you want it to go out, ideally inside a window when your audience is active.
  3. Queue it. Add it to your schedule alongside anything else you are posting. You can line up a week of Bluesky posts in one sitting.
  4. Let the tool publish it. At the set time, the scheduler publishes your post directly to Bluesky over the AT Protocol, whether or not your device is on.
  5. Confirm it went live. This is the step people forget. A confirming tool reads back the post’s own live link on bsky.app as proof it published, instead of just showing you a hopeful checkmark.

If you also post to Threads and Mastodon, scheduling all three together is worth setting up in one pass. Scheduling Bluesky, Threads, and Mastodon together covers that wider workflow; this guide stays focused on Bluesky.

Manual posting vs a Bluesky scheduler

Since there is no native scheduler, the real choice is posting by hand in the moment versus queueing ahead with a tool. Here is the straight comparison.

What you needManual posting in the Bluesky appA scheduler (PostDodo)
Schedule ahead of timeNo, you can only post right nowYes, queue any future date and time
CostFreeFlat from $25/mo, no per-channel or per-seat fee, 7-day free trial
Networks coveredBluesky onlyAll 10 networks live to connect, one composer
300-character counterYou watch it yourselfLive 300-character counter as you type
Proof a post publishedYou check by handConfirmed live-link receipt per post (a bsky.app URL)
Auto-retry on failureNoYes, with backoff
App-password alertsNoYes, warns before your connection stops working
Best forOne post, right nowPlanning ahead, many networks, or needing proof it published

What is special about scheduling for Bluesky?

Bluesky is not just X with a new coat of paint, and two of its quirks change how you schedule. Get these right and your queued posts land clean:

Because timing carries more weight on a chronological feed, it is worth posting into your audience’s active window rather than whenever you happen to write. The best time to post on Bluesky in 2026 gives you a solid starting hypothesis per day, which you then refine from your own account’s data.

How do you confirm a scheduled Bluesky post went live?

After the scheduled time, the honest move is to check the post is actually there and opens. That matters because a scheduled Bluesky post can fail quietly for ordinary reasons: the app password was revoked or stopped working, the session expired, the media was off-spec, or you hit a rate limit. On a chronological-leaning feed, a post that fails silently is not just late, it never reaches anyone.

The fix is confirmation, and it is the whole idea behind PostDodo. PostDodo publishes straight to Bluesky over the AT Protocol, the open standard Bluesky itself runs on, not through a third-party bridge or relay. The moment a post goes out, it reads back the post’s own live link on bsky.app and saves it as a receipt, so you have proof, not hope. A transient network hiccup auto-retries with backoff instead of dropping the post, and you get warned before your app password stops working and breaks the queue. If a post ever does go missing, why your Bluesky post is not publishing walks through the seven real causes and their fixes.

Should you schedule Bluesky posts manually or with a tool?

If Bluesky is one piece of a wider posting habit, the real win is scheduling it in the same place as everything else, and because PostDodo pricing is flat with no per-channel tax, adding Bluesky next to your other networks does not raise your bill. See the flat pricing and the full network list on the Bluesky scheduler page.

Want Bluesky scheduling with proof every post went live, plus your other networks in one flat-priced calendar? Bluesky is live to connect in the PostDodo Bluesky scheduler today, so start a free 7-day trial, connect your handle with an app password, and every post carries a confirmed live-link receipt. Card required, no charge until day 8. Or see the features and the pricing first.

Frequently asked questions

Does Bluesky have a built-in post scheduler?

No. The Bluesky app has no native scheduling. It only lets you post right now. To schedule ahead, you connect Bluesky to a scheduling tool over the AT Protocol using an app password, and the tool publishes the post on your behalf at the time you set.

What is a Bluesky app password and why use one?

An app password is a separate, scoped, revocable credential you create in Bluesky Settings, App passwords. You give it to a scheduler instead of your main password, so the tool can post for you and you can revoke that access any time without ever changing your real login.

How do you schedule a Bluesky post step by step?

Create an app password in Bluesky settings, connect your handle and that app password to a scheduler like PostDodo, write your post within 300 characters, pick a future time, and queue it. PostDodo publishes it over the AT Protocol and saves the live post link back as proof.

What is the Bluesky character limit?

Bluesky caps a post at 300 characters, counted as graphemes, so an emoji or accented letter counts as one. That is more room than X's 280. A good scheduler shows a live 300-character counter as you write, so a post is never cut off or rejected for length.

How do you know a scheduled Bluesky post actually published?

Because the Bluesky feed leans chronological, a missed post is gone for good, so proof matters. A confirming tool reads back the post's own live bsky.app link after publishing, auto-retries a transient failure, and warns you before your app password stops working.

Can you schedule Bluesky posts with PostDodo today?

Yes. Bluesky is live to connect in PostDodo today. Connect your handle with an app password, schedule alongside Mastodon, Facebook, Instagram, Threads, X, LinkedIn, TikTok, YouTube, and Pinterest, and every post gets a confirmed live-link receipt. Pricing is flat from $25 a month on a 7-day free trial.