Skip to content

Tool 08 / Change case

Change the case without retyping a word.

Fix a headline in one click, normalize a column of names, or turn a sentence into a variable name. Twelve cases, one input, and no formatting to clean up afterwards.

  • Free to use
  • 12 cases
  • Runs locally
Live workbenchTitle Case
Choose a case
Text
Code

Text modes keep punctuation and spacing. Code modes split the input into words, drop punctuation, and join them with the selected convention.

Converted
9 words1 lines43 chars outNever uploaded

What it does

A case converter changes the capitalization of text without changing the words themselves. That sounds trivial until you have a column of 400 names in mixed case, a headline that came out of a content management system in all caps, or a phrase that needs to become a JavaScript variable before lunch.

This tool covers two families of casing. The text modes — uppercase, lowercase, title case, sentence case, toggle case, and alternating case — preserve the words, punctuation, and spacing you pasted. The code modes — camelCase, PascalCase, snake_case, kebab-case, CONSTANT_CASE, and dot.case — split the input into words and rebuild it using a programming convention. The two families behave differently on purpose, and the notes below explain exactly how.

The conversion happens live in the browser. The original stays in the left box, the converted text appears on the right, and you can switch modes without losing the input. Nothing is uploaded, and there is no saved history.

How to use it

  1. Paste or type the text into Your text.
  2. Choose a case from the button grid. The badge at the top of the tool shows the active mode, and the conversion updates immediately.
  3. Read the result. Text modes keep punctuation and spacing; code modes remove punctuation and join the words with a separator.
  4. Use Copy or Download to take the result with you.

If the output looks empty in a code mode, the input probably contained no letters or numbers — only punctuation, symbols, or emoji. Switch to a text mode if you need to keep those characters.

Modes explained

Text modes

UPPERCASE
Converts every cased letter to uppercase. Punctuation, numbers, spacing, and line breaks are untouched.
lowercase
Converts every cased letter to lowercase. Useful for normalizing email addresses, usernames, tags, and imported data.
Title Case
Lowercases the whole string, then capitalizes the first letter of each word. A word boundary is a space or most punctuation; apostrophes do not start a new word, so “don’t” becomes “Don’t”, not “Don’T”.
Sentence case
Lowercases the whole string, then capitalizes the first letter after the start, a newline, or a period, exclamation mark, or question mark followed by whitespace. It handles opening quotes and other punctuation before the first letter.
tOGGLE cASE
Swaps the case of each letter: uppercase letters become lowercase and lowercase letters become uppercase. Digits, punctuation, and emoji are unaffected.
aLtErNaTiNg
Alternates lowercase and uppercase across the letters, ignoring spaces and punctuation when counting. It starts with lowercase, so “hello” becomes “hElLo”.

Code modes

The code modes first split the input into words. Letters and numbers are kept; spaces, punctuation, underscores, hyphens, and emoji are treated as separators. Boundaries inside camelCase and PascalCase are split too, and an acronym is separated from a following capitalized word.

camelCase
The first word is lowercased, and each following word is capitalized with no separator. “User account ID” becomes userAccountId.
PascalCase
Every word is capitalized and joined without a separator. “User account ID” becomes UserAccountId.
snake_case
Words are lowercased and joined with underscores: user_account_id.
kebab-case
Words are lowercased and joined with hyphens: user-account-id. Useful for CSS class names, URL slugs, and file names.
CONSTANT_CASE
Words are uppercased and joined with underscores: USER_ACCOUNT_ID. Common for environment variables and constants.
dot.case
Words are lowercased and joined with dots: user.account.id. Useful for configuration keys and some object paths.

Examples

Clean up a headline
Title Case

Before

the quiet economics of a maintenance window

After

The Quiet Economics Of A Maintenance Window

The mechanical title case capitalizes “Of” and “A” as well as the longer words. That is predictable, but it is not the same as a newspaper style guide. For a polished headline, use this as a starting point and lowercase the short articles and prepositions you want to leave down.

Turn a label into a variable
camelCase

Before

HTTP response code

After

httpResponseCode

The acronym boundary is split into a separate word, so “HTTP” becomes the lowercase first word rather than hTTPResponseCode. If your codebase prefers to keep acronyms uppercase inside identifiers, adjust that part by hand; the tool deliberately produces a consistent, readable identifier instead.

Normalize a spreadsheet column
snake_case

Before

Account Name
Account ID
Billing Country

After

account_name
account_id
billing_country

Every line is converted independently. The line breaks stay in place, so the result can go straight back into a column without being re-split. Punctuation such as a stray colon or dash is removed by the word splitter.

When it earns its keep

  • Content cleanup. Normalize a headline, a product name, or a list of labels that arrived in inconsistent case.
  • Data preparation. Lowercase email addresses and tags, or turn display names into slugs before an import.
  • Programming. Convert a human-readable label into camelCase, snake_case, or CONSTANT_CASE for a variable, a JSON key, or an environment variable.
  • Design and copy testing. Compare a headline in title case and sentence case without retyping it into a second document.
  • Accessibility experiments. Check how a screen reader handles a block of uppercase text, or test whether a label still reads well when the case changes.

Limits worth knowing

  • Title case is mechanical. It lowercases acronyms and proper nouns and capitalizes short words. It does not know that “iPhone” should keep its internal capital or that “NASA” should stay uppercase.
  • Sentence case is punctuation-based. Abbreviations, decimals, and quoted sentence fragments can confuse it. Review the output before publishing.
  • Code modes remove punctuation and symbols. That is the point of an identifier, but it also means the result is not a faithful copy of the input. Keep the original in the left pane until you have copied what you need.
  • Acronym handling is consistent, not configurable. “XMLHttpRequest” becomesxmlHttpRequest in camel case. Many codebases would write xmlHTTPRequest instead. Adjust by hand if your convention differs.
  • Case mapping is locale-independent. The Turkish dotless ı and dotted İ follow the browser’s default Unicode mapping, not Turkish-specific rules. Check the result if you are working in a locale with special casing.
  • Some characters expand when uppercased. The German ß becomes SS, so the output can be longer than the input. This is standard Unicode case mapping, not a counting bug.

Page updated

Questions, answered

Does title case follow AP or Chicago style?

No. It is a mechanical title case: the input is lowercased, then the first letter of each word is capitalized. Short words such as “of” and “the” are capitalized too, and proper nouns and acronyms are not protected. It is the right tool for a quick headline cleanup, not for enforcing a publication style guide.

Why did “NASA” become “Nasa” in title case?

Title case lowercases the whole string before capitalizing the first letter of each word. An acronym is treated like any other word. If you need to keep an acronym intact, convert the rest of the text first and fix the acronyms by hand, or use a find-and-replace pass afterwards.

What counts as a word in the code modes?

Letters and numbers are kept. Spaces, punctuation, underscores, hyphens, and emoji are treated as separators. The splitter also breaks camelCase and PascalCase boundaries and separates an acronym from a following capitalized word, so “XMLHttpRequest” becomes the words “XML”, “Http”, and “Request”.

Why does sentence case capitalize after “e.g.”?

Sentence case uses punctuation as a cue, not a language model. A period, exclamation mark, or question mark followed by whitespace starts a new sentence as far as the tool is concerned. Abbreviations and decimal points can therefore produce an unexpected capital. Check the output and fix those few cases manually.

Does toggle case work on accented letters?

Yes, for ordinary cased letters. It swaps lowercase and uppercase using the browser’s Unicode case mapping. Some characters expand when uppercased — the German ß becomes SS, for example — so the output can be slightly longer than the input. Characters without a case, such as digits and emoji, are left alone.

Is my text uploaded when I change its case?

No. The conversion is a local JavaScript operation. The text stays in the tab, and the page does not send it to a server, log it, or store it between visits.

All tools →