Skip to main content
UtilityStack

Slug Generator — clean URL slugs

Type any title and get a clean, URL-safe slug. Diacritics removed, special characters replaced with your separator of choice, lowercased, optionally truncated.

Slug36 chars
cafe-croissants-a-paris-edition-2026

What's a slug?

A slug is the human-readable, URL-safe portion of a URL — typically the path segment after the last slash. 'How to Roast Coffee' becomes 'how-to-roast-coffee' in the URL https://example.com/blog/how-to-roast-coffee. Good slugs are short, descriptive, lowercase and use a single separator (usually a dash) to mark word boundaries.

Generating slugs by hand for a couple of articles is fine; doing it for a hundred is error-prone. This tool runs the standard recipe: NFD-normalize to decompose accents, strip the combining marks, replace non-alphanumeric runs with the chosen separator, collapse repeats, trim, optionally lowercase and truncate. The output works as a URL path segment in every browser and CMS.

How to use this tool

  1. Type or paste your title in the input field. The slug appears live below.
  2. Pick your separator (dash is the default and the right choice for URLs; underscore for filenames; dot for some legacy systems).
  3. Toggle lowercase and adjust the max length if your CMS or routing has limits. Click Copy to put the slug on your clipboard.

Frequently asked questions

Why dashes instead of underscores in URLs?

Search engines treat dashes as word separators inside URLs but treat underscores as part of the same word. So 'why-react-fast' is read as three words; 'why_react_fast' is read as one. Always use dashes for SEO-relevant slugs.

What about non-Latin characters?

Latin scripts with diacritics (é, ñ, ü) are normalised to their base letter (e, n, u) — perfect for SEO. Non-Latin scripts (Cyrillic, Arabic, CJK) are stripped because most CMSes prefer Latin slugs. If you need to keep the original script, your URL routing has to handle Unicode (most modern systems do).

Should slugs include stop words?

Mild opinion — keep them. 'how-to-bake-bread' reads naturally; 'bake-bread-how' looks robotic. Modern search engines weight semantic meaning more than keyword density, so removing stop words rarely helps and often hurts readability.

How long should a slug be?

Aim for 50-80 characters. Most CMSes allow longer, but URLs that wrap across two lines in a tweet or chat message look bad and may get truncated. Use the max-length input to enforce a sensible cap.

Are my titles private?

Yes. Slugification happens entirely in your browser. Your titles never touch our servers, so the tool is safe even with unpublished content.

Common use cases

Where a clean slug saves real frustration.

Blog post URLs

Convert your post title to a slug before saving the draft. Most CMSes auto-generate, but their algorithms vary — verifying with this tool gives a consistent slug across platforms.

File and folder names

Generate clean, predictable file names from titles. 'My Project Notes – Final Draft' becomes 'my-project-notes-final-draft.md' — no spaces, no special characters, no surprises in shell scripts.

Database identifiers

Some applications use slugs as primary keys (Notion, Airtable). Generate them deterministically so you know what the URL will be before saving.

Migrating from a legacy CMS

Old URL: '/blog/123/article.aspx?id=42'. New URL: '/blog/the-actual-title-of-the-article'. Generate the new slugs in bulk to bring SEO with you to the new system.

Tips and shortcuts

Habits that make slugs durable and SEO-friendly.

Keep slugs stable

Once a slug is published, don't change it without setting up a 301 redirect. Search engines and external links use the slug as the canonical identifier — changing it loses the SEO equity built up over time.

Front-load keywords

Put the most important keywords at the start of the slug. 'best-coffee-grinders-2026' beats '2026-best-coffee-grinders' for SEO because search engines weigh leading words more heavily.

Don't include dates by default

Dates in URLs ('/2024/05/coffee-guide') make content feel stale fast. Unless your content is genuinely time-bound (events, news), keep the slug timeless and put the date in the page metadata instead.

Localise per language site

If you publish the same content in French and English, generate French slugs from French titles ('café-en-grain') and English slugs from English titles ('coffee-beans'). The auto-translated slug always reads worse than one written natively.

Ähnliche Tools