URL Slug Generator
Turn a list of page titles into clean, readable URL slugs. Accents transliterated, filler words optional, duplicates caught across the whole list, and every slug checked against the things that make a URL age badly.
Page titles
0 slugs
Paste one or more titles and the slugs appear here, each checked for length, duplicates and the characters that do not survive a URL.
Result trail preview
Google shows the path as words, not as the raw URL
Add a title to see the breadcrumb trail your slug produces in a search result.
Short answer
A URL slug is the part of an address that identifies one page: in example.com/blog/technical-seo-audit the slug is technical-seo-audit. A good one is lowercase, separated by hyphens rather than underscores, three to six words long, and free of dates and session parameters. Google treats hyphens as word separators and underscores as joins, and it has described words in a URL as a very small ranking factor, so the real audience is the person deciding whether to click. Set the slug before publishing, because changing it later costs the page its history unless a 301 redirect carries it across.
What makes a slug good, and what makes one age badly
Almost every rule here exists for the reader rather than the crawler. A URL is the one piece of a result that appears in a browser bar, a chat message and a citation.
| Rule | Why | Example |
|---|---|---|
| Hyphens, not underscores | Google treats hyphens as word separators and underscores as joins | core-web-vitals beats core_web_vitals |
| Lowercase only | Paths are case-sensitive on most servers, so two cases can mean two URLs | /guides/audit, never /Guides/Audit |
| Three to six words | Long paths truncate in the result trail and are hard to share | technical-seo-audit beats how-to-perform-a-full-technical-seo-audit |
| No dates | A year in the path needs a redirect every time the page is refreshed | seo-checklist, not seo-checklist-2026 |
| ASCII characters | Anything else is percent-encoded the moment it is shared | muenchen-guide, not münchen-guide |
| No stop-word padding | Filler adds length without adding meaning to the path | guide-core-web-vitals, not a-guide-to-the-core-web-vitals |
| Unique across the site | Two pages cannot share a URL, and near-duplicates confuse both readers and crawls | One slug per topic, checked against the whole list |
The slug is the trail Google shows
Search results no longer print the raw URL. They show a breadcrumb trail built from it, with hyphens rendered as spaces, so the words in your slug are read as words. That is the strongest practical argument for writing them for a person.
Why changing a slug is expensive
A URL is an identity. Links, bookmarks, shares and the ranking history all attach to that string, and none of them follow automatically when it changes.
- Without a redirect, the old URL 404s. Every external link pointing at it stops passing anything, and readers arriving from an old share hit an error.
- With a 301, most of it carries across. Google has said permanent redirects pass signals, though reprocessing takes time and the transition is rarely instant.
- Chains compound the cost. A slug changed twice leaves two hops, and long chains lose crawlers and time.
- Internal links have to be updated too. Leaving them pointed at the old path makes every internal click a redirect that did not need to happen.
The cheap moment to get this right is before publishing. After that, the redirect chain checker is how you confirm the move actually landed in one hop.
What happens to the characters you cannot use
Most slug bugs are character bugs. A title arrives with an ampersand, an apostrophe or an umlaut, and the naive conversion produces something unreadable.
| In the title | Naive result | What this tool does |
|---|---|---|
| Google's Guide | google-s-guide | googles-guide, because an apostrophe closes a word rather than breaking it |
| Coffee & Cake | coffee-cake | coffee-and-cake, so the meaning of the ampersand survives |
| Straße | stra-e | strasse, because ß carries no accent to strip and needs its own mapping |
| München | m-nchen or münchen | munchen by default, muenchen with the German option on |
| 50% Faster | 50-faster | 50-percent-faster, keeping the number readable |
| Café: Notes | caf-notes | cafe-notes, with the accent transliterated and the colon collapsed |
The German option exists because the convention differs by language. Transliterating ü to u is standard in most contexts, and ue is what German readers expect.
How to generate URL slugs
Six steps, and the fifth is the one that catches the problem you cannot see in a single slug.
- 01
Paste your titles, one per line
The tool is built for a whole content plan rather than a single page, because duplicate slugs are only visible when you can see the list together. A spreadsheet column pastes straight in.
- 02
Set the base URL so you can read the finished address
A slug looks fine in isolation and wrong under its directory. Entering the base shows the full path, which is where a repeated segment like /blog/blog-seo-guide becomes obvious.
- 03
Keep hyphens and lowercase on
Google has said for years that hyphens separate words in a URL while underscores join them, and mixed case invites servers to serve the same page at two addresses. Both toggles exist to show the damage, not because the other setting is a real option.
- 04
Turn on the filler word filter for long titles
Dropping a, the, of and to usually removes a third of the characters and none of the meaning. Leave it off for short titles, where the function word is doing real work in the phrase.
- 05
Read the warnings before copying
Duplicates, years in the path, surviving non-ASCII characters and slugs past 60 characters are each flagged inline. The duplicate check is the one worth acting on immediately, because two pages cannot share one URL.
- 06
Set the slug once and redirect if it ever changes
Changing a live URL costs you the ranking history unless a 301 carries it across. Decide the slug at draft time, and if a change is unavoidable, redirect the old path and check the chain afterwards.
A slug is one part of what a search result says about a page. The SERP snippet preview shows the trail alongside the title and description, and the breadcrumb schema generator replaces that trail with labels you choose.
New URLs need to be findable
A page nobody links to and no sitemap declares is a page that waits. Add new slugs to your XML sitemap and link to them in context, with anchors built from the anchor text generator.
What this generator handles
Bulk conversion
A whole content plan at once, one title per line
Accent transliteration
é to e, ß to ss, ø to o, with a German umlaut option
Symbol mapping
Ampersands, percentages and currency signs become words
Filler word filter
Drops a, the, of and to, and stands down when nothing would be left
Duplicate detection
Checked across the whole list, not one slug at a time
Length and age warnings
Flags long slugs, years in the path and surviving non-ASCII
Full path preview
Your base URL plus the slug, and the trail Google renders from it
Runs in your browser
An unpublished content plan never leaves your machine
Slug rules are conventions, not algorithms
Frequently asked questions
What is a URL slug?
A slug is the part of a URL that identifies one page, the segment after the last slash. In https://example.com/blog/technical-seo-audit the slug is technical-seo-audit. It is the only part of a URL a reader is likely to actually read.
How long should a URL slug be?
Short enough to read at a glance, which in practice is three to six words and under about 60 characters. Length is not a ranking factor, but long paths get truncated in the result trail and are harder to paste, share and remember.
Should I use hyphens or underscores in URLs?
Hyphens. Google has stated that hyphens are treated as word separators while underscores join words together, so my_page_title can be read as one string rather than three words. Every major CMS defaults to hyphens for this reason.
Do keywords in the URL help SEO?
Slightly, and mostly for the reader. Google has described URL words as a very small ranking factor, and the practical benefit is that a descriptive path tells a person what they are clicking before the page loads. Do not stuff it, and never repeat the keyword across segments.
Should URLs be lowercase?
Yes. Paths are case-sensitive on most servers, so /Page and /page can serve the same content at two addresses, which splits signals and creates duplicates. Lowercase everywhere removes the question.
Should I remove stopwords from a slug?
Usually, on long titles. Words like a, the, of and to add characters without adding meaning to the path. Keep them when removing them makes the slug read as gibberish, because a slug nobody can read has lost its only real advantage.
Should I put dates or years in URLs?
Avoid them for anything you plan to update. A slug containing 2026 needs either a redirect or a stale URL the moment the page is refreshed for the next year, and the date adds nothing a reader cannot get from the page itself.
What happens to accented characters in a URL?
They are legal but get percent-encoded when shared, so café becomes caf%C3%A9 in most contexts. This tool transliterates them to their closest ASCII equivalent by default, with an option for the German convention where ä becomes ae rather than a.
Can I change a slug after publishing?
You can, but the old URL carries the page's history, so a permanent 301 redirect from old to new is required rather than optional. Without one you lose the accumulated links and the ranking they support, and readers hit a 404.
Should the slug match the page title exactly?
No. Titles are written for a search result and often carry a brand suffix, a year or a hook. The slug wants the topic in as few words as possible, so trimming the title down is normal rather than a mismatch.
How deep should URLs be nested?
Shallow. Every extra directory adds length and implies a hierarchy you then have to maintain. Two levels covers most sites, and a page that needs five is usually a sign the information architecture, not the URL, needs the work.
Does this slug generator work in bulk?
Yes. Paste as many titles as you like, one per line, and every slug is generated, checked for duplicates against the rest of the list, and copied out in one click. It all runs in your browser with nothing uploaded.
Other on-page SEO tools
Canonical Tag Checker
Validate canonical tags for self-referencing, protocol mismatches, trailing slash conflicts, noindex conflicts, and og:url consistency.
Use toolHreflang Validator
Validate hreflang tags for international SEO: self-referencing, return tags, x-default, language codes, and duplicate detection.
Use toolSchema & JSON-LD Validator
Validate structured data markup: required properties, date formats, nested entities, and JSON syntax. Supports all major schema types.
Use toolMeta Tag Checker
Check title tags, meta descriptions, Open Graph tags, Twitter cards, canonical URLs, robots directives, and viewport settings.
Use toolMeta Tags Generator
Write the title, description, and social share tags every page needs. Live character counts plus previews of how it will look in Google and on social.
Use toolKeyword Density Checker
See which words and phrases your copy actually leans on. Single word, two word and three word counts with density and first-mention position.
Use toolSERP Snippet Preview
See your title and meta description the way Google renders them, measured in pixels. Desktop and mobile, with the exact character your snippet is cut at.
Use toolAnchor Text Generator
Build branded, partial, long tail and naked URL anchor variations for any page, then audit the anchors you already have against a natural distribution.
Use toolClean slugs on pages nobody finds
A tidy URL matters once the page is indexed, linked and ranking. CrawlRaven crawls the site, joins it to Search Console and GA4, and shows which URLs earn impressions, which redirect for no reason, and which have been waiting on a crawl since launch.