Updated · Built and checked by the PlinzoTools team, formulas tested against published sources
Convert any title or text into a clean, URL-safe slug.
cafe-munchen-best-guide-2026
A "slug" is the URL-friendly version of a title -- lowercase, hyphenated, and free of spaces, accents, or special characters (e.g. "My Blog Post!" becomes "my-blog-post"). This tool converts any text into a clean slug automatically, the same transform most CMS platforms apply when generating a page's URL.
Enter a title or any text, and choose a separator (hyphen or underscore). The slug updates instantly.
The text is normalized to strip accents and diacritics (é becomes e), lowercased, and any run of non-alphanumeric characters is replaced with the chosen separator, with leading/trailing separators trimmed.
"Café München -- Best Guide 2026!" becomes cafe-munchen-best-guide-2026.
For a more general text-cleanup pass before slugifying, see the Whitespace Trimmer.
The transformation runs in a fixed order, and knowing it explains every result. First the text is decomposed so that an accented letter is split into its base letter plus a separate accent mark. Second, those accent marks are removed. Third, everything is lower-cased and trimmed. Fourth, every run of characters that is not a letter a to z or a digit 0 to 9 is replaced by a single separator. Finally, any separator left at the very start or end is trimmed off. Consider the hypothetical title " Top 10 Tips -- for Beginners (2026 Edition) ". The result with the hyphen option is top-10-tips-for-beginners-2026-edition. The double dash, the parentheses and the extra spaces all collapse into single hyphens, and nothing dangles at either end.
Accent stripping works for letters that decompose into a base letter plus a mark, such as e with an acute accent, u with an umlaut, n with a tilde and c with a cedilla. It does not transliterate letters that are separate characters in their own right. Examples include the German sharp s, the Scandinavian o with a slash, the Polish l with a stroke and the ligature ae. Those characters are not a to z, so they are treated as symbols and replaced with the separator. A name like "Soren" written with the slashed o would come out as "s-ren" rather than "soren". Text in non-Latin scripts, such as Arabic, Chinese, Cyrillic or Greek, contains no a to z letters at all, so a title written entirely in one of those scripts produces an empty slug. If you publish in such a language, decide separately whether your platform allows native-script URLs or whether you will write a Latin transliteration by hand.
The hyphen option is the safe default for web addresses. The underscore option suits identifiers such as file names, database keys or variable-like strings, where hyphens can be awkward because some programming contexts read them as minus signs. Whichever you choose, the tool uses it consistently for the whole string, so you do not get a mix.
The same clean output works for naming downloadable files, generating anchor IDs for headings, creating tags or category keys, and building identifiers from product names in a spreadsheet. For bulk work, run each title through the tool and paste the results into a column next to the originals, then scan for empty results, which flag titles that used only unsupported characters.
Because "café" becoming "cafe" preserves readability and searchability far better than dropping the letter entirely (which would produce "caf") -- this is the standard approach most slug generators use.
Hyphens are strongly preferred for SEO -- Google explicitly treats hyphens as word separators in URLs, while underscores are sometimes treated as joining characters instead.
No -- digits are preserved; only non-alphanumeric characters (spaces, punctuation, symbols) are replaced with the separator.
Only the letters a to z and digits 0 to 9 survive. A title written entirely in another script, or made only of symbols, has nothing left after conversion.
Any character that is not a letter or digit is replaced by the separator, so "don't" becomes "don-t". Remove the apostrophe first if you prefer "dont".
No. Only letters that split into a base letter plus an accent are cleaned. Standalone characters like those are treated as symbols and replaced with the separator.
No. It converts the full text, so remove unnecessary words yourself if you want a shorter address.
Reference: MDN Web Docs