Create clean URLs with the slug generator
A slug is the human-readable part of a URL that identifies a page, such as css-grid-guide in example.com/blog/css-grid-guide. Good slugs are short, descriptive and contain only safe characters. This slug generator converts titles into slugs the same way content management systems and frameworks do, and handles tricky input such as accents, ampersands and typographic quotes.
Examples
| Title | Slug |
|---|---|
| Crème Brûlée & Café: 10 Tips for Beginners! | creme-brulee-and-cafe-10-tips-for-beginners |
| What’s New in PHP 8.5? | whats-new-in-php-8-5 |
| Straße über Ærø | strasse-uber-aero |
| The Complete Guide to CSS Grid (stop words removed) | complete-guide-css-grid |
How the conversion works
- Special letters without a simple accent are transliterated (ß → ss, æ → ae, ø → o, ł → l), and symbols such as
&,@,%and+become words. - Unicode normalisation (NFKD) splits accented letters into base letter plus accent, and the accents are dropped (é → e, ü → u).
- Apostrophes are removed so "What’s" becomes "whats" rather than "what-s".
- Everything that is not a letter or digit becomes a separator, and repeated separators collapse into one.
- Optional steps: lowercase, remove common English stop words and trim to a maximum length at a word boundary.
Options explained
- Separator: hyphens are recommended for URLs — Google treats hyphens as word separators but underscores as joining characters. Underscores and dots suit file names and identifiers.
- ASCII only: on by default for maximum compatibility. Untick it to keep letters from scripts such as Cyrillic, Greek or Chinese; browsers display them, although they are percent-encoded when copied.
- Remove stop words: drops words like "the", "a", "of" and "to" for shorter slugs. If a title consists only of stop words, they are kept.
- Max length: cuts at the last separator before the limit so no word is chopped in half.
Slug best practices
- Keep slugs to three to six meaningful words and include the main keyword.
- Avoid dates and numbers that will age, such as "2019" in an evergreen guide.
- Do not change slugs of published pages without adding a 301 redirect — the .htaccess redirect generator helps with that.
- Use lowercase only: some servers treat
/Aboutand/aboutas different URLs.
Preview how the URL appears in search results with the SERP preview, or convert text between other styles such as camelCase with the case converter.
Slugs in code
Most frameworks ship a slug helper — Str::slug() in Laravel, slugify in Django, the slugify package in Node.js — and their output for plain English titles matches this tool. Differences appear with accents, symbols and non-Latin text, so this page is a quick way to check what a title will look like before you publish, to prepare slugs in bulk for an import, or to create file names and anchor IDs by hand. Paste a column of titles from a spreadsheet and copy the resulting column back — empty lines are preserved so rows stay aligned.
Privacy
The tool runs entirely in your browser. Nothing you type or paste is sent to our servers.