Home/Text tools/Slug generator

Text tool

Slug Generator

Turns a headline into a clean, URL-safe slug — accented letters transliterated to plain ASCII, punctuation stripped, and separators consistent throughout.

Slug

cafe-style-creme-brulee-a-beginners-guide

Accent transliteration table

URL slugs are restricted to plain ASCII by convention, so accented letters need a stand-in. This tool maps each accented Latin letter to its closest unaccented equivalent rather than deleting it, which keeps the word recognisable.

A sample of the accent-to-ASCII mapping used
AccentedBecomesAccentedBecomes
á à â ä ã åañn
é è ê ëeçc
í ì î ïißss
ó ò ô ö õoæae
ú ù û üuœoe
ý ÿyøo

Café Crème Brûlée becomes cafe-creme-brulee, not caf-crm-brle — dropping the letter entirely instead of substituting it is a common bug in hand-rolled slug code, and it makes the slug much harder to read or guess.

The honest trade-off in removing stop words

Stripping words like a, the, of, and makes slugs shorter and can read cleaner: guide-beginners-creme-brulee instead of a-beginners-guide-to-creme-brulee. But it can also mangle meaning that depends on those exact words.

How to Cook a Turkey and How Not to Cook a Turkey both lose "not" if it happened to be on a stop-word list — it isn't on this one, but the general risk is real. Titles that hinge on a small function word (negations, "vs", possessives) can end up meaning something different once stripped. Use stop-word removal for length, not as a default — check the result reads correctly before publishing.

Why hyphens, not underscores

Both separators produce a technically valid URL, but Google's documentation has historically stated that it treats a hyphen as a word separator and an underscore as a word joiner — meaning coffee-shop is read as two words "coffee" and "shop", while coffee_shop can be read as the single token "coffeeshop". If a keyword in the slug matters for how the page is found, that difference between "two words" and "one long word" is worth choosing deliberately rather than by habit.

Hyphens have become the de facto convention for this reason — most CMS platforms (WordPress, Shopify) default to them. Underscores remain a reasonable choice for internal identifiers where no search engine will ever parse the string as words.

Questions people ask

What happens to numbers and existing hyphens in the title?

Numbers pass through unchanged. Existing hyphens, en dashes and em dashes are all treated as word separators and normalised to the chosen separator, so they do not create doubled-up separators.

Does the length cap cut a word in half?

No. The cap trims at the last whole word that fits within the limit, then removes any trailing separator — you will never get a slug ending in a partial word or a dangling hyphen.

What happens to non-Latin scripts, like Arabic or Chinese?

Characters this tool cannot transliterate are removed rather than left as broken byte sequences or over-long percent-encoded strings. For content in non-Latin scripts, many sites intentionally keep the native script in the URL instead of forcing an ASCII slug — check what your platform expects before assuming ASCII-only is required.

Is the slug guaranteed to be unique?

No — this tool has no knowledge of your other URLs. Uniqueness has to be checked against your own site; most CMS platforms append a number automatically if a slug is already taken.

Formatting a title for somewhere else?

Case conversion, whitespace cleanup and word counting sit right next door.

See all text tools →