Instagram Character Counter
Paste a caption or bio and see characters, words, emoji, hashtags, mentions and line breaks counted live against the 2,200-character caption limit. Switch fields to check TikTok, LinkedIn, Facebook, YouTube, Pinterest, Threads and Bluesky too.
Limits last verified 2026-09-27
Posting to X? X weights links, emoji and CJK text differently, so it has its own tool: Twitter character counter.
0 / 2,200 characters
2,200 remaining
Counted in characters (UTF-16 code units). Same text in other units: 0 UTF-16 units · 0 graphemes · 0 UTF-8 bytes.
0
Characters
0
Graphemes
0
Words
0
Sentences
0
Emoji
0
Hashtags
0
Mentions
0
Line breaks
Preview: what shows before "more"
Meta's ads guidance: 125 characters of primary text. Not an organic cut-off. Where the organic caption folds depends on your line breaks and the device.
About the Instagram caption limit
- Limit: 2,200 characters (From the platform's own documentation).
- How it is counted: The platform does not publish how it counts. Outfeed's publisher counts these posts in UTF-16 code units (JavaScript string length) — conservative for emoji, which usually count 2.
- Instagram does not publish where the caption is cut with '... more'. Meta's ads guide recommends 125 characters of primary text for feed and Story ads; treat any organic cut-off figure as community-tested.
- Outfeed: Outfeed's publisher refuses an Instagram caption over 2,200 characters, counted in UTF-16 code units.
- Source: Instagram Graph API: IG User Media.
Runs in your browser. Nothing you type is uploaded; your draft is kept only on this device.
How does this Instagram character counter count?
It counts Instagram text in UTF-16 code units, the same unit Outfeed's publisher uses when it checks a caption before sending it to Instagram. Instagram does not publish how it counts, and UTF-16 is the conservative choice for emoji: an emoji never costs less here than it would under a count of what you see on screen.
Next to that number the tool shows the grapheme count, meaning what a reader sees as one character, measured with your browser's built-in text segmenter. The two agree for plain text and split apart on emoji. If your browser has no segmenter, the tool falls back to counting code points and tells you so. Words, sentences, emoji, hashtags, mentions and line breaks are counted alongside, so it doubles as an IG caption counter and an Instagram word counter in one box.
Which Instagram limits does this counter check?
Two, both with a number Instagram itself publishes. The caption allows 2,200 characters: that is the figure in Instagram's publishing API documentation, and Outfeed's publisher refuses an Instagram caption over 2,200 characters, counted in UTF-16 code units. The bio allows 150 characters, per Instagram Help. Instagram does not say how the bio is counted, so treat that limit as approximate when your bio contains emoji or styled letters.
Short on ideas rather than space? The Instagram bio generator writes ready-to-paste bios with a live counter, and the TikTok bio generator does the same for TikTok profiles. If you post video too, our guide to how long a video can be on Instagram covers the length limits for Reels, Stories and feed video.
Do emojis count as two characters on Instagram?
Most emoji take 2 UTF-16 units, but not all, and Instagram publishes no counting method, so "an emoji counts as two" is a rule of thumb rather than a fact. Here is what common emoji cost in the unit this counter uses:
- A thumbs-up: 2 units, 1 grapheme.
- A red heart (heart plus an emoji-style selector): 2 units.
- A thumbs-up with a skin tone: 4 units.
- A country flag: 4 units.
- A family emoji, built from four people joined by invisible joiners: 11 units, still 1 grapheme.
In practice, a caption of nothing but plain thumbs-up emoji fills the 2,200 limit at 1,100 emoji. The counter lists every emoji in your text that costs more than 2 units, so you can see exactly where the space went.
Styled "fancy font" letters behave the same way: most bold and italic Unicode letters cost 2 units each, and screen readers often cannot read them. The tool flags them, and our Unicode text converter shows what each style costs before you paste it in.
Where does Instagram cut a caption with "more"?
Instagram does not publish it. The figure most counters quote comes from Meta's ads guide, which recommends 125 characters of primary text for feed and Story ads. That is advertising guidance, not a documented organic cut-off, and in practice the fold also depends on your line breaks and the reader's screen. The preview in the tool marks the 125-character point as ads guidance (you can switch it off) and tells you how long your first line is, because that is what people read before deciding to tap.
The only platform in this tool that publishes a visible-before-truncation figure is Pinterest: the first 40 characters of a Pin title may show in feeds, depending on the device. The Pin title field shows that marker inline.
Do hashtags, spaces and new lines count toward the limit?
Yes. Every hashtag, space and line break is text, so each one counts as characters toward the caption limit. The tool shows your count with and without hashtags so you can see what they are costing. How many hashtags Instagram allows on a post is a separate rule from the character count, and it has changed; our Instagram hashtag limit guide has the current number.
Line breaks count as one character each (a Windows-style break is normalised to one). If Instagram is collapsing your spacing, the Instagram line break generator keeps paragraph gaps intact when you paste.
What are the limits on TikTok, LinkedIn, Facebook, YouTube, Pinterest, Threads and Bluesky?
The same text field character counter covers every field below. Each platform counts in its own unit: Bluesky counts graphemes, so any emoji is 1; YouTube caps descriptions in UTF-8 bytes, where a plain emoji costs 4; the rest are counted in UTF-16 units.
| Platform | Field | Limit | Counted in | Limit source |
|---|---|---|---|---|
| Caption | 2,200 | UTF-16 units method: outfeed's publisher | Platform docs | |
| Bio | 150 | UTF-16 units method: not verified | Platform docs | |
| TikTok | Video caption | 2,200 | UTF-16 units method: platform docs | Platform docs |
| TikTok | Bio | Not published | - | Not verified |
| Post text | 3,000 | UTF-16 units method: outfeed's publisher | Platform docs | |
| Profile headline | 220 | UTF-16 units method: not verified | Widely reported | |
| Profile About section | 2,600 | UTF-16 units method: not verified | Widely reported | |
| Comment | 1,250 | UTF-16 units method: not verified | Widely reported | |
| Page post text | 63,206 | UTF-16 units method: outfeed's publisher | Outfeed's publisher | |
| Threads | Post text | 500 | UTF-16 units method: outfeed's publisher | Platform docs |
| YouTube | Video title | 100 | UTF-16 units method: outfeed's publisher | Platform docs |
| YouTube | Video description | 5,000 | UTF-8 bytes method: platform docs | Platform docs |
| YouTube | Video tags (combined) | 500 | UTF-16 units method: not verified | Platform docs |
| Pin title | 100 | UTF-16 units method: not verified | Platform docs | |
| Pin description | 800 | UTF-16 units method: not verified | Platform docs | |
| Pin alt text | 500 | UTF-16 units method: not verified | Platform docs | |
| Profile bio (About) | 500 | UTF-16 units method: not verified | Platform docs | |
| Bluesky | Post text | 300 | Graphemes method: platform docs | Platform docs |
| Bluesky | Profile description (bio) | 256 | Graphemes method: platform docs | Platform docs |
| Bluesky | Display name | 64 | Graphemes method: platform docs | Platform docs |
"Platform docs" means the platform's own help or API documentation. "Widely reported" means the platform does not publish the figure. Enforced by Outfeed's publishing code: the Facebook Page post limit of 63,206 is the one Outfeed enforces, not a figure Meta publishes. TikTok's 2,200 is the API caption limit schedulers publish through; the in-app limit is reported to be higher but TikTok does not state it. TikTok publishes no bio limit and reports vary. Outfeed's publisher currently refuses a Pinterest description over 500 characters — stricter than Pinterest's 800. Limits last verified 2026-09-27.
Three fields have their own deep dives. For LinkedIn, including the see-more cut-off on posts, see our LinkedIn post character limit guide. For YouTube titles (100 characters, with no < or > allowed), the YouTube title checker scores a title for length and click appeal. Bluesky's 300-grapheme post limit is the one place an emoji really is one character. The YouTube description cap is 5,000 bytes, so a description full of accented or non-Latin text runs out well before 5,000 characters.
Writing for X? It weights links, emoji and CJK text differently from all of these, so it has its own Twitter character counter. For image and video dimensions on every platform, see the social media image sizes guide.
Write it once, fit it everywhere
Checking one caption against eight platforms by hand is where a scheduler earns its keep. Outfeed AI is a chat-first AI social media manager: you describe the post, it writes it in your brand voice, shows a preview for each platform and publishes to Instagram, TikTok, LinkedIn, X, Facebook, Threads, YouTube, Pinterest and Bluesky. Its publisher applies most of these limits in code before anything is sent, counting Instagram, LinkedIn, Facebook and Threads text in UTF-16 units and Bluesky text in graphemes, as this tool does. Some fields it truncates rather than refuses, such as TikTok captions and YouTube descriptions, and its Pinterest description cap is currently lower than Pinterest's own.
Frequently Asked Questions
Is this Instagram character counter free, and is my text private?
Yes to both. There is no signup, and the counting runs entirely in your browser, so nothing you type is uploaded or logged. Your draft is saved only in your own browser so it is still there if you close the tab; press Clear to remove it.
Why does this counter show a different number from another tool?
Because "character" means different things. Some counters count what you see (graphemes), where any emoji is 1. This counter checks Instagram in UTF-16 code units, the unit Outfeed's publisher enforces, where a plain emoji is 2 and a family emoji is 11. It shows the grapheme count next to it so you can see both.
What caption limit applies when you schedule an Instagram post?
Schedulers publish through Instagram's publishing API, which documents the caption as a maximum of 2,200 characters, so plan to that figure. Outfeed's publisher refuses an Instagram caption over 2,200 characters, counted in UTF-16 code units. This counter checks the caption in that same UTF-16 count.
Do bold or italic 'fancy font' letters count as more than one character?
Usually, yes. Styled letters from font generators are separate Unicode symbols, and most of the bold, italic and script styles sit outside the basic plane, so each one costs 2 UTF-16 units where a plain letter cost 1. The counter flags styled text and shows how many extra units it is costing.
Stop counting. Start posting.
Write, preview, schedule and publish to 9 platforms by chatting.
Try Outfeed AI Free