Make a string URL-, filename- and ID-safe
No uploads — conversion happens locally in your browser

A slug is a simplified version of text that stays readable while removing characters that often cause trouble in URLs, filenames, and identifiers. Think of it as a clean label you can safely paste into a path, a file, or a database key.
Slugs are especially useful when your input contains spaces, punctuation, accents, or mixed casing.
What problems does it solve?
Who is this for?
Privacy note: the conversion runs locally in your browser. If you also need to percent-encode a full URL, pair this with our URL Encoder.
Paste your text
Type or paste the original string into the Input box.
Review the slug output
The Output updates instantly. It typically lowercases text and replaces separators.
Copy with one click
Press the Copy button to copy the slug to your clipboard.
Two worked examples
If you need strict URL encoding (for example spaces to ), use URL Encoder. Slugifying and encoding solve different problems.
Blog post URLs
Background: you want a readable link for a post title.
Use the result in a route like .
Consistent filenames
Background: you save exports with predictable names.
Result: easier sorting, fewer issues across devices.
Tags and categories
Background: user-entered tags need to match reliably.
If you also normalize casing, pair it with Case Converter.
Stable IDs for copies
Background: you want IDs that stay consistent for the same label.
If you need a fixed-length identifier, you can hash the slug using Hash Text.
URL path segments
Great for turning headings into readable paths.
Not a replacement for percent-encoding reserved URL characters.
Cross-platform filenames
Helps avoid odd characters that break uploads or tooling.
Still avoid reserved names and extremely long filenames.
Human-readable IDs
Useful when IDs appear in logs or support tickets.
If uniqueness matters, add a suffix or hash.
Cleaning messy input
Removes punctuation and normalizes spacing.
Be careful with meaningful symbols like plus or slash.
Sanitizing for systems
Helps reduce input variability before storage.
It is not a security filter; validate on the server too.
Sharing links
Share the input and let others reproduce the same output.
For full URLs, encode after building the final URL.
Keep slugs stable
If you use slugs as IDs, changing your rules later will break links. Decide on a format once and keep it.
Prevent collisions
Slugify versus encode
Slugify makes text readable and safe-ish for paths. URL encoding preserves exact characters for transport. If you must preserve symbols, use URL Encoder.
Slugification is a sequence of text transforms. The exact rules can vary by project, but the idea is consistent: normalize, replace, filter, and tidy.
A readable mental model of the pipeline
Key pieces explained
Allowed character idea
URL path segments
A slug is often used as one part of a URL path. It is meant to be readable. A URL encoder is meant to preserve exact characters for transport.
Normalization
Unicode normalization helps ensure that visually similar text becomes comparable. This matters when users type accents or paste from different sources.
Safety and validation
Slugifying reduces risky characters, but it does not replace server-side validation and authorization. Treat slugs as user input.
Slugs use a separator so words stay readable. A common choice is a dash. You can think of it as turning whitespace into a safe character.
You can, but it usually removes meaningful characters like and . If you want to preserve the URL and encode it safely, use URL Encoder.
Yes. If different strings normalize and filter to the same characters, the output can match. If uniqueness matters, add a suffix or hash the slug.
It attempts to normalize many characters. Results depend on the mapping rules and the target system. Always test with your expected languages.
Lowercasing is common because it avoids duplicates that differ only by case. If your system is case sensitive, consistent casing prevents bugs.
The Output is the slug you can paste into paths, filenames, or IDs. When in doubt, test it in the exact place you plan to use it.
Slug rules are opinionated. If you need a specific format for a framework or a database, validate with your target system.
What this tool does not do
External references / sources
Use a simple chronometer (stopwatch) to track elapsed time down to milliseconds. Runs locally in your browser.
Normalize email addresses to a standard format for easier comparison. Useful for deduplication and data cleaning. Runs locally in your browser.
Estimate the time needed to consume a total amount at a constant rate, and get an expected end time. Runs locally in your browser.
Parse and decode your JSON Web Token (JWT) and display its content. All computation runs locally in your browser.
Know which file extensions are associated to a MIME type, and which MIME type is associated to a file extension. Includes a full MIME types table.
Generate random Lorem Ipsum placeholder text with customizable paragraphs, sentences, and word counts. Runs locally in your browser.