Tek bir SMS, GSM-7 ile kodlandığında 160 karakter, UCS-2 ile kodlandığında 70 karakterdir. Hangi kodlamanın seçildiğine operatör otomatik olarak mesajın içeriğine göre karar verir. Her karakter GSM-7 varsayılan alfabesindeyse 160 karakter kullanırsınız. Tek bir karakter bu alfabenin dışındaysa mesajın tamamı UCS-2 olarak yeniden kodlanır ve limit 70'e düşer.
Hızlı Cevap: SMS Limitleri
| Senaryo | Limit | Notlar |
|---|---|---|
| Tek SMS, GSM-7 | 160 | Düz Latin metin, emoji ve akıllı tırnak yok |
| Tek SMS, UCS-2 | 70 | Türkçe karakter veya emoji bunu zorlar |
| Birleşik segment, GSM-7 | 153 | UDH segment başına 7 karakter yer kaplar |
| Birleşik segment, UCS-2 | 67 | UDH segment başına 3 karakter yer kaplar |
| iMessage / RCS / WhatsApp | 20.000+ | SMS değil, farklı kurallar |
GSM-7 Kodlaması (160 Karakter)
GSM-7, GSM 03.38 standardında tanımlanan varsayılan SMS kodlamasıdır. Karakter başına 7 bit paketler; bu sayede 1.120 bitlik (140 baytlık) SMS yüküne 160 karakter sığar. Alfabe 128 temel karakter artı 10 karakterlik bir uzantı tablosu içerir. Bu 138 karakterin dışındaki her şey UCS-2'ye geçişi tetikler.
Temel alfabe; aksansız Latin harfleri (A-Z, a-z), 0-9 rakamları, yaygın noktalama, boşluk, çoğu Avrupa aksanlı harfi (à, è, ì, ò, ù, é, ñ, Ç, ä, ö, ü, Ä, Ö, Ü gibi) ve birkaç sembolü (£, ¥, §, ¿, ¡) kapsar. Uzantı karakterleri { } [ ] | \ ~ ^ ve euro işareti her biri 2 karakter sayılır.
Türkçe Karakterler ve UCS-2 Tuzağı
Türkçe SMS için kritik nokta
Türkçe karakterler ş, ç, ğ, ı, İ GSM-7 varsayılan alfabesinde yer almaz. Tek bir Türkçe karakter, mesajın tamamını UCS-2'ye düşürür ve sınır 70'e iner. Aksansız yazmak veya stratejik kısaltma yapmak segment başına 2-3 kat ücretten kaçınmanın tek yoludur.
UCS-2 16 bit (2 baytlık) Unicode kodlamasıdır. Aynı 140 baytlık SMS yüküne segment başına 70 UCS-2 birimi veya birleşik gönderimde 67 birim sığar. Kısmi dönüşüm yoktur: tek karakter mesajın tamamını çevirir.
Birleşik SMS: 153 / 67 Karakter Neden?
Mesaj tek SMS limitini aştığında segmentlere bölünür ve her segment ayrı bir SMS olarak gönderilir. Telefonun parçaları doğru sırayla birleştirebilmesi için her segment bir Kullanıcı Veri Başlığı (UDH) taşır: referans numarası, toplam segment sayısı ve segmentin sırası. UDH 6 bayttır. GSM-7'de yaklaşık 7 karakterlik yük yer kaplar (160 → 153). UCS-2'de aynı 6 bayt 3 birimdir (70 → 67).
Hızlı segment matematiği
- 200 karakter, sadece GSM-7: 200 > 160, birleşik. ceil(200 / 153) = 2 segment
- 71 karakter, emoji içerir: UCS-2'ye zorlanır, 71 > 70. ceil(71 / 67) = 2 segment
- 320 karakter, düz ASCII: ceil(320 / 153) = 3 segment
- 100 karakter, bir Türkçe karakter: UCS-2'ye düşer, 100 > 70. ceil(100 / 67) = 2 segment
Çok Segmentli SMS'in Gerçek Maliyeti
Neredeyse her ticari SMS API mesaj başına değil segment başına ücretlendirir. Toplam maliyet = mesaj başına segment × alıcı × segment ücreti. Tuzak şu: akıllı tırnaklarla yazılmış bir kampanya sessizce segment sayısını ikiye katlar ve faturasını ikiye katlar. Twilio ABD oranlarında 100.000 alıcıya 200 karakterlik tamamen GSM-7 promosyon 2 × 100.000 × 0,0079 = 1.580 ABD doları; aynı metin iki akıllı tırnakla UCS-2'ye düşerse ceil(200 / 67) = 3 segment = 2.370 ABD doları olur.
UCS-2'yi Zorlayan Karakterler
- Türkçe karakterler: ş, ç, ğ, ı, İ. Bu beş karakter Türkçe yazımın temelidir ve GSM-7'de yer almaz.
- Akıllı tırnaklar: Word ve macOS düz tırnakları otomatik olarak kıvrık olanlarla (' ' " ") değiştirir; dördü de UCS-2'yi zorlar.
- Uzun tire ve kısa tire: Uzun tire ve kısa tire UCS-2'yi tetikler. ASCII tire kullanın.
- Üç nokta karakteri: Tek karakterli üç nokta UCS-2'dir. Üç ayrı ASCII nokta GSM-7'dir.
- Tüm emoji: Her emoji UCS-2'yi zorlar ve çoğu 2 karakter yer kaplar.
SMS Maliyetini Düşürme Yolları
- Aksansız yazın. Mümkünse Türkçe karakterleri ASCII karşılıklarıyla değiştirin (s, c, g, i, I). Anlam korunuyorsa segment maliyetini yarıya indirir.
- Düz ASCII kullanın. Göndermeden önce akıllı tırnakları, süslü tireleri ve üç nokta karakterini temizleyin.
- Emojileri yalnızca tıklama getiriyorsa kullanın. Her emoji UCS-2'yi zorlar ve en az 2 karakter yer kaplar.
- Linkleri kısaltın. UTM parametreli çıplak bir URL tek başına 70+ karakter yiyebilir.
- Göndermeden önce sayın. Her kampanyayı, kodlamayı algılayan ve segmentleri gösteren bir sayaçtan geçirin.
SMS uzunluğunuzu ve segment sayınızı anlık olarak görmek için Karakter Sayacımızı kullanın.