What each case style is for
Case conventions carry meaning — different communities settled on different styles for good reasons, and mixing them up stands out as an error. Here is what each output is used for.
- UPPER CASE
- Constants in many languages (
MAX_RETRIES,PI), environment variables, headings that must shout, and acronyms. Also used in legal documents for emphasis. - lower case
- Default for most prose input, filenames on case-sensitive file systems, and normalisation before comparison or search.
- Title Case
- Book titles, article headlines, chapter headings, and proper nouns. Every word starts with a capital letter.
- Sentence case
- Normal prose, UI labels, and button text. Only the first word of each sentence is capitalised — everything else stays lower.
- camelCase
- Variable and function names in JavaScript and Java (
getUserName,totalPrice). The first word is lower-case; every subsequent word starts with a capital. - snake_case
- Variable names in Python (
user_name), database column names (created_at), and many Unix shell scripts. Words are joined by underscores, all lower-case. - kebab-case
- URL slugs (
/text/case-converter), CSS class names (.hero-section), and HTML attributes. Words are joined by hyphens, all lower-case. Hyphens are URL-safe without encoding.
Worked example
Input: hello world
| Format | Result |
|---|---|
| UPPER CASE | HELLO WORLD |
| lower case | hello world |
| Title Case | Hello World |
| Sentence case | Hello world |
| camelCase | helloWorld |
| snake_case | hello_world |
| kebab-case | hello-world |
Casing is normalised before re-casing, so it doesn't matter how the original was typed: HELLO WORLD converts to exactly the same seven outputs as hello world above — every style folds the input to a known case first, then rebuilds it.
Edge cases and limitations
Acronyms lose their capitals in Title Case. The converter lowercases the whole string first, then capitalises only the first letter of each word, so "NASA mission" becomes "Nasa Mission" rather than "NASA Mission" — there's no dictionary of known acronyms to preserve them. Fix acronyms by hand after converting if you need them to stay fully capitalised.
Accented letters are dropped from camelCase, snake_case and kebab-case. Those three formats split words using plain ASCII letters and digits only, so an accented character is treated as a word break and discarded rather than kept — "café bar" becomes cafBar / caf_bar / caf-bar, losing the "é" entirely. UPPER, lower, Title and Sentence case don't have this problem, because they rely on the browser's built-in case-folding rather than this word-splitting step.
Title Case can miscount an accented first letter. Word-boundary detection for Title Case also only recognises ASCII letters, so a word starting with an accented character sometimes has its second letter capitalised instead of its first — "über cool" becomes "üBer Cool" rather than "Über Cool". This is a narrow edge case, but worth knowing for non-English text.
Locale-specific casing rules aren't applied. Case conversion here is locale-independent, so languages with casing exceptions — Turkish is the best-known example, where lower-case "i" should capitalise to dotted "İ" rather than plain "I" — convert using the ordinary Latin rule instead of the language-specific one.
Frequently asked
Does it handle punctuation and numbers?
Yes. Punctuation is preserved in upper, lower, title and sentence case. For camelCase, snake_case and kebab-case, non-alphanumeric characters act as word boundaries and are then removed, so only letters and digits appear in the output.
What about accented characters?
The converter uses the browser’s built-in toUpperCase() and toLowerCase(), which handle accented letters correctly for the Unicode Basic Multilingual Plane.
Is anything sent to a server?
No. All conversion happens in your browser. Nothing you type is transmitted anywhere.
Does Title Case know about acronyms like "NASA" or "USA"?
No. Every word is lowercased first and then only its first letter is capitalised, so acronyms come out as "Nasa" or "Usa" rather than staying fully upper-case. Restore acronyms by hand afterwards if you need them preserved.
Why did an accented word lose a letter in camelCase?
camelCase, snake_case and kebab-case split words using plain ASCII letters and digits, so an accented character is treated as a word break and dropped rather than kept — a known limitation for non-English text. UPPER, lower, Title and Sentence case are unaffected, since they use the browser's built-in case-folding instead.
Does it follow Turkish casing rules for "i"?
No. Conversion here is not locale-aware, so it always applies the ordinary Latin casing rule, where lower-case "i" becomes upper-case "I". Turkish text where "i" should capitalise to dotted "İ" will convert using the wrong rule.