Slugify text — turn titles into clean URL slugs, one per line

Paste one or more titles and get a URL slug for each line, with accents removed, symbols like ß, ø and & spelled out, and the separator, stop words and maximum length under your control.

Live demo · real result from this tool

Slug

creme-brulee-10-easy-recipes-for-2026 

Processed on your device — nothing is uploaded.

How to use the slugify tool

  1. Paste your titles into Text (one slug per line). Blank lines are skipped.
  2. Choose a Separator: Hyphen (-), Underscore (_) or Dot (.).
  3. Keep Lowercase ticked for normal URLs, or untick it to keep the original capitals.
  4. Tick Remove short stop words (a, an, the, and, of…) for shorter slugs.
  5. Set Maximum length (0 = no limit), up to 200 characters, then copy the result. There is one slug per line, in the same order.

What it does and when to use it

A slug is the readable part of a URL, such as /blog/creme-brulee-10-easy-recipes. Use this tool to make slugs for blog posts, product pages, docs headings, Git branch names or file names. Batch mode helps when you import many titles from a spreadsheet.

For code identifiers rather than URLs (camelCase, snake_case and so on), use the developer case converter. If you need to keep non-ASCII characters in a URL instead of removing them, percent-encode the text with the URL encoder. The meta tags generator takes the finished URL as its canonical link.

How it works

Each line goes through these steps in order:

  1. Transliterate letters that do not decompose: ß→ss, æ→ae, ø→o, œ→oe, đ→d, ł→l, þ→th, ð→d, ħ→h, ı→i.
  2. Strip accents with Unicode NFKD normalisation, then remove the combining marks, so é becomes e.
  3. Replace & with the word “and”, and delete apostrophes, so “Don’t” becomes “dont” rather than “don-t”.
  4. Lowercase (if ticked) and split on anything that is not A–Z, a–z or 0–9.
  5. Drop the stop words a, an, and, as, at, by, for, from, in, is, of, on, or, the, to and with (if ticked).
  6. Join with the separator, trim to the maximum length at a separator, and remove any trailing separator.

This runs in your browser; nothing is uploaded.

Worked examples

Crème Brûlée: 10 Easy Recipes for 2026!  →  creme-brulee-10-easy-recipes-for-2026
Straße & Smørrebrød (separator _)        →  strasse_and_smorrebrod
The Art of the Deal (stop words on)      →  art-deal

Two lines with Maximum length 30:

Don't Panic: Node.js 22 Release Notes
Why we moved to PostgreSQL 17

gives

dont-panic-node-js-22-release
why-we-moved-to-postgresql-17

The first line would be 35 characters, so “-notes” is dropped at the separator. The dot in “Node.js” becomes a hyphen, like every other symbol.

Limits and tips

  • Changing a published slug breaks links. Add a redirect from the old URL when you change one.
  • Only the listed letters are transliterated. Other special Latin letters are kept only if Unicode can break them into a base letter plus an accent.

Frequently asked questions

Why is my slug empty?
The tool keeps only the ASCII letters A–Z and digits 0–9 after removing accents. Text in scripts such as Chinese, Japanese, Arabic or Cyrillic has no Latin letters left, so the line becomes empty. Transliterate it first, or write the slug by hand.
Hyphen or underscore?
Hyphens are the common choice for web addresses, and Google's URL guidelines recommend hyphens over underscores to separate words. Underscores and dots are offered for file names, IDs and keys where those are the convention.
Does stop-word removal ever remove everything?
No. If every word is a stop word, as in "The and of", the tool keeps them all and returns the-and-of instead of an empty slug.
Will the maximum length cut a word in half?
Not if it can avoid it. The cut moves back to the last separator, so a limit of 12 turns "a very long title indeed" into a-very-long. A single word longer than the limit is cut mid-word.
Does it check that the slug is unique on my site?
No. It only transforms text. If two titles give the same slug, your CMS or code must add a suffix such as -2.

Written by the ToolsRift team · Last updated

Pages are drafted with AI assistance and checked by automated tests. How we write and check pages.

Was this tool useful?

Report a problem

Start typing to search every tool.

↑ ↓ to moveEnter to openEsc to close