Make URL-safe slugs from titles and names
Convert list items to slugs when you need URL-safe strings from a column of titles, product names, or headings. Each line is lowercased, and every run of spaces or punctuation becomes a single hyphen, with leading and trailing separators trimmed off.
Accented and non-ASCII letters are normalised and their diacritics removed, so Café Déjà Vu becomes cafe-deja-vu rather than dropping the words entirely. Runs of separators collapse to one, so extra spaces or symbols never produce a double hyphen.
Switch Separator to underscore for file-name style slugs, or turn off Lowercase to keep the original casing. It runs entirely in your browser. For code identifiers instead of URL slugs, see camelCase List Items.
How to use convert list items to slugs
- 1Paste your list into the input panel, one title or name per line.
- 2Leave Separator on Hyphen for URL slugs, or pick Underscore for file names.
- 3Keep Lowercase on for standard slugs, or turn it off to preserve casing.
- 4Watch each line collapse to a clean slug as you edit the input.
- 5Copy the result, or hit Download to save it as a plain text file.
Keyboard shortcuts
Drive ListShift without touching the mouse.
What the slugify tool does
Five concrete behaviours behind the slug output.
Accents are stripped to plain ASCII
Text is Unicode-normalised and combining marks are removed, so Café Déjà Vu becomes cafe-deja-vu. The letters survive as their base ASCII form rather than being dropped as unknown characters.
Non-alphanumerics collapse to one separator
Every run of spaces, punctuation, or symbols becomes a single separator. Multiple Spaces becomes multiple-spaces, and Product Name (2024) becomes product-name-2024 with no double hyphens.
Leading and trailing separators are trimmed
A slug never starts or ends with the separator, even if the line began or ended with spaces or punctuation, so the result is always clean at both ends.
Lowercase is on by default but optional
By default the whole slug is lowercased. Turn Lowercase off to keep the original casing when you need case-preserving anchors or IDs.
Empty results are dropped
A line that has no letters or digits (only punctuation, say) produces nothing and is skipped, so you never get an empty slug or a bare separator in the output.
Worked example
Punctuation, accents, extra spaces, and parentheses all resolved into clean hyphenated slugs.
Hello, World! Café Déjà Vu Multiple Spaces Product Name (2024)
hello-world cafe-deja-vu multiple-spaces product-name-2024
Settings reference
How each option changes the output, using the sample list above as the input.
| Setting | What it does | Effect on the sample |
|---|---|---|
| Separator: Hyphen (default) | Joins words with hyphens | Hello, World! gives hello-world |
| Separator: Underscore | Joins words with underscores | Hello, World! gives hello_world |
| Lowercase: on (default) | Lowercases the whole slug | Café gives cafe |
| Lowercase: off | Keeps the original casing | Café gives Cafe |
| Accents (automatic) | Normalised and stripped to ASCII | Déjà gives deja |
| Extra separators (automatic) | Runs collapse to one; ends trimmed | Multiple Spaces gives multiple-spaces |