tooloora

Slug Generator — clean URL slugs from any title

Turn titles into clean, SEO-friendly URL slugs — with proper German umlaut handling (ä→ae), live as you type, in your browser.

Runs locally — nothing is uploaded

Non-Latin scripts (Cyrillic, CJK …) are not transliterated — they are removed.

Runs entirely in your browser — no upload.

Generate URL slugs live in your browser

Type or paste a title — the finished slug appears instantly below: lowercase, hyphen-separated, free of special characters. The German mode handles umlauts properly (ä→ae, ö→oe, ü→ue, ß→ss), and separator plus lowercasing are toggleable. Everything runs locally in your browser — no upload, no signup.

What makes a good slug?

The slug is the readable part of a URL that identifies the page — my-first-post in example.com/blog/my-first-post. The technical foundation is RFC 3986 (2005): the standard defines exactly 66 "unreserved characters" (A–Z, a–z, 0–9 plus -, ., _, ~) that are allowed in URLs without percent-encoding. Everything else — spaces, umlauts, punctuation — must be encoded (%C3%A4 for ä), which makes URLs ugly and error-prone when shared. A good slug therefore sticks to lowercase letters, digits and hyphens. Keeping it short pays off practically too: the sitemap protocol (sitemaps.org) allows at most 2,048 characters per URL.

Hyphen or underscore?

Hyphen. Google's Search Central documentation on URL structure explicitly recommends separating words with hyphens (-) rather than underscores (_), because hyphens are treated as word boundaries. This tool's underscore option exists for cases where a system demands it — internal file or field naming, for example.

How does the German mode handle umlauts?

Order is everything: the German mode first replaces ä→ae, ö→oe, ü→ue and ß→ss, and only then strips remaining accents via Unicode decomposition (NFD). Decomposing directly would reduce ä to a plain a — "Größe" would become "grose" instead of the correct "groesse". The English mode does the opposite on purpose (ä→a, é→e), matching what international CMS slug functions usually do. Examples:

  • "Größenwahn & Co." → DE: groessenwahn-co · EN: grossenwahn-co
  • "Café Décor" → both modes: cafe-decor

Repeated separators collapse into one, and separators at the start or end are stripped.

What are the generator's limits?

An honest limitation: non-Latin scripts (Cyrillic, Chinese, Arabic, Greek …) are not transliterated — they are removed, so a purely Cyrillic title yields an empty slug. Proper support requires language-specific transliteration tables that this deliberately lean tool does not ship. Alternative: modern browsers and servers also accept percent-encoded Unicode URLs (IRIs), as used by Wikipedia, for example.

Is my title sent anywhere?

No. The slug is generated on your device with every keystroke — nothing is uploaded or analyzed. Unpublished article titles, product names and internal project names stay private; the tool even works offline.

Frequently asked questions

What is a URL slug?

The slug is the human-readable last part of a URL that identifies a page, e.g. 'my-first-post' in example.com/blog/my-first-post. Good slugs are short, lowercase, use hyphens between words and contain only characters that RFC 3986 allows unescaped — exactly what this generator produces.

How are German umlauts handled?

In German mode, ä→ae, ö→oe, ü→ue and ß→ss before other accents are stripped — 'Größenwahn' becomes 'groessenwahn'. In English mode, accents are simply removed (ä→a, é→e), which is what most international CMS slug functions do. Pick the mode that matches your audience's expectations.

Should I use hyphens or underscores?

Hyphens. Google's documentation on URL structure explicitly recommends hyphens (-) instead of underscores (_) to separate words, because hyphens are treated as word separators. The underscore option exists for systems that require it, e.g. some file naming schemes.

Is my text sent to a server?

No. The slug is generated live in your browser as you type — nothing is uploaded, no analytics on your input, and it works offline. Unpublished titles and internal project names stay on your machine.

What about Chinese, Cyrillic or Arabic text?

An honest limitation: this generator does not transliterate non-Latin scripts. Characters outside the Latin alphabet are removed, so a purely non-Latin title yields an empty slug. For those languages you need a language-specific transliteration; modern browsers and servers alternatively accept percent-encoded Unicode URLs.