Instagram Caption Counter

Check your caption live against Instagram's 2,200-character cap as of mid-2026 — and write your first ~125 characters like they're the only ones anyone will see, because in the feed, they are.

2,200 of 2,200 remaining

0 Characters
0 Words
0 Paragraphs

One cap, two limits

As of mid-2026, Instagram caps a caption at 2,200 characters. That figure is a product decision, not a standard: this page states it as of that date, and when Instagram changes it, the copy and the preset in the checker above are updated together. The 2,200 cap is the hard wall this checker models — every code point you type is counted against it, and the bar and the remaining figure track that count live.

The second limit is the one a caption meets first: the feed's ~125-character fold, where the caption stops and "…more" takes over. The fold is not a cap. Nothing is rejected at it, and nothing is counted differently because of it — it decides how much of the caption a reader sees without tapping. The cap and the fold are separate briefs, and the checker treats them differently: the cap is modeled, the fold is described. That distinction has its own guide, Truncation and folds: what the checker cannot see, which covers the Instagram fold alongside the other display cuts this site describes without simulating.

What the checker counts

The count on this page is a count of Unicode code points — the convention most platforms document for their caps, and the one the methodology page commits to. In practice: a letter is one, a space is one, a line break is one, and an emoji is usually one. Kiln day 🔥 reads 10 here — the text plus a flame that counts as a single code point, even though the same string occupies 11 UTF-16 units in JavaScript's internal representation. A counter that counts UTF-16 units instead of code points would report it 1 higher, which is the first thing to check when two tools disagree about an emoji-bearing caption.

The known wrinkle is multi-part emoji. A family emoji such as 👨‍👩‍👧 is a single visible glyph assembled from several code points joined by invisible joiners, and this checker reports the code points: on its own it reads 5, not one. Platforms themselves disagree on how to count such sequences, which is one reason the final authority on a borderline draft is always Instagram's own composer. Invisible characters follow the same logic. A zero-width space is a code point with no width: Kilnday is 7 code points, and the same word with a zero-width space inserted between its syllables reads 8. If a count here looks one or two higher than what you can see, an invisible character is the first thing to suspect.

Line breaks deserve their own line. Captions are routinely laid out as short paragraphs separated by blank lines, and every one of those breaks is counted. The four-paragraph sample caption used in the worked examples below reads 338 code points with its blank lines in place and 335 with the same words run together on one line — a difference of 3, because a blank line is 2 line-feed characters where the run-together version spends a single space. The Paragraphs stat card above counts those blank-line-separated blocks, so the two numbers move together as you format.

Worked examples at the 2,200 cap

Every number in this section is computed when the page is built, by the same engine that runs in the checker, on the sample strings shown — so you can paste any of them into the box above and watch the same figures appear.

A hook on its own. Three things we changed in the shop this month, and the one we are keeping for good. is 84 code points, leaving 2,116 of the cap unused. Against 2,200, a hook of any sensible length is a rounding error. Whether it clears the feed's fold is a separate question the checker does not answer — see the fold section below.

A structured caption. Follow that hook with three short paragraphs — a change of layout, a verdict, and a pointer to a pinned post — separated by blank lines:

Three things we changed in the shop this month, and the one we are keeping for good.

We moved the kiln to the back wall, swapped the glaze shelf for open racks, and started firing on Tuesdays instead of Fridays.

The Tuesday firing stays. Everything else is still on trial.

Studio hours and the new pickup window are in the pinned post.

The whole caption reads 338 code points, with 1,862 remaining. Four paragraphs of ordinary caption use well under a fifth of the cap.

A hashtag block. #ceramics #stoneware #kilnday #handthrown #studiolife #glazechemistry #smallbatch #madebyhand — 8 tags with their separating spaces — is 93 code points. Appended to the structured caption after a blank line, the combined draft reads 433, with 1,767 remaining. Tags count exactly like any other text here: the hash sign, every letter, and every space between tags is a code point.

Crossing the cap. Paste the four-paragraph sample six times, blank lines between copies, and the checker reads 2,038 — still 162 under the cap. A seventh copy takes it to 2,378: the readout switches from "162 of 2,200 remaining" to "178 over the 2,200 limit", and the bar changes state. That is the entire behavior of the cap in this checker: the count is a count, the limit is subtracted, and the verdict is whether the count exceeds the limit — not whether it reaches it. The seven-copy draft cut back to exactly 2,200 code points reads "0 of 2,200 remaining", not over.

The "…more" fold: described, not modeled

Instagram's ~125-character feed fold is the one platform behavior on this page that the checker deliberately does not simulate. The methodology page draws the line in the same place for every tool on this site: a rule is modeled when it can be computed from the text alone, and described when simulating it would require guessing at display behavior that cannot be verified from outside the platform. The fold is display behavior that varies slightly by device, and nothing about it lives in the text itself. So there is no second bar and no marker at character ~125 — drawing one would claim a precision the checker does not have.

What the page can do is state which direction the fold skews the count you see here. It does not change the count at all: a caption that reads 338 on this page is 338 code points whether or not the feed folds it. What it changes is how much of that count a reader meets without tapping. Because the remaining figure is measured against 2,200, it can only ever be more generous than the feed, never stricter: the structured caption above sits at 1,862 remaining, comfortably inside the cap, while much of it sits below the "…more" fold — how much is exactly what this page does not mark. If the opening of a caption has to be read without a tap, write it to that purpose, paste the finished caption into the app, and look at where it actually folds. The truncation and folds guide explains why the same policy applies to the other display cuts this site describes.

Reading a borderline draft

Near the cap, read the remaining figure as a code-point margin and nothing more. For plain text — letters, digits, spaces, line breaks, and single-code-point emoji — a margin of a few characters is a real margin, because those all count one apiece here and in the convention most platforms document for their caps. Where the margin becomes uncertain is in exactly the sequences platforms disagree on: a joined emoji that reads 5 here may be counted differently by the composer, and an invisible character that reads 1 here cannot be judged by eye at all. If a draft is within a handful of code points of 2,200 and contains either, the checker's verdict is a drafting aid and the composer's is the ruling. Trim until the margin is wider than the uncertainty, or make the final check in the app.

Going over, by contrast, is unambiguous on this page: the readout switches from "remaining" to "over the 2,200 limit", the bar changes state, and the over figure is the number of code points to remove. What Instagram does with an over-length caption is Instagram's decision and is not described here; the checker's job is to keep you from finding out.

Common misreadings

Reading the remaining figure as the visible budget. It is the budget to the cap. The fold comes far earlier and is not marked, for the reasons above.

Assuming an emoji is one everywhere. Most are one code point here — 🎉 reads 1 — but joined sequences are several, and platforms count them differently. Budget a little headroom for a caption built from them.

Expecting the curly-apostrophe trap. On the SMS checker, a curly apostrophe pasted from a word processor is the classic silent flip: We're open late on Tuesdays. is GSM-7, and We’re open late on Tuesdays., identical but for the apostrophe, is UCS-2, so the whole message is suddenly measured against a 70-unit segment instead of 160. That trap does not exist on this page. Both sentences read 28 code points here, because a code-point count has no alphabet to fall out of. If you draft SMS and captions from the same text, remember which checker you are on: the apostrophe that is harmless against 2,200 code points is what drops an SMS from the 160 budget to the 70.

Forgetting that formatting is characters. Blank lines, the spaces inside a hashtag block, and the line break before it are all code points, as the examples above show. A caption that looks short can read longer than expected purely from layout.

Trusting a third-party count for a consequential post. Including this one. Platform caps are product decisions; this page states the 2,200 cap as of mid-2026 and is updated when it moves, but for a campaign caption the composer is the final word. The guides cover the counting rules in more depth, starting with truncation and folds.

Frequently asked questions

What is Instagram’s caption limit?

As of mid-2026, a caption caps at 2,200 characters, which this checker counts in Unicode code points. The cap is a product decision rather than a standard: this page states it as of that date, and when Instagram changes it, the copy and the preset are updated. The feed’s ~125-character “…more” fold is a separate display limit that the page describes but does not model.

What should go before the "…more" fold?

Whatever has to be read without a tap. The feed shows the first ~125 characters of a caption before "…more", so anything every reader must see belongs in that opening; context, credits, and hashtags can follow it. The checker cannot mark where the fold falls — paste the finished caption into the app to see it.

Do emoji and line breaks count?

Yes. Every code point counts toward 2,200: most emoji are one (🎉 reads 1), a joined family emoji is several (👨‍👩‍👧 reads 5), and each line-feed character is one, so a blank line between paragraphs costs 2.

Why does my count differ from Instagram’s?

Platforms disagree on how to count joined emoji sequences, and pasted text can carry invisible characters you cannot see but the checker can. This page reports Unicode code points; Instagram’s composer applies its own rules. For a borderline draft, treat the count here as a drafting aid and the composer as the final authority.

Does the checker show where "…more" cuts the caption?

No, deliberately. The fold is display behavior that varies slightly by device, so simulating it would mean guessing. The page describes it and states the direction of the skew — the remaining figure here is measured against the cap, never against the fold — and the guide "Truncation and folds: what the checker cannot see" sets out the reasoning.

What happens if I go over 2,200?

The readout switches from "remaining" to "over" and the bar changes state. Pasting the four-paragraph sample caption from the worked examples seven times reads 2,378 code points, and the checker reports "178 over the 2,200 limit"; six copies read 2,038, with 162 remaining. Trim until the readout returns to "remaining": a draft of exactly 2,200 code points still reads "0 of 2,200 remaining", not over. What Instagram does with an over-length caption is not described here.

Does the same limit apply to bios, comments, or Reels?

This page checks one field — the post caption — against its published 2,200 cap as of mid-2026. Other Instagram fields have their own limits, and this site does not guess at figures it has not verified. The landing-page presets cover only the caps this site documents, so no other field can be checked here.

Is my caption sent anywhere?

No. Counting runs in your browser; there is no server-side counting endpoint, which you can confirm in the network tab while typing. Nothing you type is transmitted or stored.

Counting is in Unicode code points; platform display behavior (the "…more" fold) varies slightly by device. Nothing you type is transmitted or stored. See the methodology page.