---
source: https://autoadify.com/blog/how-to-schedule-bluesky-posts
title: "How to Schedule Bluesky Posts (and Why Your Links Show Up as Plain Text)"
author: Autoadify Team
published: 2026-10-08
updated: 2026-10-08
category: Platform Guides
tags: Bluesky, Scheduling, Cross-Posting, Platform Guides, Social Media Tools
reading_time: 7 min
---

# How to Schedule Bluesky Posts (and Why Your Links Show Up as Plain Text)

> Scheduling Bluesky posts takes an app password, not a login, and three rules that trip up most tools: links need byte-offset facets or they render as dead text, the 300 limit counts graphemes, and every image must be under 1 MB. A step-by-step guide.

## Quick Answer: How Do You Schedule a Bluesky Post?

**Create an app password in your Bluesky settings, connect it to a scheduling tool along with your handle, write a post of up to 300 characters with up to four images, and pick a time. Use an app password, never your account password — it can be revoked on its own without changing your login. Then check three things the tool must get right: links have to be sent as "facets" or they appear as plain, unclickable text; the 300 limit counts graphemes, not characters; and each image must be under 1 MB.**

- **300** — Graphemes per post
- **4** — Images per post
- **1 MB** — Maximum size of each image
- **0** — Links Bluesky turns clickable for you

## How to schedule Bluesky posts, step by step

1.  **Create an app password.** In Bluesky, open Settings and find App Passwords. Create one, name it after the tool you are connecting, and copy it. It looks like `xxxx-xxxx-xxxx-xxxx`.
2.  **Connect your account.** In your scheduling tool, add Bluesky with your handle (for example `yourname.bsky.social`, or your custom domain) and the app password. Accounts on a self-hosted server work too, as long as the tool looks up where your account lives.
3.  **Write the post within 300 characters.** Paste links in full; a good tool turns them into clickable links when it publishes.
4.  **Add up to four images.** Large photos need to be resized to under 1 MB each before upload.
5.  **Choose a time and schedule.** Then check the first scheduled post once it is live: the link should be clickable and the images sharp.

## Why use an app password instead of your password

Bluesky lets you create separate passwords for each app that connects to your account. Each one can be revoked by itself, and it cannot be used to change your main password or delete your account. If a tool asks for your account password instead, do not give it. Autoadify rejects anything that is not in the app password format, so an account password cannot be saved by mistake.

## Why your scheduled links show up as plain text

On most networks, a URL in a post becomes a link automatically. **Bluesky does not do this.** A post is plain text plus a list of "facets" — annotations that say "the characters from here to here are a link to this URL". Without facets, every URL renders as dead text.

The detail that catches most developers: **facet positions are measured in UTF-8 bytes, not characters**. An emoji before a link is four bytes but one or two characters, so a tool that counts characters puts the link in the wrong place — on part of a word, or on nothing at all. One emoji early in a post can shift every link after it. The same applies to hashtags and @mentions, which are also facets. Mentions additionally need the person's handle resolved to their account ID; if that fails, the mention appears as plain text.

If your scheduled Bluesky posts have unclickable or misplaced links, this is almost certainly why.

## The 300 limit counts graphemes

A grapheme is one visible character as a reader sees it. A family emoji is several code points joined together, which a simple length count reports as up to 11 characters, but Bluesky counts it as 1. Tools that count with a plain string length will block posts that Bluesky would accept, or miscount posts in other scripts. Count graphemes, and you get the same number Bluesky does.

## Images must be under 1 MB

Bluesky rejects image uploads over 1,000,000 bytes. A modern phone photo is often several times that. The fix is to resize to a sensible width and lower the JPEG quality step by step until the file fits. Autoadify does this automatically before upload, so you can attach originals.

## What you can and cannot measure

Bluesky publishes likes, reposts, replies and quotes for every post. It does **not** publish impressions or reach, so any tool showing Bluesky impressions is estimating them. Compare Bluesky posts by engagement counts, not by reach.

## What Autoadify does and does not support on Bluesky today

-   **Supported:** text posts, up to four images with automatic resizing, clickable links, hashtags and mentions, scheduling alongside every other network, and engagement stats.
-   **Not yet supported:** video posts, link preview cards and image alt text. For a post with a video, deselect Bluesky or post a still image there instead.

## Frequently Asked Questions

### Can you schedule posts on Bluesky?

Yes, through a scheduling tool connected with an app password. Create the app password in Bluesky's settings, connect it with your handle, and schedule as you would on any other network.

### Is it safe to give a scheduling tool my Bluesky app password?

Safer than your account password. An app password can be revoked on its own, and it cannot change your password or delete your account. Never share your main password with a third-party tool.

### Why are links in my Bluesky post not clickable?

Bluesky does not link URLs automatically. The posting tool has to send each link as a facet, positioned by UTF-8 byte offset. If it does not, or counts in characters instead of bytes, links appear as plain text or land in the wrong place.

### What is the Bluesky character limit?

300 graphemes. Emoji made of several code points count as one.

### What is the maximum image size on Bluesky?

1 MB per image, with up to four images per post. Larger images have to be resized before upload.

### Does Bluesky show impressions?

No. Bluesky provides likes, reposts, replies and quotes, but not impressions or reach.

## The Bottom Line

Scheduling on Bluesky is easy to set up and easy to get subtly wrong. Use an app password, and make sure your tool sends links as byte-positioned facets, counts graphemes and shrinks images below 1 MB. Then check one live post — a dead link is the first sign a tool has cut a corner.

## Schedule Bluesky with everything else

Autoadify puts Bluesky in the same composer and calendar as Instagram, TikTok, LinkedIn, X and the rest, with all three of those rules handled for you. See [how cross-posting works](/blog/schedule-posts-to-10-networks-threads-bluesky) and [every platform's limits](/blog/social-media-character-limits-image-sizes-2026), or [start free](https://app.autoadify.com).

---

_Source: https://autoadify.com/blog/how-to-schedule-bluesky-posts · Autoadify — AI social media automation._
