Skip to main content
ToolsBay

Case Converter

Switch text between UPPER, lower, Title, camelCase, snake_case and more.

Runs entirely in your browser — nothing is uploaded

Your text

1 line

Result — Title Case

1 line

Frequently asked questions

Why does Title Case keep the letter after an apostrophe lowercase?

Because that is correct English. "Don't" is one word, so only the D is capitalised. Many converters use a naive word-boundary rule and produce "Don'T".

What is the difference between camelCase and PascalCase?

Both join words without separators. camelCase starts lowercase (userName) and is conventional for variables in JavaScript and Java. PascalCase capitalises the first word too (UserName) and is conventional for class and type names.

Does it handle accented and non-English text?

Yes. Case conversion uses Unicode-aware rules, so café becomes CAFÉ and Straße is handled correctly rather than being stripped.

Converting between naming conventions

Most case conversion is mechanical until you hit the edge cases, which is where tools usually go wrong. Apostrophes are the classic one: a rule based on word boundaries sees the apostrophe in don't as a break and produces Don'T. This converter uses a letter-boundary rule instead.

The programming cases — camel, Pascal, snake, kebab and constant — all work by splitting the input into words first. That split understands existing camelCase, so XMLHttpRequest becomes xml-http-request rather than one long token. Converting between conventions is therefore lossless in both directions for ordinary identifiers.

Where each convention is used

  • camelCase — variables and functions in JavaScript, Java, Swift.
  • PascalCase — classes, types and React components.
  • snake_case — Python and Ruby identifiers, SQL column names.
  • kebab-case — CSS classes, HTML attributes and URL slugs. For URLs specifically the slug generator also strips accents and punctuation.
  • CONSTANT_CASE — environment variables and compile-time constants.
All text utilities