Alle Artikel

Der SMS-Code, der nicht mehr ankommt: was der SHAFT-Filter fuer eine Erwachsenenanzeigen-Seite wirklich blockiert

10 Min. Lesezeit

Der Code, der nie ankommt, und niemand sagt warum

Ein Besucher registriert sich, gibt eine Telefonnummer ein und wartet auf den sechsstelligen Code, der ihm den Login erlaubt. An einem guten Tag kommt er in drei Sekunden an. An einem schlechten Tag kommt er nie an, und nichts im Produkt erklaert warum. Das Anmeldeformular zeigt keinen Fehler. Der Netzbetreiber schickt keine Unzustellbarkeitsmeldung. Die Nachricht existiert auf der anderen Seite schlicht nicht, und das einzige sichtbare Symptom ist eine etwas hoehere Abbruchquote, die man einem Dutzend anderer Ursachen zuschreiben koennte.

Dieses Schweigen ist schlimmer als ein Ausfall, denn ein Ausfall wird behoben. Ein Inhaltsfilter auf Betreiberseite, der still entschieden hat, dass Ihr Traffic zu einer gesperrten Kategorie gehoert, wird nicht durch einen Server-Neustart oder das Rotieren eines API-Schluessels behoben. Er wird nur geloest, indem man versteht, was ihn ausgeloest hat, und die meisten Betreiber kommen nie so weit, weil der Ablehnungsgrund in einer Entwicklerkonsole steckt, die sie nie oeffnen, formuliert in einer Sprache fuer Programmierer, nicht fuer denjenigen, der das Geschaeft fuehrt.

Der Mechanismus dahinter ist kein Geruecht. Er hat ein Kuerzel, eine Reihe von Fehlercodes, die von den Unternehmen veroeffentlicht werden, die den Traffic weiterleiten, und eine direkte Verbindung zu dem Wort, das im Namen des Geschaefts selbst steckt: fuer Erwachsene. US-Netzbetreiber filtern kommerzielle SMS anhand eines kleinen Satzes von Inhaltskategorien, und eine dieser Kategorien ist Sex und Erwachseneninhalte. Ein Anzeigenverzeichnis fuer Escorts faellt per Definition darunter, egal was der tatsaechliche Text der Nachricht sagt.

Das ist nicht derselbe Fehler, der anderswo in diesem Blog behandelt wird. Die Zustellbarkeit von E-Mails bricht, weil Spamfilter eine Nachricht nach Absenderreputation und Formatierung bewerten, und ein sorgfaeltiger Absender kann sich mit besserer Authentifizierung und schrittweisem Aufwaermen wieder herausarbeiten. Die SMS-Filterung fuer Erwachseneninhalte funktioniert anders: Es ist kein Reputationswert, der sich mit der Zeit erholt, sondern ein Kategorieabgleich, den das System eines Betreibers einmal bei der Registrierung prueft, und oft laesst er nicht einmal eine erneute Einreichung zu.

Der SHAFT-Filter: was Netzbetreiber tatsaechlich markieren, in ihren eigenen Worten

Die branchenuebliche Abkuerzung fuer die gesperrten Kategorien ist SHAFT: Sex, Hass, Alkohol, Schusswaffen und Tabak (im Original sex, hate, alcohol, firearms, tobacco). Das ist kein Begriff, den die Betreiber fuer das Marketing erfunden haben; er taucht in den Ablehnungscodes auf, die Messaging-Plattformen zurueckgeben, wenn eine Einreichung scheitert. Twilios eigene Fehlerdokumentation zum Code 30953 besagt klar, dass eine Kampagne abgelehnt wurde, weil sie Sex- oder Erwachseneninhalte enthaelt, die gegen die CTIA-SHAFT-Richtlinien verstossen, und fuegt ein Detail hinzu, das wichtiger ist als die Ablehnung selbst: Diese Ablehnungskategorie kann nicht erneut eingereicht werden. Es gibt kein Widerspruchsformular, keine ueberarbeitete Formulierung, die es behebt, keinen zweiten Versuch ueber den normalen Registrierungsweg.

Das gleiche Muster zeigt sich bei Freephone-Nummern, zu denen viele Betreiber gerade deshalb greifen, weil es weniger buerokratisch wirkt als die Standardregistrierung mit lokaler Nummer. Der Fehlercode 30441 betrifft eine Freephone-Nummernverifizierung, die abgelehnt wird, weil der Pruefer, mit Blick auf die tatsaechliche Website, den Einwilligungsablauf oder die mit dem Antrag eingereichten Beispielnachrichten, entscheidet, dass der Anwendungsfall "sexbezogen erscheint". Die Ablehnung beschraenkt sich nicht auf das, was die einzelne Nachricht sagt. Sie betrachtet die Website, die die Nummer registriert ist zu vertreten, was bei einem Anzeigenverzeichnis das gesamte Geschaeft ist.

Was dies von der Schliessung eines Kontos durch einen Zahlungsdienstleister unterscheidet, ist das voellige Fehlen eines Pruefgespraechs. Ein Zahlungsdienstleister kuendigt einem Haendler mit einer Ankuendigungsfrist, einem Begruendungscode und manchmal einem Compliance-Beauftragten, der bereit ist, darueber zu sprechen. Der automatische Inhaltsfilter eines Betreibers gibt einen Ablehnungscode auf einem Entwickler-Dashboard aus und macht weiter. Niemand beim Betreiber entscheidet, dass Ihr Geschaeft keinen Service verdient; eine vor Jahren aus einem anderen Grund geschriebene Regel tut das automatisch, und sie weiss nicht und kuemmert sich nicht darum, dass die betreffenden Nachrichten harmlose sechsstellige Login-Codes sind.

Der Kategorieabgleich erfolgt auf der Ebene der registrierten Marke und des Anwendungsfalls, nicht nur der Worte in jeder einzelnen Nachricht. Eine Kampagne wird mit einem Geschaeftsnamen, einer Beschreibung des Zwecks der Nachrichten und oft einem Link zur Website registriert. Wenn eines dieser drei Elemente wie Erwachseneninhalt wirkt, kann der Filter die gesamte Kampagne ablehnen, selbst wenn der tatsaechliche SMS-Text nichts weiter ist als eine Zahl und das Wort "Code". Das ist das Detail, das Betreiber am haeufigsten uebersehen: Den Nachrichtentext zu bereinigen, bereinigt nicht die Registrierung, die dahintersteht.

Warum "einfach zu Verify wechseln" nicht die vollstaendige Loesung ist

Der Standardrat, sobald ein Betreiber das Problem verstanden hat, lautet, keine vollstaendige kommerzielle Messaging-Kampagne mehr zu registrieren, sondern statt dessen ein dediziertes Authentifizierungsprodukt zu verwenden, etwa die Verify-API von Twilio oder ein aequivalentes Angebot eines anderen Anbieters. Dieser Rat ist so weit richtig: Ein Produkt, das nur fuer Einmalcodes gebaut ist, ist ausdruecklich von dem vollstaendigen Marken- und Kampagnenregistrierungsprozess ausgenommen, der den SHAFT-Filter ausloest, und Twilios eigene Onboarding-Dokumentation bestaetigt, dass ein Geschaeft, das ausschliesslich OTP-Codes versendet, bei Nutzung dieses Produkts weder eine Marke noch eine Kampagne registrieren muss.

Die Ausnahme kommt mit einer Bedingung, die selten in dem Rat auftaucht, den man sich unter Kollegen weitergibt: Sie gilt speziell fuer den Versand ueber die eigenen geteilten, gepoolten Nummern des Anbieters, nicht fuer die Weiterleitung von Verifizierungscodes ueber eine Telefonnummer, die das Geschaeft selbst registriert hat und besitzt. Leitet man denselben OTP-Traffic ueber die eigene registrierte Nummer, gelten die normalen Registrierungsregeln wieder, SHAFT-Kategorie inklusive. Der Umweg ist real, aber er ist an einen bestimmten Zustellungsweg gebunden, keine allgemeine Ausnahme fuer jede Nachricht, die zufaellig einen sechsstelligen Code enthaelt.

Die Nutzung der Ausnahme hat auch einen Preis. Betreiber geben registrierten, geprueften Kampagnen Zustellprioritaet und hoeheren Durchsatz gerade weil das dahinterstehende Geschaeft geprueft wurde. Eine geteilte, gepoolte Nummer, die dem unregistrierten Traffic aehnlichen Verkehr trägt, steht in dieser Prioritaetsordnung weiter unten, was sich als kleine, aber reale Zunahme der Zustellverzoegerung und gelegentliche Drosselungen in Zeiten hohen Volumens zeigt, etwa bei einer Marketingkampagne oder einem Anstieg neuer Anmeldungen nach dem Start einer Funktion. Fuer ein kleines Verzeichnis spielt das selten eine Rolle. Fuer eines, das Aktionen betreibt oder saisonale Spitzen neuer Inserenten hat, ist der Unterschied zwischen "in zwei Sekunden zugestellt" und "in zwanzig zugestellt" der Unterschied zwischen einer abgeschlossenen und einer abgebrochenen Anmeldung.

Der Filter, der entscheidet, ob eine Nachricht durchkommt, blickt auch ueber den Versandweg hinaus auf Signale, die ein Geschaeft selten direkt kontrolliert: wie genau der tatsaechliche Inhalt der Nachrichten mit dem genehmigten Anwendungsfall uebereinstimmt, und wie sich die Reputation der Absendernummer entwickelt. Eine Support-Nachricht hier, eine Werbekampagne dort, gesendet ueber denselben Kanal, der fuer eine saubere OTP-Zustellung eingerichtet wurde, kann dieses Signal verschieben, ohne dass irgendwo ein einziges sexuell konnotiertes Wort auftaucht. Den Verifizierungskanal vollstaendig von jeder anderen Art von Nachricht zu trennen, die das Geschaeft versendet, ist hier kein netter Zusatz; es ist der einzige Weg, wie die Ausnahme weiter funktioniert.

Die Registrierung zu umgehen funktioniert nicht mehr

Bevor sich all diese Filterung verschaerfte, war der uebliche Umweg schlicht, sich gar nicht zu registrieren: eine Nummer mit lokaler Vorwahl kaufen, Nachrichten senden, akzeptieren, dass ein Teil herausgefiltert wird, und den Verlust als Geschaeftskosten verbuchen. Diesen Umweg gibt es nicht mehr. Twilios eigenes Changelog zur Abschaltung der unregistrierten US-10DLC-Messaging beschreibt ein Filterregime, das sich Mitte 2023 verschaerfte und nach Ende August jenes Jahres zu einer vollstaendigen Sperrung des gesamten unregistrierten, in die USA gerichteten Traffics wurde, an den Absender mit dem Fehlercode 30034 zurueckgegeben. Das ist keine haertere Filterung mit einem Zuschlag. Es ist Traffic, der nicht ankommt, Punkt, ohne eine Gebuehr, die ihn zurueckkauft.

Diese Unterscheidung ist wichtig, weil ein Geschaeft, das sich einmal registriert hat, markiert wurde und still aufgehoert hat, seinen Registrierungsstatus zu verfolgen, sich auch nicht mehr im aelteren, milderen Regime befindet. Eine Kampagne, deren Trust Score gesunken ist, sei es wegen einer Inhaltsabweichung, eines Anstiegs von Abmeldebeschwerden oder schlicht Inaktivitaet, gleitet in die gleiche Behandlung wie unregistrierter Traffic: geringerer Durchsatz, mehr Filterung, und kein klarer Hinweis, dass sich etwas geaendert hat, weil die Sperrung auf der Infrastruktur des Betreibers stattfindet, mehrere Schritte entfernt von dem Ort, an dem das Geschaeft die eigenen Protokolle beobachtet.

Das ist dieselbe Art von Risiko, die dieser Blog bereits fuer Hosting-, CDN- und Domain-Infrastruktur beschrieben hat: Ein Anbieter, der mehrere Ebenen vom Produkt entfernt ist, kann einen Teil davon nach eigenem Zeitplan und aus eigenen Policy-Gruenden abschalten, und das erste Zeichen ist das Fehlen von etwas, das vorher funktionierte. Der Unterschied bei der SMS-Filterung ist, dass der "Aus-Schalter" nicht die Entscheidung eines einzelnen Unternehmens ist. Es ist eine Regel, die gemeinsam von allen grossen US-Netzbetreibern durchgesetzt wird, einheitlich angewandt, egal welche Messaging-Plattform dazwischen steckt, was bedeutet, dass ein Anbieterwechsel sie nicht umgeht, so wie ein Hostingwechsel manchmal die Policy eines einzelnen Unternehmens umgeht.

Es gibt keine legitime Moeglichkeit, ein Anzeigenverzeichnis fuer Erwachsene bei der Registrierung als etwas anderes zu tarnen, um den Kategorieabgleich zu vermeiden. Das riskiert eine dauerhafte Ablehnung bei dem einen Antrag, den ein Kampagnentyp stellen darf, und eine Ablehnung wegen Falschdarstellung ist ein schlechteres Ergebnis, als sich nie registriert zu haben, weil sie auch den legitimen Weg verschliesst. Der ehrliche Weg, so unbequem er auch ist, ist der einzige, der einen zweiten Versuch auf dem Tisch laesst.

Was man aufbauen sollte, bevor die Telefonnummer unzuverlaessig wird

Der erste konkrete Schritt ist, aufzuhoeren, die Telefonnummer als garantierte Infrastruktur zu behandeln, und von Anfang an einen zweiten Kanal in den Anmelde- und Login-Ablauf einzubauen, nicht erst nach dem ersten Support-Ticket wegen eines fehlenden Codes. Ein Code aus einer Authentifizierungs-App, ein Magic Link per E-Mail oder ein bei der Anmeldung erzeugter Backup-Code umgehen einen Betreiberfilter vollstaendig, weil keiner von ihnen von einer Nachrichtenkategorie abhaengt, die ein Telefonnetz gerade durchsucht. Keine dieser Optionen funktioniert ausserhalb des dafuer gebauten Ablaufs, daher kostet es jetzt mindestens eine davon aufzubauen deutlich weniger, als es nachzuruesten, nachdem ein Filter bereits einen sichtbaren Anteil der Anmeldungen aufgefressen hat.

Der zweite Schritt ist, die Kanaele vollstaendig zu trennen: Welche Nummer oder welches Produkt Einmalcodes versendet, sollte niemals auch eine Werbe-SMS, eine Reaktivierungserinnerung oder eine Zahlungserinnerung versenden. Nachrichtenarten auf einem einzigen Versandweg zu mischen, ist genau das Muster, das das Reputationssignal untergraebt, das ein Filter beobachtet, und es setzt den einen Kanal, den ein Geschaeft wirklich braucht, den Login-Code, dem Risiko aus, um einen Marketingkanal zu schuetzen, der andere Optionen hat.

Der dritte Schritt ist, sich ehrlich zu registrieren und das Ergebnis als endgueltig zu behandeln. Da eine Ablehnung in der SHAFT-Kategorie in der Regel nicht erneut eingereicht werden kann, sollte die Registrierung nur einmal erfolgen, mit einer zutreffenden Geschaeftsbeschreibung, nachdem im Voraus entschieden wurde, ob das Geschaeft die Durchsatz- und Prioritaetskompromisse einer Verify-artigen Ausnahme akzeptieren kann oder die vollstaendige Registrierung braucht und darauf vorbereitet ist, dass sie abgelehnt wird. Raten und hoffen verschwendet den einen Versuch, der zaehlt.

Der vierte Schritt ist, Zustelldaten direkt zu beobachten, statt zu warten, bis sich ein Nutzer beschwert. Jede grosse Messaging-Plattform stellt Zustellquittungen und Fehlercodes pro Nachricht bereit; ein wachsender Anteil von Codes wie 30034, oder eine sinkende Zustellrate speziell auf dem Verifizierungskanal, ist das fruehestmoegliche Signal dafuer, dass sich etwas geaendert hat, und es kommt lange bevor es sich als Rueckgang der abgeschlossenen Anmeldungen in einem Monatsbericht zeigt. Ein Betreiber, der diese Zahl monatlich prueft, erkennt eine Filteraenderung in Wochen. Wer nur die Konversion prueft, erkennt sie erst in einem Quartal, nachdem sie bereits reales Geschaeft gekostet hat.

Nichts davon macht die Telefonnummer unbrauchbar. Es zeigt sie so, wie sie wirklich ist: ein Kanal, den sich ein Geschaeft von Netzbetreibern ausleiht, die ihn nicht mit einem Anzeigenverzeichnis fuer Erwachsene im Kopf gebaut haben, und die sich das Recht vorbehalten, ohne Erklaerung nein zu sagen. Ihn so zu behandeln, mit einem echten Ausweichkanal und einer klaren Trennung dessen, was er transportiert, ist es, was einen Login-Ablauf an dem Tag noch funktionsfaehig haelt, an dem der Filter entscheidet, dass genau Ihr Geschaeft dasjenige ist, das er stoppen sollte.

DEMO testen

Escort-Verzeichnis-Software, sofort einsatzbereit