Mastodon's character limit is 500 by default and set by each instance. There is no single Mastodon limit: mastodon.social takes 500, and other servers allow more or less. A scheduler that assumes 500 either cuts a post that would have fitted or lets one through that the server refuses with its own error. Preflight reads the numbers from your instance when you connect the account.
What an instance decides
| Default | Who decides | |
|---|---|---|
| Characters per post | 500 | The instance |
| Pictures or videos per post | 4 | The instance |
| Picture size | 16 MB | The instance |
| Video size | 99 MB | The instance |
| Video resolution and frame rate | Per instance | The instance |
Preflight asks the server for these figures, from /api/v2/instance first and /api/v1/instance if that is missing, which also covers Pleroma, Akkoma and GoToSocial. Figures outside a sane range are ignored and the defaults apply. Mastodon has no limit on video length.
How Mastodon counts
| Rule | |
|---|---|
| Unit | Graphemes: what you see as one character, so an emoji counts as one |
| A link | 23 characters, however long |
| A mention | The username counts; the domain of a remote mention does not |
Because a link counts 23, a post with a long URL fits more text on Mastodon than a counter that counts raw characters will say. The counter on this site counts it the way Mastodon does.
Pictures and video
| Rule | |
|---|---|
| Picture formats | JPEG, PNG, WebP, GIF, HEIC, HEIF and AVIF |
| Picture scaling | Scaled to about 8 megapixels |
| Video and pictures together | Refused: one video alone, or up to four pictures |
| Video resolution | At most 1080p; Preflight sends a 1080p copy of a larger video |
| Alt text | Supported per file |
The 1080p copy exists because a 4K video never finished processing on mastodon.social, while 1080p from the same phone took about a minute; a Mastodon timeline shows nothing larger anyway. Your original is not changed.
Options a post carries
| Option | Values |
|---|---|
| Visibility | Public, unlisted, followers only, or direct |
| Content warning | A short text that hides the post behind a click, which also hides its media |
| Sensitive media | Marks the media as sensitive on its own |
| Language | A two- or three-letter code |
After publishing
Mastodon is the one network here with a real edit endpoint that keeps the post and its replies, so Preflight can edit a published post. Likes, replies and boosts are read back, called favourites, replies and boosts in the app, and replies can be read and answered. A post written as a thread is sent as replies in order.
Mastodon next to the others
Five hundred is also Threads' limit, but Threads counts an emoji by its bytes and Mastodon counts it as one, and Bluesky allows 300. How to connect an instance is on the Mastodon integration page, and scheduling is described on how to schedule Mastodon posts. All twelve networks are on the limits page. Mastodon is one channel on any plan, the free one included.
Figures from the Mastodon API and Preflight's instance reader, checked 29 October 2026.
Questions people ask
- What is the Mastodon character limit?
- 500 by default, but each instance sets its own. Some allow thousands. Preflight reads the limit from your instance when you connect the account and counts against it.
- How does Mastodon count links?
- Every link counts as 23 characters, however long it is. The domain of a mention on another server is not counted either. Mastodon counts graphemes, so an emoji is one.
- How many pictures can a Mastodon post have?
- Four by default, or what the instance allows. A post can hold one video or up to that many pictures, not both.
- Can I edit a Mastodon post after it is published?
- Yes. Mastodon has a real edit endpoint that keeps the post and its replies, unlike networks where a post must be deleted and published again.
- Why does Preflight send a smaller copy of my video to Mastodon?
- Servers do not finish processing videos larger than 1080p, so Preflight sends a 1080p copy and keeps your original unchanged.