Text toolkit: count, convert and clean text

Word counter, case converter, accent remover, space cleaner and slug maker.

Characters
0
Without spaces
0
Words
0
Lines
0
Paragraphs
0
Sentences
0
Reading time
0 s

Transform

Works for Latin-script text in any language: é è ñ ü ç å ø ł ß đ and more. Letters from other scripts are left as they are.

German umlauts

Five everyday text jobs on one page

Paste or type your text in the box and the counts update instantly. Then pick one of the tools underneath: remove accents, change case, clean spaces, make a slug, or switch Vietnamese tone-mark style. The result appears below, ready to copy, and one click puts it back in the input box so you can chain steps.

Nothing you paste leaves this page. It is handled by your browser, so you can work with drafts, names or client text without uploading it anywhere.

Counting words, characters, sentences and reading time

The counter shows characters (with and without spaces), words, lines, paragraphs, sentences and an estimated reading time.

  • Words are separated by spaces, the way word processors count them. A hyphenated word such as "state-of-the-art" counts as one. For Chinese and Japanese text, which has no spaces between words, the tool uses the browser's word segmentation instead.
  • Characters are counted as a person sees them, so an accented letter or an emoji counts once, whether your text uses precomposed letters or letters plus combining marks.
  • Sentences are counted by their closing punctuation (. ! ? and their full-width forms). Abbreviations such as "Dr." can make the number a little high, so treat it as an estimate.
  • Reading time divides the word count by a reading speed you choose: 150, 200 or 250 words a minute. Real speed depends on the reader and the text.

Remove accents from any Latin-script language

Remove accents (diacritics) from French, Spanish, Portuguese, German, Polish, Turkish, Vietnamese, Czech, Nordic languages and more. The tool handles letters that are not simply a base letter plus a mark: đ → d, ø → o, ł → l, ß → ss, æ → ae, œ → oe, þ → th, ð → d, ı → i. For German you can choose whether ü becomes u or ue. Letters from other scripts, such as Hindi, Arabic, Thai, Cyrillic or Japanese, are left exactly as they are, because removing their marks would destroy the words.

Text copied from different sources can hold the same letter in two Unicode forms (one code point, or a base letter plus a combining mark). The tool treats both the same, and its output is always in the standard composed form.

Change case

Choose UPPERCASE, lowercase, Title Case, Sentence case, or the programmer styles camelCase, PascalCase, snake_case, kebab-case and CONSTANT_CASE. Title Case can keep short English words such as "of" and "the" in lowercase. For Turkish and Azeri text, switch on the language rule so that i becomes İ and ı becomes I.

Clean extra spaces

Collapse repeated spaces, trim each line, reduce runs of blank lines to one (or remove them all) and delete invisible characters such as zero-width spaces and byte-order marks, which often arrive with text copied from web pages and PDFs.

Make a slug

A slug is the readable part of a web address, like "my-first-post". The tool removes accents, lowercases, replaces everything that is not a letter or digit with your separator, and can cut the result at a maximum length without breaking a word. If you work in a script that has no Latin form, tick the option to keep letters of any script.

Vietnamese tone-mark style

Vietnamese allows two placements of the tone mark in the open syllables oa, oe and uy: modern "hòa, khỏe, thủy" and classic "hoà, khoẻ, thuỷ". This switch converts a whole text from one style to the other and leaves closed syllables such as "toán" and "qu" syllables such as "quý" alone.

Tips

  • Use "Use result as input" to chain steps, for example clean spaces, then change case, then slugify.
  • Counting is live, so you can trim a text to a limit by watching the number.
  • For file names and URLs, slugs are safer than raw titles because they contain only letters, digits and a separator.

Frequently asked questions

Does it work for languages other than English?

Yes. Remove accents covers any Latin-script language, including Vietnamese, French, Spanish, Portuguese, German, Polish and Turkish. Case conversion and counting work for any script that has upper and lower case or spaces between words.

How are words counted?

Words are groups of letters or digits separated by spaces, the same way most word processors count. Chinese and Japanese text is segmented with the browser's built-in word rules, because those languages do not put spaces between words.

Why does ß become ss and đ become d?

These letters are not an ordinary letter with an accent, so simply stripping marks would leave them unchanged. The tool uses the usual transliterations instead: ß to ss, đ to d, ø to o, ł to l, æ to ae and so on.

Will it change my text if I paste it with decomposed accents?

The tool understands both ways of storing an accented letter and outputs the standard composed form. If you paste text that looks identical but behaves differently when searched, this normalisation is often the reason it is fixed.

Is my text uploaded anywhere?

No. Counting and conversion run in your browser. There is no server involved, and the text is gone when you close or reload the page.

Is there a size limit?

Up to two million characters, which is far more than a long book chapter. Past that the tool stops processing so that your browser tab stays responsive.