Case Converter
Convert text to lowercase, UPPERCASE, Title Case, Sentence case, camelCase, snake_case or SCREAMING_SNAKE_CASE instantly.
Loading tool…
How It Works
The converter rewrites your text into one of seven styles and shows the result as you type: lowercase, UPPERCASE, Title Case, Sentence case, camelCase, snake_case and SCREAMING_SNAKE_CASE. Pick a style from the selector; the transformation is a pure string operation, so nothing leaves the browser and the original input stays editable.
lowercase and UPPERCASE call the built-in JavaScript case functions over the whole string. Title Case capitalizes the first letter of every word and lowercases the rest, splitting words on spaces and hyphens — hello-world becomes Hello-World with the hyphen kept. Sentence case lowercases the entire text first, then capitalizes the letter that starts it and every letter that follows a period, exclamation mark or question mark plus a space.
The three identifier styles treat spaces, underscores and hyphens as word boundaries. camelCase strips the separators, keeps the first word lowercase and capitalizes every later word, preserving digit humps: hello123world becomes hello123World. snake_case joins the words with underscores in lowercase, and SCREAMING_SNAKE_CASE does the same in uppercase. Whitespace-only input is passed through untouched rather than collapsed or trimmed. Idempotency is a design property: converting text that is already in the target style returns it unchanged, so re-running a conversion is always safe.
How to convert a block of text
- Paste the text into the input box.
- Choose the target style from the case selector.
- Copy the converted output — the input stays editable for the next style.
- Re-run on text already in the target style with no risk: the conversion is idempotent.
Identifier styles at a glance (input: hello world)
| Style | Rule | Output |
|---|---|---|
| Title Case | Capitalize first letter of each word, keep hyphens | Hello World |
| Sentence case | Lowercase all, capitalize after . ! ? and at start | Hello world |
| camelCase | Strip separators; capitalize every word but the first | helloWorld |
| snake_case | Join words with underscores, lowercase | hello_world |
| SCREAMING_SNAKE_CASE | Join with underscores, uppercase | HELLO_WORLD |
Examples
Input
hello world (Title Case)Output
Hello WorldEvery word takes a capital first letter; the rest is lowercased.
Input
hello123world (camelCase)Output
hello123WorldDigits keep the camel hump: the letter after a number is capitalized.
Input
hello-world (snake_case)Output
hello_worldHyphens count as word separators alongside spaces and underscores.
Input
你好世界 (any mode)Output
你好世界Boundary: caseless scripts such as Chinese pass through unchanged.
Frequently Asked Questions
- Which case styles are supported?
- Seven: lowercase, UPPERCASE, Title Case, Sentence case, camelCase, snake_case and SCREAMING_SNAKE_CASE. The first four suit prose; the last three produce the identifier conventions used in code.
- Why does my acronym get lowercased?
- Title Case and Sentence case lowercase everything after the first letter of each word, and there is no acronym whitelist — API becomes Api or api. Convert acronyms back afterwards if you need them capitalized, or use camelCase, which preserves interior capitals.
- Does it change Chinese characters or emoji?
- No. Chinese characters, emoji and other caseless scripts have no upper/lower distinction, so they pass through every mode untouched — 你好世界 is identical before and after conversion.
- How are hyphens and underscores treated?
- In camelCase, snake_case and SCREAMING_SNAKE_CASE, spaces, hyphens and underscores are all word separators: "hello-world" becomes helloWorld, hello_world or HELLO_WORLD. Title Case keeps hyphens in place, giving Hello-World.
Limitations & Accuracy
Title Case has no acronym or article special-casing: API becomes Api and 'the' is capitalized like any word. Sentence case treats every . ! ? as a sentence end, so abbreviations such as Dr. start a false new sentence. Non-ASCII text (Chinese, emoji) is untouched in all modes, and whitespace-only input is returned exactly as submitted.