Instagram DM Character Counter
Paste a message to see its characters and its UTF-8 bytes against Meta’s 1,000-byte limit. Emoji included, which is where most counters get it wrong.
Paste a message and this counts it the way a person reads it — emoji as one character each. If you are checking a message you plan to send automatically when someone comments, the mechanism behind that is in the Instagram DM automation guide.
Your result will appear here.
How to count characters in an Instagram DM
- Paste or type your message into the box above.
- Read “Characters” for the length a person sees, and “UTF-8 bytes” for what Meta’s 1,000-byte limit counts.
- If the bytes go over 1,000, shorten the message or remove some emoji.
- Keep an automated first message short enough that any link is visible without expanding it.
The Instagram DM limit is 1,000 bytes, not characters
Meta’s Send Messages documentation says: “Message text must be UTF-8 and be a 1000 bytes or less.” Bytes and characters only match for plain English. An accented letter takes 2 bytes, a Hindi or Thai letter 3, and most emoji 4; skin-tone, flag and family emoji take 8 or more. That’s why third-party pages quote different character limits, such as 1,000 or 2,000: the number of characters that fit depends on what you type. For every other number Meta publishes, such as the API rate limits, the 24-hour window and the 7-day reply rule, see our Instagram DM limits reference.
FAQ
How does this count emoji?
As one character each, which is what a person sees. A single emoji is often two UTF-16 units in JavaScript, and a family emoji can be seven or more — this counter uses grapheme segmentation so “👨👩👧” counts as 1, not 7.
What is the character limit for an Instagram DM?
Meta’s Send Messages documentation limits message text to 1,000 bytes of UTF-8. Plain English letters take 1 byte, so about 1,000 characters fit. Emoji take 4 bytes or more, and Hindi or Thai letters take 3, so fewer characters fit when a message uses them.
Why show characters and bytes?
“Characters” is what a person counts: one emoji is one character. “UTF-8 bytes” is what Meta’s limit counts: that same emoji is 4 bytes or more. A message can look short and still go over 1,000 bytes if it’s full of emoji, so the counter shows both.
Does the character limit differ for automated DMs?
The 1,000-byte limit is in Meta’s Messaging API, which is how automation tools send DMs. Meta doesn’t document a separate limit for DMs typed by hand. Automation also adds a per-comment rule, one private reply, and API rate limits, all in our Instagram DM limits reference.
How long can an Instagram caption or bio be?
Those have their own limits — captions allow up to 2,200 characters, and the bio is shorter. This counter is built for DMs, but the grapheme logic is identical, so it works for caption and bio text too.
Does this store my message?
No. It runs entirely in your browser. Nothing you type is sent anywhere or saved.
Go deeper
Sources
- Meta — Send Messages (message text: UTF-8, 1,000 bytes or less) — checked 2026-10-22