Free Slug Generator
Convert any title or text into a URL-friendly slug. Perfect for blog posts, CMS pages, and SEO-optimised URLs.
Quick examples
Common uses
- Generate URL Slugs for Blog PostsConvert blog post titles into clean, SEO-friendly URL slugs for WordPress, Ghost, and any CMS.
- Generate Safe File Names from TitlesConvert document titles, photo names, or asset names into filesystem-safe filenames without spaces or special characters.
- Optimise URL Slugs for SEOCreate keyword-rich, concise URL slugs that help search engines understand and rank your pages.
- Generate Slugs for CMS and Headless SystemsCreate consistent slugs for Contentful, Sanity, Strapi, and other headless CMS content entries.
- Generate Product URL Slugs for E-commerceCreate clean, keyword-rich product page slugs for Shopify, WooCommerce, and e-commerce stores.
How It Works
The slug generator runs entirely in your browser with zero external libraries. It converts text to URL-safe slugs using a hand-written transliteration table for Cyrillic, Greek, and Latin special characters, combined with the browser's built-in Unicode normalization (NFKD) for accent stripping.
- 1Transliteration passEach character is looked up in a built-in CHARMAP table that maps non-ASCII scripts to Latin equivalents — Cyrillic (а→a, ж→zh, ш→sh), Greek (θ→th, ψ→ps), and Latin specials (æ→ae, ß→ss, ð→d). Characters with dedicated mappings like ё→yo are handled here before any further processing.
- 2Unicode normalization and accent strippingThe browser's native String.normalize('NFKD') decomposes precomposed characters — so á becomes a + combining acute accent. A regex then strips all combining marks (Unicode range U+0300–U+036F), reducing accented Latin letters like é, ñ, and ț to their plain ASCII base.
- 3Word splitting and stop-word filteringRemaining non-alphanumeric characters are replaced with spaces and the text is split into words. If stop-word removal is enabled, common English function words (the, and, of, in, …) are dropped from the word list. The words are then joined with your chosen separator (hyphen, underscore, or dot).
- 4Length truncation and outputIf a max-length limit is set, the slug is cut at the nearest word boundary before the limit — never mid-word — by scanning back to the last separator. The final slug is displayed instantly as you type, with character and word counts shown below.
Related Tools
URL Encoder & Decoder
Encode and decode URLs and query strings. Supports encodeURIComponent, decodeURIComponent, and query string parsing.
Dyslexia-Friendly Reformatter
Reformat any text for easier reading: generous letter and word spacing, taller lines, a capped line width, legible fonts, a soft background tint, and optional bold word-starts. All in your browser.
Meta Tag & Open Graph Generator
Generate SEO meta tags, Open Graph, and Twitter Card markup with a live Google and social-share preview. Copy straight into your page head.