URL Slug Generator

Free

Turn a headline into a clean, lowercase URL slug. Processed on Zyff’s servers — your text is never stored.

Opens on kebab-case with accents folded and whitespace normalised — the four settings that turn a headline into a URL slug.

Prose
Code & slugs
Playful

Lowercase words joined by hyphens. URL slugs, CSS classes, HTML attributes.

Your text
0 of 100,000 characters
Resultkebab-case
Nothing to convert yet
Paste or type something above and the converted text appears here.
Options
Identifier styles re-split the words and drop the separators, so acronyms are lowercased with everything else — NASA budget becomes nasaBudget.
Clean up first

All three are off by default, so what you paste comes back with its spacing and line breaks intact.

About the URL Slug Generator

Zyff's URL slug generator turns a title into the lowercase hyphenated form a URL wants, and the part that matters is what it does beyond hyphenating: accented Latin letters are folded to their base letters, so Café Münchner Straße becomes cafe-munchner-strasse rather than a slug carrying combining accent marks. Whitespace is normalised and line breaks are joined, because a slug is one line by definition. Kebab-case on its own is not a slug — a URL has to survive being typed from memory, copied out of an email and stored on a filesystem, and a precomposed accented character reliably does none of those.

How to generate a URL slug

  1. Paste the title

    One title per line for a batch. Punctuation, accents, multiple spaces and stray line breaks are all fine — normalising them is the job.

  2. Check the four preset options

    This page opens with accent folding, whitespace trimming, space collapsing and line-break removal all on, which together are what separates a slug from plain kebab-case. Each is still a switch you can turn off.

  3. Shorten it

    Cut the slug to the three to five words that carry the meaning. A slug's job is to be readable in a search result and typable in an address bar, and neither improves past about sixty characters.

  4. Copy it into your CMS

    Set it before the page is published if you can. Changing a live slug means a redirect, and a redirect chain is a real cost that a moment's thought at publish time avoids.

What the URL Slug Generator does

Accents folded, not dropped

café becomes cafe, Zürich becomes Zurich, Łódź becomes Lodz. Letters with no Unicode decomposition are transliterated explicitly — ß becomes ss, ø becomes o — because they are distinct letters rather than accented ones.

Latin script only

Greek, Cyrillic and Arabic are neither romanised nor re-spelled. Romanising is a language-specific judgement where a wrong guess is worse than the original, and quietly stripping their accents instead is worse than either.

One line, always

Line breaks are joined and runs of whitespace collapsed, so a title pasted out of a document does not produce a slug with a newline in it.

Batch by line

Paste a content plan and get a slug per row, ready to paste back into a spreadsheet.

Nothing is invented

The slug is derived from your words. No stop-word list quietly deletes half your title and no keyword is added.

At a glance

Output formLowercase words joined by single hyphens
Accent handlingLatin diacritics folded to base letters; ß, ø, ł, đ, þ, æ, œ transliterated
Non-Latin scriptsNot romanised and not re-spelled — a mark is only dropped from a Latin base letter
WhitespaceTrimmed, collapsed, and line breaks joined
Text limit100,000 characters per conversion, enforced on the server
Practical slug lengthThree to five meaningful words; readability falls off past about 60 characters

Frequently asked questions

What is a URL slug?

The human-readable part of a URL that identifies one page — the how-to-generate-a-url-slug in /guides/how-to-generate-a-url-slug. A good one is lowercase, hyphenated, made of words a person would recognise, and short enough to read in a search result.

Should a slug use hyphens or underscores?

Hyphens. Google has stated for years that it treats a hyphen as a word separator and an underscore as a word joiner, so my_great_page can be read as one token while my-great-page is read as three words. Underscores in URLs are a legacy of filesystem naming, not a web convention.

What happens to accented characters in a URL?

They have to be percent-encoded to travel, so café-menu becomes caf%C3%A9-menu on the wire — which is valid, ugly in a search result, and fragile when someone retypes it or a system normalises the Unicode differently. Folding the accent to a plain letter avoids all of that, which is why it is preset on here. Folding is confined to the Latin script, so a Greek or Cyrillic title is left for you to decide about rather than re-spelled.

How long should a slug be?

Long enough to be meaningful and no longer. Three to five substantive words is a good target; past about sixty characters a slug is truncated in search results and stops being typable. Drop the articles and conjunctions and keep the nouns.

Can I change a slug after publishing?

You can, but the old URL is now a 404 for every link and bookmark pointing at it, so it needs a 301 redirect to the new one. Redirects work, but they accumulate — and a chain of them is slower and loses a little at each hop. Getting the slug right before publishing is much cheaper than fixing it after.

Should the slug match the page title exactly?

It should overlap, not match. A title is written for a human reading a list of results and can be long; a slug should be the two or three words from it that identify the page. Slugs that reproduce a full sentence, stop words and all, are harder to read rather than more descriptive.

Guides for this tool