Bulk Slug Generator
Paste a list of titles or headlines and get a slug for each one in the same order. Handy for migrating a CMS, generating route maps, or producing identifiers for a batch import.
SEPARATOR
OPTIONS
10 to 500 characters
How it works
With Strip diacritics on (the default), the generator uses the browser's built-in String.normalize with the NFKD form to split accented letters into a base character plus a combining mark, strips combining marks using a Unicode property regex, and spells out letters that have no decomposition, such as ß (ss), ø (o) and ł (l). After lower-casing, any character other than an ASCII letter or digit is replaced with the chosen separator. With the option off, the text is normalised with the NFKC form, variation selectors (such as the emoji selector), other invisible letters and marks (such as the Hangul filler) and keycap marks are removed, and every Unicode letter and digit is kept with the combining marks that follow it. Leading and trailing separators are trimmed, and the result is truncated to the configured length without leaving a separator at the end.
Processing runs in your browser
All slug generation happens locally in your browser tab. Our servers are not involved at any point.
Frequently asked questions
- Does each slug stay on the same line as its title?
- Yes. The list is split at line breaks and each line is converted on its own, so line 5 of the output is always the slug of line 5 of the input. A title made only of punctuation or emoji gives an empty line rather than being skipped, so you can paste the slugs into the column next to the titles in a spreadsheet.
- Is there a limit on how many slugs I can generate?
- The limit is your browser's text-area capacity, which comfortably handles thousands of lines on modern machines.
- Are duplicate slugs deduplicated automatically?
- Each input line is converted independently, so duplicates remain. Sort or dedupe the output afterwards if your target system requires unique identifiers.
- Can I switch the separator for the whole batch?
- Yes. Toggling between hyphen and underscore re-generates the entire list with the chosen separator.
- What happens to empty lines?
- Empty input lines produce empty output lines so the row alignment between input and output is preserved.
Last reviewed September 30, 2026
Other pages for this tool
Related tools
- Background reading: Complete guide to developer tools