Wenn Sie bemerkt haben, dass Ihre SMS-Kosten in die Höhe schießen, weil Ihr System aufgrund von Unicode ungewollt mehrere SMS sendet, ist die Frage, wie Sie dies stoppen können, wahrscheinlich die drängendste für Sie. Ein einziges versehentliches typografisches Anführungszeichen oder Emoji kann eine standardmäßige, kostengünstige SMS sofort in drei separat abgerechnete Segmente verwandeln und Ihr Marketing- und Betriebsbudget belasten.

Schritt 1: Verstehen, warum Unicode mehrere SMS-Segmente erzwingt

Um zu verhindern, dass Ihr SMS-Gateway einzelne Nachrichten in mehrere kostenpflichtige Segmente aufteilt, müssen Sie zunächst die zugrunde liegende technische Funktionsweise der SMS-Codierung verstehen. Traditionelle Telekommunikationsnetze verwenden zwei Hauptcodierungsstandards für Textnachrichten: GSM-7 und UCS-2 (Unicode).

Bei der Standard-GSM-7-Codierung kann ein einzelnes SMS-Segment bis zu 160 Zeichen enthalten. Dieser Zeichensatz umfasst lateinische Standardbuchstaben (A-Z, a-z), Zahlen (0-9) und einige gängige Satzzeichen. Sobald Ihre Nachricht jedoch auch nur ein einziges Zeichen außerhalb dieses Basissatzes enthält – wie ein typografisches Anführungszeichen (’), einen Buchstaben mit Akzent (á, é, ö) oder ein Emoji –, wechselt die Codierung der gesamten Nachricht automatisch zu UCS-2.

Wenn Ihre Nachricht auf die UCS-2-Unicode-Codierung umgestellt wird, sinkt das Zeichenlimit pro Segment von 160 Zeichen auf nur noch 70 Zeichen. Wenn Ihre Nachricht 140 Zeichen lang ist, passt sie problemlos in ein einziges GSM-7-Segment. Bei UCS-2 erfordern dieselben 140 Zeichen jedoch zwei separate Segmente. Traditionelle API-Anbieter wie Twilio, Vonage und MessageBird rechnen pro Segment ab, was bedeutet, dass sich Ihre Kosten für eine einzige Nachricht sofort verdoppeln oder verdreifachen.

CodierungsstandardMax. Zeichen (1 Segment)Max. Zeichen (Mehrere Segmente)Häufige Auslöser-Zeichen
GSM-7160 Zeichen153 Zeichen pro SegmentEnglische Standardbuchstaben, Zahlen, grundlegende Satzzeichen
UCS-2 (Unicode)70 Zeichen67 Zeichen pro SegmentEmojis, typografische Anführungszeichen (“, ”), nicht-lateinische Alphabete, Akzente (é, ñ)

Dieses Verhalten erklärt, warum Ihre Anwendung aufgrund von Unicode mehrere SMS sendet. Um dies zu beheben, müssen Sie entweder Ihre Eingabedaten streng bereinigen oder zu einer günstigen SMS-API wechseln, die Sie nicht für das Senden längerer, moderner Textnachrichten bestraft.

Schritt 2: Unicode-Zeichen im Code entfernen oder ersetzen

Die schnellste programmatische Möglichkeit, Unicode-Splits zu verhindern, besteht darin, den Inhalt Ihrer Nachricht zu bereinigen, bevor Sie ihn an Ihr SMS-Gateway senden. Sie können eine Hilfsfunktion in Ihrem Backend schreiben, um Nicht-GSM-7-Zeichen zu entfernen oder sie durch ihre am nächsten kommenden GSM-7-Entsprechungen zu ersetzen.

Hier sehen Sie, wie Sie dies in verschiedenen Programmiersprachen mithilfe einfacher Regex-Muster und String-Ersetzungsregeln implementieren können.

Python-Implementierung

In Python können Sie das Modul unicodedata verwenden, um Ihre Strings zu normalisieren, Akzente zu entfernen und typografische Anführungszeichen wieder in standardmäßige gerade Anführungszeichen umzuwandeln:

import unicodedata
import re

def clean_for_gsm7(text):
    # Replace common smart quotes and dashes
    replacements = {
        u'\u201c': '"', u'\u201d': '"',
        u'\u2018': "'", u'\u2019': "'",
        u'\u2013': '-', u'\u2014': '-'
    }
    for unicode_char, gsm_char in replacements.items():
        text = text.replace(unicode_char, gsm_char)
    
    # Normalize and strip accents
    normalized = unicodedata.normalize('NFKD', text)
    ascii_text = normalized.encode('ascii', 'ignore').decode('utf-8')
    
    # Remove any remaining non-GSM-7 characters
    gsm7_regex = re.compile(r'[^

 a-zA-Z0-9^{}\\[~]|€$@!"#%&'()*+,-./:;<=>?_]')
    cleaned_text = gsm7_regex.sub('', ascii_text)
    
    return cleaned_text

message = "Hello! Your appointment is scheduled for tomorrow at 3 PM. See you there! 😊"
print(clean_for_gsm7(message))
# Output: "Hello! Your appointment is scheduled for tomorrow at 3 PM. See you there! "

Node.js (JavaScript) Implementierung

Für JavaScript-Entwickler können Sie einen ähnlichen Ansatz mit regulären Ausdrücken verwenden, um alle Zeichen zu entfernen, die nicht dem GSM-7-Standard entsprechen:

function sanitizeToGSM7(text) {
    const smartReplacements = {
        '[“”]': '"',
        '[‘’]': "'",
        '–': '-',
        '—': '-'
    };

    let cleaned = text;
    for (const [pattern, replacement] of Object.entries(smartReplacements)) {
        cleaned = cleaned.replace(new RegExp(pattern, 'g'), replacement);
    }

    // Remove accents
    cleaned = cleaned.normalize('NFD').replace(/[̀-ͯ]/g, '');

    // Keep only GSM-7 compatible characters
    const gsm7Pattern = /[^

 a-zA-Z0-9^{}\\[~]|€$@!"#%&'()*+,-./:;<=>?_]/g;
    return cleaned.replace(gsm7Pattern, '');
}

const rawMessage = "Your order is ready for pickup! 🚗";
console.log(sanitizeToGSM7(rawMessage)); 
// Output: "Your order is ready for pickup! "

Schritt 3: Typografische Anführungszeichen und Akzente in GSM-7-Entsprechungen umwandeln

Oftmals schleichen sich Unicode-Zeichen durch Copy-Paste-Aktionen aus Textverarbeitungsprogrammen wie Microsoft Word oder Google Docs in Ihre Nachrichten ein. Diese Programme konvertieren standardmäßige gerade Anführungszeichen (' und ") automatisch in geschwungene „typografische“ Anführungszeichen (, , , ).

Um zu verhindern, dass Ihr System aufgrund dieser geringfügigen Änderungen mehrere SMS versendet, können Sie eine Zeichenzuordnungstabelle einrichten. Dies ermöglicht es Ihnen, die Lesbarkeit Ihres Textes zu erhalten, ohne das UCS-2-Limit von 70 Zeichen auszulösen.

  • Konvertieren Sie und in ein Standard-Apostroph '
  • Konvertieren Sie und in ein Standard-Anführungszeichen "
  • Konvertieren Sie Geviertstriche () und Halbgeviertstriche () in Standard-Bindestriche (-)
  • Konvertieren Sie Zeichen mit Akzent wie é, á, í in ihre Entsprechungen ohne Akzent e, a, i

Durch die explizite Zuordnung dieser Zeichen bewahren Sie das professionelle Erscheinungsbild Ihrer Nachrichten, während Sie gleichzeitig strikt innerhalb des Limits für ein einzelnes Segment bleiben. Dies ist besonders hilfreich für lokale Dienstleistungsunternehmen wie Zahnarztpraxen, Werkstätten und Sprachschulen, die ihre Betriebskosten niedrig halten müssen, während sie automatisierte Terminaktualisierungen versenden.

Schritt 4: Wechseln Sie zu einem SMS-Gateway mit Flatrate-Segmentabrechnung

Das Entfernen von Unicode-Zeichen ist zwar ein funktionierender Workaround, zwingt Sie jedoch dazu, Kompromisse bei der Tonalität Ihrer Marke einzugehen. Im Jahr 2026 erwarten Kunden eine natürliche Kommunikation, die oft Emojis, lokale Akzente und eine professionelle Formatierung beinhaltet. Es ist nicht mehr notwendig, Ihre Kundenkommunikation auf einfache ASCII-Zeichen zu beschränken, nur um hohe Telefonrechnungen zu vermeiden.

Traditionelle Cloud-Aggregatoren wie Twilio, Plivo, und MessageBird erzwingen eine strikte Abrechnung pro Segment, da sie für jedes Datenpaket Mobilfunkgebühren zahlen müssen. Darüber hinaus erfordert die Nutzung dieser Altsysteme die Bewältigung komplexer A2P SMS-Registrierungen, 10DLC-Netzbetreiber-Zulassungen und monatlich wiederkehrender Gebühren.

Eine immer beliebtere Alternative ist die Nutzung eines Android-basierten SMS-Gateways wie MySMSGate. MySMSGate verwandelt Ihre eigenen Android-Telefone und SIM-Karten in voll funktionsfähige SMS-Sende-Geräte. Da Ihre Nachrichten direkt über die SIM-Karte Ihres Telefons gesendet werden (die in der Regel unbegrenzte oder stark vergünstigte lokale SMS-Pakete enthält), umgehen Sie die herkömmliche segmentbasierte Abrechnung vollständig.

MySMSGate berechnet eine Flatrate von 0,02 $ pro gesendeter SMS, unabhängig davon, ob Ihre Nachricht Unicode-Zeichen oder Emojis enthält oder sich über mehrere Segmente erstreckt. Es gibt keine monatlichen Abonnements, keine Verträge und keine Verzögerungen bei der Registrierung durch Mobilfunkanbieter. Wenn eine Nachricht nicht zugestellt werden kann, wird Ihr Guthaben automatisch zurückerstattet.

Wenn Sie nach den besten SMS-API-Alternativen für Massen-SMS-Vergleiche, Zuverlässigkeit und Zustellungsraten suchen, umgehen Sie mit dem Wechsel zu einem Android-SMS-Gateway das gesamte Unicode-Abrechnungsproblem direkt an der Quelle.

Schritt 5: Verwaltung von SMS über mehrere Telefonnummern einrichten

Für lokale Dienstleistungsunternehmen, die an mehreren Standorten tätig sind, kann die Verwaltung der Messaging-Infrastruktur schnell kompliziert werden. Wenn Sie mehrere Filialen verwalten – beispielsweise fünf Zahnarztpraxen oder drei Autowerkstätten –, benötigen Sie ein System, das die Verwaltung von SMS über mehrere Telefonnummern über eine einzige zentrale Benutzeroberfläche unterstützt.

Mit MySMSGate können Sie eine unbegrenzte Anzahl von Android-Geräten mit einem einzigen Account-Dashboard verbinden. Dies ermöglicht es Ihnen, mehrere Nummern nahtlos zu verwalten:

  1. Konto erstellen: Registrieren Sie sich bei MySMSGate, um Ihren API-Schlüssel abzurufen.
  2. Android-App installieren: Laden Sie die MySMSGate-Begleit-App auf Ihre Android-Geräte herunter.
  3. Verbindung per QR-Code herstellen: Scannen Sie den auf Ihrem Web-Dashboard angezeigten QR-Code mit der Kamera des jeweiligen Telefons. Dadurch werden die Geräte sofort mit Ihrem zentralen Konto verknüpft, ohne dass Sie komplexe API-Schlüssel eingeben müssen.
  4. Dual-SIM verwalten: Wenn Ihre Telefone Dual-SIM unterstützen, können Sie direkt in Ihrem Dashboard oder API-Aufruf genau auswählen, über welchen SIM-Slot Ihre Nachrichten gesendet werden sollen.

Diese Multi-Geräte-Struktur ermöglicht es Ihnen, ausgehende Benachrichtigungen über lokale Nummern zu leiten, die Ihre Kunden bereits kennen, was die Öffnungs- und Antwortraten erheblich verbessert. Alle eingehenden Antworten werden automatisch an Ihr webbasiertes Web Conversations-Dashboard weitergeleitet, was einen bidirektionalen Chat in Echtzeit direkt von Ihrem Computer aus ermöglicht.

Schritt 6: Senden Sie Ihre erste Unicode-sichere SMS über die REST-API

Wenn Sie ein Indie-Entwickler, Freelancer oder ein technisch versierter Geschäftsinhaber sind, ist die Integration von MySMSGate in Ihre Software denkbar einfach. Die Plattform bietet eine übersichtliche REST-API mit einem einzigen Endpunkt, mit der Sie SMS-Benachrichtigungen mit minimalem Einrichtungsaufwand auslösen können.

Hier ist ein Beispiel für einen POST-Request zum Senden einer SMS mit cURL. Beachten Sie, dass Sie Emojis und spezielle Unicode-Zeichen einfügen können, ohne sich Gedanken über steigende Segmentkosten machen zu müssen:

curl -X POST https://mysmsgate.net/api/v1/send \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "to": "+1234567890",
    "message": "Your vehicle is ready for pickup! 🚗 Please reply to this message if you have any questions.",
    "device_id": "your_device_id",
    "sim_slot": 1
  }'

Für detailliertere Implementierungen in verschiedenen Programmiersprachen können Sie die offizielle MySMSGate API-Dokumentation konsultieren. Diese enthält produktionsbereite Code-Snippets für Python, Node.js, PHP, Go und Ruby sowie vorgefertigte Konnektoren für Automatisierungsplattformen wie Zapier, Make.com und n8n.

Häufig gestellte Fragen (FAQ)

Hier finden Sie Antworten auf die häufigsten Fragen zu Unicode-SMS-Splitting, Zeichenlimits und Abrechnungsstrukturen.

Warum führt ein einziges Emoji dazu, dass meine SMS als mehrere Nachrichten gesendet wird?

Standard-Textnachrichten verwenden die GSM-7-Codierung, die bis zu 160 Zeichen pro Segment ermöglicht. Emojis sind nicht Teil des GSM-7-Zeichensatzes. Wenn Sie ein Emoji hinzufügen, muss der Netzbetreiber die gesamte Nachricht auf die UCS-2-Codierung (Unicode) umstellen, wodurch das Segmentlimit auf 70 Zeichen sinkt. Wenn Ihre Nachricht länger als 70 Zeichen ist, wird sie in mehrere Segmente aufgeteilt, und herkömmliche APIs stellen Ihnen jedes Segment in Rechnung.

Wie kann ich vor dem Senden überprüfen, ob mein Text Unicode enthält?

Sie können Online-SMS-Längenrechner verwenden oder eine einfache Regex-Suche in Ihrem Code ausführen, um Nicht-GSM-7-Zeichen zu erkennen. Alternativ können Sie Validierungsskripte schreiben, die Nicht-GSM-7-Zeichen in Ihrer Datenbank markieren oder entfernen, bevor sie an eine ausgehende SMS-Warteschlange übergeben werden.

Berechnet MySMSGate zusätzliche Gebühren für Unicode- oder Multi-Segment-Nachrichten?

Nein. Im Gegensatz zu herkömmlichen APIs wie Twilio oder Vonage, die pro 160- oder 70-Zeichen-Segment abrechnen, berechnet MySMSGate eine Pauschalgebühr von 0,02 $ pro gesendeter Nachricht. Da die Nachricht direkt über die SIM-Karte Ihres Android-Telefons geleitet wird, zahlen Sie nicht pro Segment. So können Sie Emojis und lange Nachrichten versenden, ohne sich über versteckte Gebühren Gedanken machen zu müssen.

Benötige ich eine Netzbetreiber- oder 10DLC-Registrierung, um ein Android-SMS-Gateway zu nutzen?

Nein. Da MySMSGate Nachrichten über Ihr eigenes physisches Android-Telefon und Ihre SIM-Karte leitet, werden Ihre Nachrichten als normaler Person-to-Person-Verkehr (P2P) gesendet. Das bedeutet, dass Sie keine komplexe, teure und zeitaufwendige A2P-10DLC-Registrierung durchlaufen oder auf Freigaben von Mobilfunkanbietern warten müssen.