Thread splitter
Paste a long piece of writing and choose where it is going. It is cut into parts that each fit, at a blank line first and the end of a sentence second, and never in the middle of a word. Every cut is measured with the network's own counter rather than with a character count.
4 parts for X.
The parts
Room is kept back on every part for the numbering you will add, so a part that measures right at the ceiling still has space for the number you put in front of it.
-
Part 1 of 4 216 / 280
We shipped the departures board this week, and the thing nobody warned us about is that a scheduler is really a promise: the post leaves at that minute or it does not, and everything else on the screen is decoration.
-
Part 2 of 4 211 / 280
So the board shows one row per target rather than one row per post. If one network takes the post and another refuses it, you get both answers side by side, each with the network's own words for what went wrong.
-
Part 3 of 4 248 / 280
A partial result is a real state and it has a colour of its own. The alternative is a green tick over a post that half departed, which is the kind of quiet failure nobody finds until a customer asks why the announcement never appeared in one place.
-
Part 4 of 4 223 / 280
The part that took longest was the counting. Networks count characters in several different ways, and the composer has to agree with the publisher about every one of them, or a draft that looked fine is refused at the gate.
The same draft, every network
One piece of writing is 4 parts on X and 3 on LinkedIn, because the ceilings differ and so does the unit each one counts in. 16 of the 21 have a ceiling high enough to take the whole draft in one post, and it is still split there, because the blank lines you typed are kept as part boundaries rather than closed up.
- X 280 weighted 4 parts
- LinkedIn 3,000 code points 3 parts
- Bluesky 300 graphemes 4 parts
- Mastodon 500 graphemes 3 parts
- Telegram 4,096 code points 3 parts
- Discord 2,000 code points 3 parts
- Instagram 2,200 code points 3 parts
- Facebook 63,206 code points 3 parts
- Threads 500 UTF-8 bytes 3 parts
- TikTok 2,200 UTF-16 units 3 parts
- YouTube 5,000 UTF-8 bytes 3 parts
- Pinterest 800 code points 3 parts
- Reddit 40,000 code points 3 parts
- Slack 4,000 code points 3 parts
- dev.to 800,000 UTF-8 bytes 3 parts
- Hashnode 100,000 code points 3 parts
- Ghost 100,000 code points 3 parts
- WordPress 100,000 code points 3 parts
- Tumblr 100,000 code points 3 parts
- Lemmy 10,000 UTF-16 units 3 parts
- Nostr 8,192 code points 3 parts
Where it cuts, and where it stops
In this order
- A blank line. You already said a new idea starts here.
- The end of a sentence, so a part does not stop mid clause.
- A word boundary, which is ugly and better than the alternative.
- Anywhere, reachable only for a single word longer than the whole ceiling, which in practice is a link.
Two rules worth knowing
Your own blank lines are respected first. Three paragraphs were three beats, and joining two of them because they happen to fit together would edit your writing rather than fit it.
Past 25 parts it stops splitting and appends what is left to the last part rather than dropping it. That part will be over the limit and will say so, which is the right place to find out, because nobody should lose words to a cap they did not choose.
The other tools
Inside the composer
The same counters run inside the composer
Postauto measures a draft against every account you have ticked before it will let you schedule anything, using the code on this page. Nothing fails at departure time over length.