Slug Generator
Turn headlines into clean URL slugs, one line at a time
Your data stays with you. Conversion happens inside the browser; nothing is sent to a server.
Did this tool do the job?
Thanks, your feedback came through.
How it works
Paste your headlines into the left pane; every line becomes its own slug, so a whole content plan can be processed in one pass. The conversion runs in a fixed order. Accented and Turkish letters are transliterated to their plain ASCII equivalents first (é to e, à to a, ñ to n, ß to ss, ç to c, ğ to g, ı and İ to i, ö to o, ş to s, ü to u), and only then is the text lowercased. The order matters: had the capital dotted İ been lowercased first, it would have become a dotted i and the following clean-up would have thrown it away, which is how other tools turn 'İZMİR' into 'zmr'. Apostrophes are deleted rather than turned into a separator, because 'Beginner's Guide' is expected to give 'beginners-guide' and not 'beginner-s-guide'. After that everything outside a-z and 0-9 becomes the separator, runs of separators collapse into one, and separators at the start and end are trimmed — which is where percent signs, em dashes, colons and emoji disappear. Lines with no letter or digit left are skipped, and the result line reports how many slugs were produced and how long the longest one is. Copy the list with one click or save it as a .txt file.
This tool is also known as slug generator, url slug, seo friendly url, title to url, permalink generator.
What is Slug?
A slug is the short identifier that stands for a page in the address bar, made up of lowercase letters, digits and separators only: the headline 'Café Culture in İstanbul' becomes 'cafe-culture-in-istanbul'. The name comes from newspaper production, where a slug was the short internal label a story travelled under. It does two jobs at once — it tells a reader what the page is about before they click, and it is the key a content management system uses to find the page. It is expected to be permanent: changing a published slug breaks the old address, so it should only be changed alongside a redirect.
What is Permalink?
A permalink is the full address that is meant to keep working for the long term; the slug is its page-specific final segment. Blogs and news systems let you pick the permalink pattern in the settings: slug alone, date plus slug, or category plus slug. The more variables the pattern holds, the more fragile the address becomes — recategorise a post or correct its date and the address changes with it, leaving every old link on 404. That is why the common advice is to keep the pattern plain and build it on the slug alone.
Hyphen or underscore in a slug?
Web addresses use hyphens, not underscores, and the reason is interpretation rather than technology. Search engines treat a hyphen as a word boundary, so 'cheap-breakfast' is read as two words; an underscore has traditionally been treated as part of the word, so 'cheap_breakfast' looks like one long token and the words in the address contribute less to matching a query. The underscore has its own territory: in file and folder names, database columns and variable names a hyphen is often parsed as a minus sign, which is exactly why code conventions prefer the underscore. The separator option here exists for those two uses — if you are building an address, leave the default alone.
What makes a good slug
A slug is the permanent part of an address: once it is published, changing it breaks every link that pointed at it. That is an argument for deriving it from the subject rather than from the headline — headlines get rewritten over the years, subjects rarely do.
- Keep it short: three to five words covers most pages
- Leave out dates and issue numbers; updated content makes them lie
- Dropping 'and', 'the' and 'for' costs nothing and reads better
- Never reuse a slug on two pages; both are weakened in search
- If you must change a published slug, set up a 301 redirect from the old one
Which characters are transliterated, and which are dropped
The mapping covers the German umlauts ä, ö and ü, the ß (which becomes ss), the whole Turkish alphabet, and a handful of accented Latin letters that turn up in loanwords and names: â, î, û, é, ê, à and ñ. Everything on that list reaches the slug as a readable ASCII letter — note that ä becomes a rather than the two-letter ae used in German convention.
Anything outside it is removed rather than converted. A headline written in Greek, Cyrillic, Arabic or a CJK script produces nothing, so that line is skipped and the count on the result line tells you it was. If you need those scripts represented in the address, transliterate them before pasting.
Modern address standards do allow non-ASCII characters, so this is a compatibility choice rather than a technical requirement. A copied address with accented letters is re-encoded into percent sequences — 'café' shows up as 'caf%C3%A9' — some mail clients break the link at the wrong place, and some server and panel software refuses those letters in file names.
Why the dotted İ needs a rule of its own
In Turkish the capital of i is the dotted İ, and it is a different letter from the dotless I. Tools that lowercase the text before simplifying it usually lose that letter or map it wrongly, which is where mangled slugs like 'zmr' from 'İZMİR' come from.
Here the letter mapping runs before the lowercasing, so İ and ı both land on a plain i and the rest of the text is lowercased afterwards. 'İstanbul' gives 'istanbul' and 'IĞDIR' gives 'igdir'.
Frequently asked questions
Is it bad to use accented characters in a URL?
Not harmful — the standard permits them and search engines handle them. The difference is compatibility and legibility: a copied address expands into percent sequences, and some older systems and file name rules reject those letters. A plain ASCII slug carries none of that risk.
Should I use a hyphen or an underscore?
Use a hyphen in web addresses: search engines treat it as a word boundary, while an underscore is traditionally read as part of the word. The underscore option is here for file names, folder names and variable names in code.
What happens if two headlines produce the same slug?
This tool only transforms the text; it has no way of knowing what is already published on your site. Most content management systems append a number when a slug collides, but keeping addresses unique is a check you have to make on the publishing side.
Are the headlines I paste sent anywhere?
No. The conversion runs inside your browser, so an unpublished editorial calendar is safe to paste — nothing leaves the page.