✦ tomai
Free · Text Tools

Case Converter

UPPERCASE, lowercase, Title Case, camelCase, snake_case and more

Input
Output

Every naming style has a habitat

⚡

Ten styles, one click

UPPERCASE, lowercase, Title Case, Sentence case, alternating case, camelCase, PascalCase, snake_case, kebab-case and CONSTANT_CASE each convert the same input with a single tap.

🔒

Camel-case aware

The word splitter recognizes camelCase boundaries, so feed in existing identifiers like userID and get user_id or user-id back without any word lost in translation.

🎯

Built for code

The output pane refreshes with every keypress, so a column name, CSS class or commit message can be flipped between styles without leaving the keyboard.

What Is a Case Converter?

A case converter rewrites text from one capitalization style to another without retyping. The need is practical: JavaScript expects camelCase variables and PascalCase classes, Python and databases expect snake_case, file names and URL slugs expect kebab-case, headlines expect Title Case. This tool offers ten modes in one editor — upper, lower, title, sentence, camel, pascal, snake, kebab, constant and alternating — converting live as you type. Before joining, it splits input at whitespace, hyphens, underscores and camelCase boundaries, so an identifier such as userAccountId is seen as three words and can be re-emitted as user_account_id with nothing lost.

How word splitting decides the result

  • ⬆️ UPPERCASE and ⬇️ lowercase rewrite the whole string in place, order untouched
  • 📖 Title Case capitalizes each word; Sentence case capitalizes only after sentence stops
  • 🐫 camelCase and PascalCase join with no separator, differing in the first letter only
  • 🐍 snake_case, kebab-case and CONSTANT_CASE join with underscores or hyphens
  • 🎭 Alternating case flips letter by letter, passing digits and punctuation through
  • ⚡ Live output with copy and clear, ready to drop into code or copy

Rewrite jobs it handles well

  • Renaming identifiers across a codebase after a style-guide change
  • Turning pasted ALL CAPS text into readable Sentence case
  • Deriving kebab-case slugs and CONSTANT_CASE keys from one feature name

Two honest limits: Title Case capitalizes small words like and or the that strict headline styles lowercase, and Sentence case triggers only after period, question and exclamation marks. Non-Latin scripts have no case forms and pass through unchanged. Everything runs in your browser — nothing typed is uploaded, keeping proprietary code safe on your own machine.

Last updated · 2026-09-01

Conversions that respect acronym boundaries

  • camelCase and PascalCase split on capitals; an acronym run like XMLParser counts as one boundary by this tool.
  • snake_case and kebab-case lowercase everything; SCREAMING_SNAKE stays upper for constants.
  • Title Case applies small-word rules (a, of, the stay lower mid-title) — what style guides actually prescribe.

Frequently asked questions

How does camelCase/snake_case handle existing camelCase input?⌄

Word boundaries are detected both at spaces/hyphens/underscores AND at lowercase-to-uppercase transitions, so "myVariableName" splits into "my", "variable", "name" correctly before converting to your chosen style.

Is my text uploaded anywhere?⌄

No — everything runs in your browser with plain JavaScript. Nothing you type is ever sent to a server.

Can I convert code identifiers, not just prose?⌄

Nothing is uploaded. Case conversion is a pure text transform done in your browser, which also means it works offline once the page has loaded.

Related tools

Related tools