Links in captions are not clickable. About the first 125 characters show before "more".
Free tool · no signup
Character counter and post preview for 13 social platforms
Paste a post once. See its length against each platform's limit, the hashtag count, where the "more" cut falls and a preview, for every platform ADpilot publishes to. Nothing leaves your browser.
Links are clickable and get a preview card. Short posts get read; the hard limit is rarely the problem.
Threads
0 / 500Links are clickable. Threads posts carry one topic tag rather than hashtags.
About the first 210 characters show before "see more". Links get a preview card.
This counts the pin description. The click-through link goes in the pin's own link field.
X
0 / 280Every link counts as 23 characters. Emoji and many non-Latin characters count as 2.
TikTok
0 / 2,200Links in captions are not clickable.
WordPress
0Blog posts have no practical length limit. The first 150 to 160 characters often become the search snippet.
Your own blog
0Blog posts have no practical length limit. The first 150 to 160 characters often become the search snippet.
Bluesky
0 / 300Bluesky counts graphemes: an emoji like a family or a flag counts as 1. Links count in full.
Mastodon
0 / 500Every link counts as 23 characters. 500 is the default; some servers allow more.
Telegram
0 / 4,096Text posts hold 4,096 characters; with a photo the caption stops at 1,024.
Discord
0 / 4,096ADpilot posts to Discord as an embed, whose description holds 4,096 characters.
Character limits by platform
The limits below are the ones ADpilot's own publishers write to. "Aim for" is the length ADpilot aims for when it writes a post, which is shorter than the limit because the first lines do the work.
| Platform | Limit | Aim for | Hashtags |
|---|---|---|---|
| 2,200 | 300 | Up to 3 | |
| 63,000 | 250 | Up to 3 | |
| Threads | 500 | 450 | None |
| 3,000 | 300 | Up to 5 | |
| 500 | 200 | None | |
| X | 280 | 200 | Up to 2 |
| TikTok | 2,200 | 300 | Up to 5 |
| WordPress | No practical limit | - | None |
| Your own blog | No practical limit | - | Up to 30 |
| Bluesky | 300 | - | None |
| Mastodon | 500 | - | Up to 5 |
| Telegram | 4,096 | - | Up to 5 |
| Discord | 4,096 | - | None |
How the counting works
Most counters count code units, the way a programming language stores text. People do not see code units, they see characters. A thumbs-up with a skin tone is two code points; a family emoji is seven. This counter counts what you see, using your browser's own text segmenter, and then applies each platform's own rule on top:
- X weighs characters. Latin letters, digits and common punctuation count 1; emoji and most other scripts count 2; every link counts 23, short or long. Over 280 and X refuses the post.
- Mastodon counts every link as 23 characters, like X, but counts every other character as 1. 500 is the default; a server can raise it.
- Bluesky counts graphemes, the characters you see, up to 300. Links count in full in the text, so long links eat the limit fast.
- Everyone else counts characters. This counter shows the visible count; a platform that counts code units may count an emoji as 2.
Where the "more" cut falls
The hard limit is rarely the problem. The fold is. Instagram shows roughly the first 125 characters before "more", LinkedIn roughly 210 on desktop before "see more". Everything after the fold is read only by people who already chose to tap. The preview cards for those platforms cut where the feed cuts, so you can see what most people will actually read.
Hashtags and links
Hashtags are counted wherever they stand. The cards show ADpilot's own working number per platform. On Threads, Bluesky and Pinterest hashtags do little, so the card flags them. Links are clickable on X, Facebook, LinkedIn, Threads, Bluesky, Mastodon, Telegram and Discord; on Instagram and TikTok captions they are plain text, so point people to your profile link instead.
Writing one post for 13 places
One text rarely fits everywhere: the 280 of X, the 300 of Bluesky and the 3,000 of LinkedIn ask for different posts. Write the long version for LinkedIn or Facebook, cut it to the hook for X and Bluesky, and move hashtags out of Threads. Each integration page lists what ADpilot publishes to that platform.
Questions
Straight answers.
How does X count characters?
X allows 280 characters, but not every character weighs the same. Every link counts as 23 characters whatever its length, and emoji plus many non-Latin characters (Chinese, Japanese, Korean) count as 2. This counter applies those rules for the X card.
Why does my emoji count as one character here but two somewhere else?
An emoji like a family or a flag is several code points joined together. People see one symbol, so this counter counts what you see (graphemes), like Bluesky does. X weights every emoji as 2, and some tools count the raw code units, which is why simple counters show bigger numbers.
What is the Instagram caption limit?
Instagram captions can be up to 2,200 characters, but only about the first 125 show before "more" in the feed. Put the point of the post first.
How many hashtags should I use?
The hashtag numbers in the cards are what ADpilot itself aims for per platform, not the hard platform maximum. Threads, Bluesky and Pinterest posts do without them.
Is my text sent anywhere?
No. The counter runs in your browser. Nothing you type is sent to ADpilot.
Are these limits current?
They are the limits ADpilot's publishers work with, checked on 2026-10-17. Platforms change them now and then; the notes on each card say what to watch.