SMS Segment Budget Reviewer
Inspect GSM-7 or strict BMP UCS-2 character costs and segment boundaries under an explicit concatenation-header profile.
Loading tool…
How to use SMS Segment Budget Reviewer
Review a draft message before choosing a sending service. The report distinguishes GSM extension characters from single-septet characters and preserves complete character boundaries across segments. Its declared header assumptions make the length budget traceable, while keeping carrier prices, delivery behavior and unsupported emoji transport outside the result.
- Paste a message without changing its punctuation or newline spelling.
- Choose automatic GSM/BMP selection or an explicit encoding, and choose the assumed concatenation reference size.
- Inspect exact segment spans, costs and remaining capacity; verify the sending provider’s actual policy separately.
Good to know
- At most 10,000 well-formed UTF-16 characters and 255 output segments. Empty input produces zero segments. No text normalization, newline replacement, smart punctuation substitution or sending occurs.
- GSM-7 uses the pinned default alphabet and its selected extension characters; extensions cost two septets and are never split across parts. Literal ESC is not an independent message character in this profile. National-language shift tables, compression and application-port headers are unsupported.
- Single-part limits are 160 septets or 70 BMP characters. Multipart assumes only a 6-byte 8-bit-reference or 7-byte 16-bit-reference user-data header, giving 153/152 GSM septets or 67/66 BMP characters. Greedy character boundaries may leave unused capacity.
- UCS-2 here means BMP scalar characters only; non-BMP characters such as many emoji are refused. No carrier UTF-16/surrogate policy, PDU bytes, price, deliverability or guaranteed billed segment count is inferred. Combining sequences can span segments because encoding units are not graphemes.
- Processing is local. Output is limited to 1,000,000 text characters unless a stricter file limit is stated.
Common questions
Why can an extension character make a part end with unused space?
It needs an escape plus its extension code. The tool keeps that pair together, so a part with one remaining septet cannot take the character. The next part begins with the complete pair.
Is this input sent to a server?
No. The application processes this input inside your browser tab and does not save it to persistent storage.
Keep going with related tools
All text →Character Counter
Measure visible characters, Unicode code points, UTF-16 length, and UTF-8 bytes without uploading text.
TextUnicode Code Point Converter
Convert text to U+ values or Unicode escape notation and decode valid scalar-value tokens back to text.
TextInvisible Character Detector
Locate control, format, unusual space, joiner, and variation-selector code points without deleting them.