Hvad dette character counter gør
Denne danske character counter online tæller grafemer (de tegn du rent faktisk ser), tegn uden mellemrum, rå UTF-16 kodepoints og UTF-8 bytes — alt opdateres mens du skriver. Dansk har over 100.000 opslagsord ifølge Den Danske Ordbog, og sproget bruger tegn som æ, ø og å, der fylder 2 bytes i UTF-8, selvom de kun er ét grafem. Det er præcis den slags forskel dette værktøj gør synlig. Hvis du har brug for at tælle ord i stedet for tegn, kan vores [word counter](/da/word-counter/) hjælpe dig med det. 100 % klient-side — dine data forlader aldrig din browser. Ingen upload, ingen sporing, ingen serverlogfiler.
Funktioner
- Grafemtælling. Tæller brugersynlige tegn korrekt. Emoji-sekvensen 👨👩👧 er ét grafem, men 7 kodepoints — værktøjet viser begge tal, så du ved hvad du faktisk har.
- UTF-8 bytes. Viser præcis hvor mange bytes teksten fylder i UTF-8. Afgørende når du validerer mod database-kolonner som VARCHAR(255), der typisk betyder 255 bytes, ikke 255 tegn.
- Kodepoints. Rapporterer rå Unicode-kodepoints. JavaScript's
string.lengthreturnerer UTF-16 code units, ikke tegn — her ser du den reelle forskel og undgår skjulte fejl. - Hyppigste tegn. Finder automatisk det mest forekommende tegn i teksten. Nyttigt til at opdage uønsket gentaget tegnsætning eller usynlige kontroltegn.
- Realtidsopdatering. Alle tællere opdateres med det samme for hvert tastetryk. Ingen knapper, ingen ventetid — du ser resultatet løbende mens du arbejder.
- Privatlivssikker. Alt kører lokalt i browseren via MDN — Date-kompatible Web-API'er. Ingen tekst sendes til nogen server, og der gemmes ingen logfiler.
Sådan bruger du character counter
Indsæt eller skriv din tekst i feltet — tællingerne vises med det samme. Klik Ryd for at starte forfra.
- Indsæt din tekst. Kopier teksten fra dit dokument, tweet, SMS eller kode og indsæt den i tekstfeltet.
- Aflæs tællingerne. Se grafemer, tegn uden mellemrum, kodepoints og UTF-8 bytes opdateret i realtid. Husk at JavaScript tæller anderledes:
[...text].lengthgiver grafemer via spread, menstext.lengthgiver UTF-16 code units. - Sammenlign med din grænse. Twitter/X tillader 280 grafemer, Bluesky 300 og en standard-SMS 160 GSM-7 tegn. Indeholder teksten emoji, skifter SMS til UCS-2 og grænsen falder til 70 tegn pr. segment.
- Ryd og prøv igen. Klik Ryd-knappen for at nulstille alle tællere og indtaste ny tekst.
Typiske anvendelser
- Sociale medier. Tjek om dit opslag holder sig inden for Twitter/X's 280 grafemer, Bluesky's 300 eller LinkedIn's 3000 tegn, inden du poster.
- SMS og beskedtjenester. En enkelt SMS med emoji kan splitte sig i 4 segmenter i stedet for 1, og koste fire gange så meget. Kontrollér byte-tællingen her, inden du sender bulk-beskeder.
- SEO og metatekster. Meta-beskrivelser bør ligge på 155–160 tegn og title-tags på ca. 60 tegn. Verificér begge grænser her, inden du udgiver siden.
- Databasemigrering. VARCHAR(255) i mange databaser er 255 bytes, ikke 255 tegn. UTF-8-kodede danske tegn (æ, ø, å) fylder 2 bytes — brug UTF-8 bytes-tællingen til at validere inden migrering.
- Kodegennemgang. Når du arbejder med brugerinput-validering i backend-kode, er det afgørende at kende forskellen på grafemer, kodepoints og bytes — som forklaret i RFC 8259 for JSON-strenge.
Ofte stillede spørgsmål
Hvad er forskellen på grafemer og kodepoints?
Et grafem er det tegn du ser med øjnene — fx bogstavet å eller emoji'en 👨👩👧. Et kodepoint er en numerisk Unicode-værdi. Familieemoji'en er ét grafem, men består af 7 kodepoints forbundet med zero-width joiners. Det er vigtig viden, når du sætter tegngrænser i din applikation.
Sender værktøjet min tekst til en server?
Nej. Alt kører udelukkende i din browser. Ingen tekst uploades, ingen session gemmes, og der er ingen server-logfiler. Du kan endda bruge det offline, når siden er indlæst.
Hvorfor tæller JavaScript forkert for emoji?
text.length i JavaScript returnerer antallet af UTF-16 code units, ikke tegn. En emoji som 😂 giver length på 2, fordi den kræver to code units. Brug [...text].length for at få det korrekte grafemantal, eller et bibliotek der understøtter Unicode Segmentation.
Hvordan påvirker emoji en SMS?
En standard-SMS bruger GSM-7 og rummer 160 tegn pr. segment. Så snart teksten indeholder et tegn uden for GSM-7 — fx emoji eller mange Unicode-symboler — skifter beskeden til UCS-2, og grænsen falder til 70 tegn pr. segment. Det kan gøre én besked til fire segmenter og firedoble prisen.
Kan jeg bruge dette til at tjekke meta-beskrivelser?
Ja. Skriv eller indsæt din meta-beskrivelse og hold grafemtællingen på 155–160. For title-tags er ca. 60 tegn en god tommelfingerregel. Bemærk at søgemaskiner måler pixelbredde, ikke tegn, men tegngrænsen er en god praktisk tilnærmelse.
Har jeg brug for et andet værktøj til at tælle ord?
Denne tæller fokuserer på tegn, kodepoints og bytes. Hvis du også vil tælle ord og sætninger, kan vores [word counter](/da/word-counter/) gøre det for dig — samme privatlivsgaranti, alt klient-side.