Title Case Rules Explained: How Slugs Become Headings
How this converter turns a slug into a heading: separators, capitalization, small words, file extensions and the edge cases that trip people up.
From separators to spaces
A slug is a compact, machine-friendly string like the-lord-of-the-rings that packs words together with a single separator character. This converter treats hyphens, underscores and spaces as interchangeable word breaks, so it handles both kebab-case slugs and snake_case filenames without any setting to switch. Runs of separators collapse, which means a stray double hyphen or a trailing underscore never produces empty words or extra spaces. The result is a clean sequence of words ready to be capitalized into a heading.
The small-word convention
Traditional title case does not capitalize every word. Short function words such as articles (a, an, the), short prepositions (of, to, in, for, by) and coordinating conjunctions (and, or, nor, but) stay lowercase when they sit inside a phrase. This converter applies that rule from a fixed list of about twenty words, so the-lord-of-the-rings becomes The Lord of the Rings rather than The Lord Of The Rings. Crucially, the first and last words are always capitalized even if they are on the list, which is why a-day-in-the-life keeps its leading A capitalized as A Day in the Life. If you prefer the simpler start case where every word is capitalized, untick Keep small words lowercase.
Handling filenames and extensions
Slugs and filenames overlap, so the tool doubles as a filename beautifier. When the text ends in a recognized extension after the final dot, that extension is removed before conversion, turning report_final.pdf into Report Final. The extension list covers documents, images, audio, video and common source-code files. A dot that is not followed by a known extension, such as the version marker in v1.2-notes, is left in place, so you get V1.2 Notes instead of losing the number. This keeps genuine filenames tidy without mangling slugs that legitimately contain dots.
Edge cases and honest limits
The converter normalizes each word to one leading capital with the rest lowercased, which is great for cleaning up shouted or mixed-case input but means acronyms are not preserved: seo becomes Seo and html becomes Html. Numbers pass through untouched and still count as the first or last word for capitalization rules. Because the tool is deliberately simple and rule-based, it will not guess proper nouns, brand casing like iPhone, or Roman numerals; those are worth a quick manual fix after copying. And it is one-directional, so to build a slug from a heading you would reach for a slugify tool instead.