必要な情報はすべて、不要な情報は一切なし
160文字と70文字の境界
メッセージがGSM 7ビットに収まる場合、1セグメントあたり160文字となります。ダッシュ(—)、ダブルクォーテーション("")、またはアラビア文字、中国語、絵文字などの文字を1つでも追加すると、メッセージ全体がUCS-2となり、1セグメントあたり70文字になります。GSM 1セグメントに収まっていた150文字のメッセージが、3つのUCS-2セグメントを必要とする150文字のメッセージになり、コストが3倍になります。大量送信を行う場合は、作成時に句読点をGSM-7 ASCII相当に正規化してください。
連結SMS(マルチパートSMS)
1セグメントを超えるメッセージはクライアント側で分割され、受信側の端末がUser Data Header (UDH)を使用してそれらを結合します。UDHで連結されたセグメントは、GSM-7の場合は153文字、UCS-2の場合は67文字となります。これは、UDH自体にセグメントあたり3バイトが消費されるためです。ほとんどのアグリゲーターはメッセージ単位ではなくセグメント単位で課金するため、320文字のGSM-7メッセージは3セグメントとして課金されます。
UCS-2を意図的に使用すべきケース
アラビア語、中国語、日本語、韓国語、キリル文字、または絵文字を含むコンテンツの場合は常に適用されます。また、GSM-7拡張に含まれないダイアクリティカルマークを持つ欧州言語(ポーランド語のł、チェコ語のř、ベトナム語のăなど)の場合も常に適用されます。中東・北アフリカにおけるアラビア語のSMSは、実質的に100% UCS-2です。予算計画にはご注意ください(アラビア語のOTPメッセージは通常2セグメント消費します)。
8ビットオプション(使用例は稀)
SMPPはバイナリデータ用に8ビットの生バイナリエンコーディングにも対応しています。これはOTAによるSIMコマンド、着信メロディの配信(1990年代)、ごく限られたM2M用途で使われるもので、商用のA2Pトラフィックで見かけることはほとんどありません。