Every messaging platform has different limits. Here's a complete reference, plus the technical reasons for each limit.
| Platform | Limit per message | Note |
|---|---|---|
| SMS (GSM-7) | 160 characters | Basic Latin alphabet only |
| SMS (UCS-2) | 70 characters | If any non-Latin or emoji |
| SMS, multi-part | 153 (GSM-7) or 67 (UCS-2) per part | Phones join the parts; each part is usually billed as one SMS |
| MMS | Set by each carrier | No single published text limit |
| iMessage | No published limit | Apple doesn't document one; falls back to SMS if the recipient isn't on iMessage |
| No published limit | WhatsApp doesn't document one; very long messages may not send | |
| Telegram | 4,096 characters | Plus 1,024 for captions |
| Discord | 2,000 characters | 4,000 for Nitro subscribers |
| Slack | 40,000 characters | Longer messages are truncated (Slack API docs) |
| X (Twitter) free | 280 characters | Per post |
| X Premium | 25,000 characters | Long posts (X Help Center) |
| Instagram caption | 2,200 characters | Up to 30 hashtags and 20 @ tags (Meta docs) |
| Instagram bio | 150 characters | Instagram Help Center |
| Email subject | No fixed limit | RFC 5322 recommends header lines of 78 characters or fewer; longer subjects are folded onto extra lines |
| Email body | No hard limit (~10 MB) | Provider-dependent |
Friedhelm Hillebrand, a German engineer, set the 160-character limit in 1985 by typing random sentences on a typewriter and counting characters. He noticed most messages fit in 160 chars. The limit was then baked into the GSM standard. Forty years later, every SMS in the world still respects that limit.
SMS uses 7-bit encoding (GSM-7) for basic Latin characters — 1,120 bits ÷ 7 = 160 chars. For non-Latin alphabets (Cyrillic, Arabic, Chinese) or emojis, SMS switches to 16-bit UCS-2 encoding — 1,120 bits ÷ 16 = 70 chars. So one emoji can drop your effective SMS limit from 160 to 70.
When your message exceeds 160 chars (or 70 for UCS-2), the carrier splits it. Each part is technically a separate SMS and may be billed separately.
No fixed daily limit, but high-volume sending to non-contacts gets flagged. Business API accounts have explicit per-day limits.
Yes — every character counts, including spaces, newlines, and emojis. Complex emojis (with zero-width joiners) often count as multiple characters.
A single SMS is limited to 160 characters using standard GSM encoding. Longer texts are split into segments (about 153 characters each once concatenation overhead is added) and reassembled by the recipient's phone. Using emoji or special characters switches the message to Unicode encoding, which drops the per-segment limit to about 70 characters.
We only list figures the platform itself documents (or the 3GPP standard, for SMS); rows link to the source where the platform isn't covered on our limits page.
Chat apps are far more generous than SMS. WhatsApp doesn't publish a limit (see our sourced limits); Telegram allows 4,096; Discord 2,000 (4,000 with Nitro); Instagram captions 2,200 (Meta) and bios 150 (Instagram); and X posts 280 (25,000 with Premium). The live counter in the repeater shows your output length so you can size it to the target.
Many emoji are two or more UTF-16 code units, and some are several combined, so a single emoji can count as 2+ toward a limit. That is why an emoji-heavy message hits a cap sooner than a plain one — watch the counter when you are close.
To check a message before you send it, paste it into a character counter. If a repeated message is too long for one post, the text repeater’s Split for option cuts it into Telegram-, Discord-, X- or SMS-sized parts, using each platform’s published limit. See message length limits with sources for the exact figures and where they come from.