Slug Generator

How do I make a URL slug?

Result

cocuklar-icin-10-kolay-tarif

How it is calculated

The tool builds a URL slug in four steps. First it replaces accented Latin letters with their plain ASCII forms, upper and lower case: é, è, ñ, ü, ç, ğ, ı, İ, ö, ş, ł, ř, ž and the like drop the accent, while ß becomes ss, æ becomes ae, œ becomes oe and ø becomes o. Then it lowercases everything. Then every run of characters that is not a to z or 0 to 9 is replaced by a single hyphen, so spaces and punctuation collapse into one separator. Finally hyphens at the start and end are removed. Letters from other scripts, such as Cyrillic, Greek or Chinese, are not transliterated; they are treated as separators and dropped.

Worked example

Input: Çocuklar İçin 10 Kolay Tarif!. After folding Turkish letters: Cocuklar Icin 10 Kolay Tarif!. After lowercasing: cocuklar icin 10 kolay tarif!. Spaces and the exclamation mark become hyphens: cocuklar-icin-10-kolay-tarif-. The trailing hyphen is trimmed. Result: cocuklar-icin-10-kolay-tarif

Try this example →

Common mistakes

  • Feeding it text in a non-Latin script, such as Cyrillic or Chinese. Those letters are not transliterated, so a title written only in them gives an empty slug.
  • Expecting a title longer than needed to be shortened. The tool keeps every word, so cut filler words yourself for shorter URLs.
  • Changing a slug after the page is published. The old address stops working unless you add a redirect.
  • Using an underscore or keeping a symbol like & in a slug. Only letters, digits and hyphens survive here.

About this calculator

This tool converts any piece of text — typically a page title — into a slug: an all-lowercase, hyphen-separated string containing only URL-safe characters, with accented Latin letters folded to their plain-ASCII equivalents (é to e, ü to u, ß to ss, æ to ae, ø to o, ł to l, and the Turkish ç, ğ, ı, ö, ş), and spaces, punctuation and any other character, such as Cyrillic or Chinese, replaced by a hyphen. A clean slug is what turns "My New Blog Post!" into "my-new-blog-post" instead of a URL full of percent-encoded characters and spaces.

Bloggers, developers and content managers use it every time they publish a page, since most content management systems and static site generators expect a slug for the URL, and search engines treat short, readable, keyword-containing URLs as a modest ranking and click-through signal. It's also used for generating consistent filenames, anchor IDs, or identifiers from arbitrary user-entered text.

Was this helpful?

You can pick up to 3 reactions.

Comments (1)

  • Editorial team

    Watch for titles where symbols carry the meaning. Everything outside letters and digits becomes a hyphen, so C++ and C# both come out as plain c, and .NET becomes net. Two articles with such titles would then ask for the same URL. Check this before publishing and add a distinguishing word, such as cpp or csharp, by hand. Which non-Latin alphabets or symbols would you like a slug to handle better?

Popular calculators

All Calculators