Slug Generator
Turn titles into clean URL slugs with transliteration and separator options.
Your files never leave your device. Everything runs in your browser.
What Slug Generator does
Slug Generator turns a title, headline or file name into a clean, URL-safe slug as you type. It removes punctuation, folds accents, collapses repeated separators and, with the Lowercase box ticked as it is by default, puts everything in lower case. You choose hyphens or underscores, optionally cap the length, and copy the finished slug with one button.
The conversion follows a fixed pipeline, so results are predictable: the text is lowercased if requested, normalised to NFKD, and combining accent marks are stripped so accented Latin letters fold to their base forms. Every character that is not a letter, digit, space, hyphen or underscore then becomes a space, and runs of spaces, hyphens and underscores collapse into the single separator you picked. “Café au Lait & Crème” becomes cafe-au-lait-creme, and “My Awesome Blog Post!” becomes my-awesome-blog-post.
Because everything runs in the page, drafts, private titles and client names can be converted without pasting them into a form that stores them. The tool keeps no history and sends nothing anywhere.
How to use Slug Generator
- Type or paste the title into Title or text — the slug updates on every keystroke.
- Choose Hyphen (-) or Underscore (_) under Separator: hyphens are the web convention, underscores suit file names and code identifiers.
- Leave Lowercase ticked for the usual all-lower-case slug, or untick it to keep the original capitalisation.
- Set Max length if the destination has a limit; the default is 80 characters and 0 means no limit.
- Press Copy slug to put the result on your clipboard.
Features
- Live conversion of titles into slugs as you type.
- Accent folding through NFKD normalisation: café becomes cafe, über becomes uber, naïve becomes naive.
- Punctuation, symbols and emoji are replaced by the chosen separator instead of being kept.
- Runs of spaces, hyphens and underscores collapse into one separator, so double separators never survive.
- Optional maximum length that cuts the slug and removes a separator left dangling by the cut.
- Lowercase toggle and one-click copy; nothing is uploaded or stored.
Tips and common mistakes
- Accented Latin letters fold to their plain forms: “Über den Wolken” becomes uber-den-wolken, and “Café au Lait & Crème” becomes cafe-au-lait-creme.
- Letters without an ASCII base are dropped rather than transliterated: “Straße” becomes stra-e, “Smørrebrød” becomes sm-rrebr-d, and “Привет мир” produces an empty slug. Transliterate non-Latin scripts first, or write the title in Latin letters.
- Numbers are kept: “Top 10 Tips” becomes top-10-tips.
- Symbols become separators, so “C++ & C#” becomes c-c, and a title full of quotes and dashes such as My “Quoted” Title comes out as my-quoted-title.
- Max length cuts at exactly the limit and then strips a trailing separator: with a maximum of 11, my-awesome-blog-post becomes my-awesome (10 characters), not a dangling hyphen.
- With Lowercase unticked the original capitalisation is preserved, so “My Blog” becomes My-Blog. All-lower-case remains the safer default because URLs are case-sensitive on many servers.
- The length limit is applied after separators are collapsed, and values above the 200 shown in the field are not blocked by the input itself.
Frequently asked questions
What is a slug?
A slug is the readable part of a URL that identifies a page, usually built from its title. A page titled “10 Tips for Better Sleep” would typically live at /10-tips-for-better-sleep.
Do hyphens or underscores work better in URLs?
Search engines treat hyphens as word separators, so /my-blog-post reads as four separate words, while underscores are generally treated as part of one long word. Use hyphens for web addresses and keep underscores for file names or code, where they are the norm.
Why did my accented or non-Latin text disappear?
The tool removes accents by mapping accented Latin letters to their base forms, such as é to e. Characters without a mapping — including ß, ø, Cyrillic, Greek and CJK — cannot be folded and are dropped, so a Russian or Japanese title can produce an empty slug. Transliterate it first or type it in Latin letters.
Can I keep capital letters in a slug?
Yes. Untick Lowercase and the original capitalisation is kept, so “My Blog” becomes My-Blog. All-lower-case is usually safer because some servers treat /My-Blog and /my-blog as different addresses.
What does max length 0 do?
Zero disables the length cap entirely. Any positive number cuts the slug at that many characters and then removes a trailing separator left behind by the cut. The field accepts values up to 200.
Is anything sent to a server?
No. The slug is built in your browser from what you type, and nothing is uploaded, stored or logged.
Related text tools: Case Converter, Line Tools, Markdown Editor, Word Counter.
Slugs are generated entirely in your browser — the text you type is never uploaded or stored.