Zum Hauptinhalt springen

Zeichen-Zähler

Zeichen zählen misst Text so, wie jedes Ziel ihn zählt: Grapheme für die meisten Plattformen, für X die gewichtete Länge – ein CJK-Ideogramm kostet zwei, jede URL zählt als 23 – und für SMS die Segmentrechnung GSM-7 gegen UCS-2. text.length zu zählen überschätzt jedes Emoji.

Nur lokal
Anzeigen
7 Limits überschritten
Text
161 B5 ZeilenZ. 1, Sp. 1
Zeichen
156
Codepunkte
156
UTF-16-Einheiten
157
Wörter
26
Sätze
4
Zeilen
5
Bytes
161

Limits nach Plattform

X (Twitter)

  • Beitrag146 / 280gewichtete Zeichen
  • Beitrag (Premium)146 / 25000gewichtete Zeichen
  • Bio156 / 160Zeichen
  • Anzeigename156 / 50Zeichen106 zu viel

Bluesky

  • Beitrag156 / 300Zeichen
  • Bio156 / 256Zeichen

Threads

  • Beitrag156 / 500Zeichen

Instagram

  • Bildunterschrift156 / 2200Zeichen
  • Bio156 / 150Zeichen6 zu viel

LinkedIn

  • Beitrag156 / 3000Zeichen
  • Headline156 / 220Zeichen

Facebook

  • Beitrag156 / 63206Zeichen

TikTok

  • Bildunterschrift156 / 2200Zeichen

YouTube

  • Titel156 / 100Zeichen56 zu viel
  • Beschreibung156 / 5000Zeichen
  • Tags156 / 500Zeichen

Suchmaschinenoptimierung

  • Meta-Titel156 / 60Zeichen96 zu viel
  • Meta-Beschreibung156 / 155Zeichen1 zu viel

Google Ads

  • Headline156 / 30Zeichen126 zu viel
  • Beschreibung156 / 90Zeichen66 zu viel

Discord

  • Nachricht156 / 2000Zeichen

WhatsApp

  • Status-Text156 / 700Zeichen

SMS

  • Eine Nachricht156 / 160Codepunkte

Gewichtete Länge

146 / 280 · 1 Link(s) gezählt als 23

CJK-Zeichen und Emojis zählen doppelt, lateinische Zeichen einfach. Das ist die Rechnung von X, keine Zeichenzählung.

SMS

3 Nachrichten · UCS-2 · 157/70

Ein oder mehrere Zeichen zwingen zu UCS-2, was die Kapazität halbiert auf 70.

Diese Zeichen zwangen die Nachricht aus dem GSM-7-Bit-Alphabet: — 🚀

Wie funktioniert Zeichen-Zähler?

Jeder Zeichen-Zähler beantwortet eine Frage, die ihm nie präzise gestellt wurde, und die Antwort hängt davon ab, wer fragt. Dieser hier verweigert sich der einzelnen Zahl, weil es sie nicht gibt.

Drei Arten, denselben Text zu zählen

"😀".length ist 2. JavaScript zählt UTF-16-Codeeinheiten – eine Tatsache über die Kodierung, nicht über den Text; ein Emoji braucht zwei davon. [..."😀"].length ist 1, denn ein Codepunkt kommt dem näher, was ein Mensch ein Zeichen nennt. Und die Graphem-Zahl ist ebenfalls 1 – die Zahl, die jedes Plattform-Limit tatsächlich verwendet.

Die drei laufen weiter auseinander, als ein einzelnes Emoji vermuten lässt. Ein Familien-Emoji aus vier durch Zero-Width-Joiner verbundenen Personen sind 11 Codeeinheiten und ein Graphem. Eine Flagge sind zwei Codepunkte und ein Graphem. Ein Buchstabe mit kombinierendem Akzent ist ein oder zwei Codepunkte, je nachdem, wie er getippt wurde – derselbe sichtbare Text, zwei verschiedene Zählungen. Alle drei Zahlen werden angezeigt, denn das maxlength eines Formularfelds verwendet die erste, die Länge einer Datenbankspalte oft die zweite und ein Plattform-Limit die dritte.

X zählt gar keine Zeichen

X zählt Gewicht. Ein CJK-Ideogramm kostet zwei, ein lateinischer Buchstabe eins, ein Emoji zwei – daher belegen 140 japanische und 280 lateinische Zeichen denselben Raum. Außerdem schreibt X jede URL über t.co um und rechnet sie pauschal als 23 Zeichen, egal wie lang sie wirklich ist. Ein Beitrag mit einem 200-Zeichen-Link ist also 23 Zeichen kürzer, als er aussieht, und ein japanischer Beitrag, der wie 200 Zeichen aussieht, liegt bei Xs Rechnung bei 400 – deutlich über dem Limit. Die Bereiche und die 23-Zeichen-Regel stammen aus der veröffentlichten Konfiguration von X selbst, nicht aus einer Schätzung.

SMS hat zwei Alphabete und zwei Rechenarten

Eine Textnachricht fasst 160 Zeichen, wenn jedes im 7-Bit-GSM-Alphabet liegt, und 70, wenn auch nur eines es nicht ist – ein typografisches Apostroph, ein akzentuierter Großbuchstabe, ein Emoji. Ein einziges Zeichen kann so aus einer Nachricht drei machen. Die Konkatenation ändert die Zahlen erneut: 153 und 67, weil jedes Segment einen Header trägt. Und acht Zeichen des Alphabets – {}[]|^~\ und das Eurozeichen – werden als zwei übertragen, sodass eine Nachricht, die 160 von 160 meldet, trotzdem als zwei abgerechnet werden kann.

Text

Ship faster without shipping secrets. 🚀

Zählergebnisse

characters (graphemes)   39
code points              39
UTF-16 code units        40
words                     5
X weighted               40 / 280
SMS                      1 message (UCS-2)

Text → Zählergebnisse

Text

Ship faster without shipping secrets. 🚀

https://example.com/releases/v9-32

Zählergebnisse

characters (graphemes)  75
code points             75
UTF-16 code units       76
words                   10
X weighted              65 / 280
SMS                     2 messages (UCS-2)

Welche Optionen und Sonderfälle unterstützt Zeichen-Zähler?

Technische Referenz und Optionen
ParameterTypStandardVerhalten & Sonderfälle
GraphemeAnzahlPlattform-LimitsDie Zeichen, wie sie ein Mensch wahrnimmt – die Einheit, in der jedes Plattform-Limit geschrieben ist. Ein Emoji, eine Flagge und eine Familie aus vier Personen zählen jeweils eins. Berechnet mit Intl.Segmenter, mit Rückfall auf Codepunkte in Browsern ohne diese API.
X-GewichtungAnzahl280Die eigene Rechnung von X: CJK und die meisten Emoji kosten 2, Latein kostet 1, und jede URL wird auf pauschal 23 Zeichen umgeschrieben, weil sie über t.co läuft. Die hier verwendeten Bereiche stammen aus der von X veröffentlichten twitter-text-Konfiguration.
CodepunkteAnzahl—Was die meisten anderen Zähler mit „Zeichen“ meinen und was eine in Zeichen gemessene Datenbankspalte enthält. Weicht vom Graphem-Wert ab, sobald kombinierende Marken oder Zero-Width-Joiner im Spiel sind.
UTF-16-CodeeinheitenAnzahlString.lengthWas JavaScripts .length und ein HTML-maxlength-Attribut zählen. Ein Emoji ist 2. Wissenswert, weil ein Formular, das mit .length validiert, und eine Plattform, die Grapheme zählt, sich nie einig werden.
WörterAnzahl—Folgen aus Buchstaben, Ziffern und Apostrophen: don't ist ein Wort, well-known ist ein Wort. Das Aufteilen an Leerzeichen meldet bei einem doppelten Leerzeichen zwei.
SMS-KodierungabgeleitetGSM-7 oder UCS-2160 Zeichen in GSM-7, 70 in UCS-2 – und ein einziges Zeichen außerhalb des GSM-Alphabets stellt die ganze Nachricht um. Konkatenierte Segmente fassen 153 und 67, weil jedes einen Header trägt.
BytesAnzahlUTF-8Was der Text auf der Leitung und in einer Datenbank kostet. Ein Emoji sind 4 Bytes, ein CJK-Ideogramm 3, ein ASCII-Buchstabe 1 – ein japanischer Beitrag mit 280 Zeichen liegt also deutlich über 800 Bytes.
GeprüftDatum2026-10-03Plattform-Limits ändern sich ohne Ankündigung. Diese wurden am angegebenen Datum geprüft; die Notiz neben jedem sagt, ob ein Überschreiten den Text kürzt oder ihn ganz ablehnt – das ist der Teil, der wirklich zählt.

Häufig gestellte Fragen

Warum zählt mein Emoji als zwei Zeichen?

Weil etwas UTF-16-Codeeinheiten zählt – genau das tun JavaScripts String.length und ein HTML-maxlength-Attribut. Ein Emoji außerhalb der Basic Multilingual Plane braucht zwei Codeeinheiten. Die Graphem-Zahl – die Zahl, die ein Leser und jedes Plattform-Limit verwenden – ist eins. Beide werden hier angezeigt, sodass Sie erkennen, über welche ein Formular sich beschwert.

Warum ist mein X-Beitrag über dem Limit, obwohl er kurz aussieht?

X zählt Gewicht, nicht Zeichen. Ein CJK-Ideogramm kostet zwei, ein japanischer Beitrag mit 200 Zeichen ist nach Xs Rechnung also 400 und weit über 280. Emoji kosten ebenfalls zwei. Latein ist eins zu eins – deshalb bleibt das Problem für jeden unsichtbar, der auf Englisch testet; die gewichtete Zahl wird genau aus diesem Grund separat angezeigt.

Zählt ein Link wirklich als 23 Zeichen?

Bei X, ja. Jede URL wird über t.co umgeschrieben und pauschal mit 23 Zeichen gerechnet, egal wie lang sie wirklich ist – eine Tracking-URL mit 200 Zeichen kostet dasselbe wie eine kurze. Deshalb misst der Zähler hier nicht einfach den String: Ein Beitrag mit 300 Zeichen, darin ein langer Link, lässt sich problemlos veröffentlichen.

Warum ändert sich meine SMS-Zählung, wenn ich ein Zeichen ergänze?

Weil ein einziges Zeichen außerhalb des 7-Bit-GSM-Alphabets die ganze Nachricht als UCS-2 neu kodiert und die Kapazität damit von 160 auf 70 halbiert. Ein typografisches Apostroph, ein akzentuierter Großbuchstabe oder ein Emoji genügt. Das Tool nennt die genauen Zeichen, die den Wechsel ausgelöst haben – eines davon zu ersetzen ist meist einfacher, als die Nachricht zu splitten.

Was ist ein Graphem, einfach gesagt?

Das, worauf eine Person zeigen und „ein Zeichen“ nennen würde. Eine Flagge, ein Emoji mit Hautton-Modifikator und ein Buchstabe mit Akzent, der als zwei Codepunkte getippt wurde, sind jeweils ein Graphem. Intl.Segmenter berechnet das korrekt; wo ein Browser ihm fehlt, fällt der Zähler auf Codepunkte zurück – nah dran, aber eine kombinierende Marke zählt als eigenes Zeichen.

Wird mein Text irgendwo hochgeladen?

Nein. Zählen ist Arithmetik an einem String in diesem Tab, und das Netzwerk-Panel zeigt beim Tippen keinen Request. Das ist hier wichtig, weil der Text, den Menschen vor dem Posten messen, oft eine unveröffentlichte Ankündigung oder eine private Nachricht ist.