URL slug generator
Transliterates Latin letters and preserves other writing systems in Unicode.
- SECURE
- NO UPLOADS
- NO SIGNUP
- BROWSER BASED
- FREE
- FOREVER.
Support us with a link or a share
Nothing at the counter yet.
What a URL slug generator actually has to do
Turning a headline into a slug looks trivial until the headline contains a character
that is not in ASCII. Most generators handle that by deleting what they do not
recognize, which is why Södermalm comes back as sdermalm and
Straße comes back as strae. The result is a URL that is
unreadable, unsearchable, and impossible to guess.
For recognized Latin-script letters, the useful behavior is to map each letter to its
closest ASCII equivalent before stripping anything. That is a different
operation from stripping accents, because several characters are not accented letters at all —
ß, ø, æ and đ are letters in their
own right, and Unicode decomposition leaves them untouched.
Text copied from a PDF or page layout can also carry invisible formatting marks inside a word. They are removed here instead of becoming visible hyphens. If a source still behaves unexpectedly, the invisible character detector shows exactly which hidden code points it contains.
Greek, Cyrillic, Han and kana remain in Unicode. Those scripts have no single
language-neutral Latin transliteration, so guessing would change names and words rather
than clean them. Unicode paths are valid, but their non-ASCII characters are
percent-encoded in transport: /södermalm travels as
/s%C3%B6dermalm. If you have been handed an encoded address and want to see
what it says,
URL decode turns it back.
The headline itself usually needs a decision before it gets here, since a slug is normally made at the same moment as the display title. Capitalization is its own argument with its own rules, and title case settles it separately — the slug is lowercased either way, so the two choices genuinely do not interfere. What a slug is, and why the URL keeps mattering after the headline changes, is covered in what a URL slug is.
The ü question
There is no single right answer, which is why this tool asks. German convention
renders ü as ue, so Müller becomes
mueller. Swedish convention drops the diaeresis entirely, so the same
character becomes u. Pick the one that matches your content — a German
site using the Swedish rule produces slugs that read as misspellings to its own
audience.
The same split applies to ä and ö. Swedish maps them to
a and o; German maps them to ae and
oe.
Length, and where to cut
Long slugs are not penalized by search engines, but they are truncated in search results, wrapped awkwardly in messages, and painful to read aloud. If you cap the length, cut on a word boundary rather than mid-word — this tool moves the cut back to the last separator when doing so keeps most of the slug intact.
Batch mode
Paste an entire list of headlines, one per line, and every line is converted independently. Blank lines and lines with no letters or digits are skipped rather than producing empty slugs, and the receipt reports how many nonblank lines were skipped. This is the common case when migrating a site or planning a content calendar, and it is the reason the input is a text area rather than a single field. Downloaded lists use LF line endings and finish with one newline.
A domain name is a different layer of the address. When the job is to combine several lists of brand words, add prefixes or suffixes, and check the resulting domain endings, use the domain name finder. This page deliberately turns one finished title into a path; it does not query a registry or invent a brand.
Questions
Why do other slug generators break on ä and ö?
Most strip Latin letters they do not recognize instead of transliterating them, so "Södermalm" becomes "sdermalm". This tool maps supported Latin letters before removing their marks.
Should ü become u or ue?
It depends on the language. German convention is ue, Swedish convention is u. Switch the German umlaut mode on or off to match your content.
Does anything get uploaded?
No. The whole thing runs in your browser — nothing is sent anywhere, and the page works offline once loaded.