Almost every "character limits" post stops at the hard caps. Those are the least useful numbers on the page. You will very rarely write 2,200 characters of Instagram caption; you will constantly write past the ~125 characters that show before the feed collapses the rest behind more.
Here are both sets of numbers for the three platforms SocialAgent publishes to, followed by the ones that actually change how you write.
Post and caption limits
| Platform | Hard limit | Visible before truncation |
|---|---|---|
| Instagram caption | 2,200 characters | ~125 characters |
| Threads post | 500 characters | ~190 characters (about 3 lines) |
| X post | 280 characters (standard account) | Usually all of it |
X is the outlier: the limit is tight enough that truncation is rarely the problem. Instagram is the opposite — you have room for an essay and about one sentence of attention.
Bio limits
| Platform | Bio limit | Notes |
|---|---|---|
| 150 characters | The name field is searchable; the bio text is not | |
| X | 160 characters | Links in the bio do not count against it |
| Threads | 255 characters | Inherits your Instagram identity, not your Instagram bio |
The Instagram name field is the one people miss. It is indexed by Instagram search, so Nina · Brand Design in the name field does more for discovery than the same words anywhere in the bio.
The counting rules that surprise people
- Emoji are often two characters. Most emoji are two UTF-16 units. Skin-tone and family emoji can count for four or more. Four emoji can cost you a dozen characters on X.
- X shortens every link to 23 characters. A 140-character URL and a 20-character URL cost the same. Do not shorten links to save space on X — there is nothing to save.
- Line breaks are free. They cost one character and buy a large amount of readability. There is no reason to write a wall of text.
- Hashtags count. Thirty Instagram hashtags can eat 400 characters of your caption. That is fine at 2,200, and fatal at 500 on Threads.
Media limits, since they constrain copy too
| Platform | Images per post | Via the publishing API |
|---|---|---|
| Instagram carousel | Up to 20 in the app | Up to 10 items |
| X | Up to 4 images | Up to 4 images |
| Threads | Single image or carousel | Carousel supported |
What to do with these numbers
- Write the first sentence as though it is the entire post. On Instagram, for most readers, it is.
- Put any offer, link instruction or number above the truncation point.
- Keep a shorter X version rather than truncating the long one. Cutting a 400-character post at 280 usually removes the payoff.
- Check the count before you paste, not after. Platforms silently reject or mangle overlong text in different ways.
Paste your caption into the free character counter to see all three limits and the truncation point at once.
Open the character counter →One caption, three lengths
The reason cross-posting the same text everywhere reads badly is arithmetic: 2,200, 500 and 280 are not the same essay at different sizes. They are three different posts.
That is why SocialAgent keeps a separate, editable version per platform on every draft, with its own character count, rather than one body it truncates. You write the idea once, then adapt the three versions — and editing any of them clears that version's approval so it comes back to your review queue instead of publishing unread.