Everything worth knowing, nothing that isn't.
The 160 vs 70 cliff
If your message fits in GSM 7-bit, you get 160 characters per segment. If you add a single em-dash (—), curly quote (""), or any Arabic / Chinese / emoji character, the whole message becomes UCS-2 and you get 70 characters per segment. A 150-character message that fits in one GSM segment becomes a 150-character message that needs 3 UCS-2 segments — tripling your cost. For high-volume sends, normalise punctuation to GSM-7 ASCII equivalents at composition time.
Concatenation (multipart SMS)
Messages longer than one segment are split client-side and stitched together by the recipient handset using the User Data Header (UDH). UDH-concatenated segments are 153 chars (GSM-7) or 67 chars (UCS-2) — three bytes per segment are consumed by the UDH itself. Most aggregators bill per segment, not per message — a 320-char GSM-7 message is billed as 3 segments.
When to deliberately use UCS-2
Always for Arabic, Chinese, Japanese, Korean, Cyrillic, or emoji content. Always for European languages with diacritics not in the GSM-7 extension (Polish ł, Czech ř, Vietnamese ă). Arabic-language SMS in MENA is essentially 100% UCS-2 — budget accordingly (Arabic OTP messages typically run 2 segments).
The 8-bit option (rarely used)
SMPP also supports raw 8-bit binary encoding for binary data — used for OTA SIM commands, ringtone delivery (1990s), and very niche M2M scenarios. Almost never seen in commercial A2P A2P traffic.