Text Case Converter — UPPERCASE, camelCase, snake_case & more

Switch any text between twelve case formats simultaneously — UPPERCASE, lowercase, Title, sentence, camel, Pascal, snake, kebab, CONSTANT, and dot. 100% in your browser.

UPPERCASE
Awaiting input…
lowercase
Awaiting input…
Title Case
Awaiting input…
Sentence case
Awaiting input…
camelCase
Awaiting input…
PascalCase
Awaiting input…
snake_case
Awaiting input…
kebab-case
Awaiting input…
CONSTANT_CASE
Awaiting input…
dot.case
Awaiting input…
aLtErNaTiNg
Awaiting input…
iNVERSE
Awaiting input…

What is a text case converter?

A text case converter reformats text into the exact capitalisation pattern your context demands — code identifiers, URL slugs, environment variables, headings, button labels, or polite prose. The OpenFormatter tool shows twelve cases at once so you can pick and copy without re-running anything.

Smart word splitting recognises whatever shape the input arrives in — camelCase, snake_case, kebab-case, dot.case, or plain whitespace — so you can paste a JavaScript variable and copy the same name as a Python identifier, an environment-variable key, or a CSS class. All conversion runs in your browser; nothing is uploaded.

How to convert text case — 4 steps

  1. Paste any text. A phrase, sentence, variable name, or heading — the converter splits it into words automatically.
  2. Read every case at once. Twelve panels update in real time as you type — no conversion button to click.
  3. Copy the case you need. Each panel has a one-click copy button — perfect for pasting into code, docs, or terminal commands.
  4. Iterate. Tweak the input and watch every output refresh instantly. The conversions are pure functions — same input, same output, every time.

Sample input and output

Input: "Open Formatter Text Case Converter"

UPPERCASE       → OPEN FORMATTER TEXT CASE CONVERTER
lowercase       → open formatter text case converter
Title Case      → Open Formatter Text Case Converter
Sentence case   → Open formatter text case converter
camelCase       → openFormatterTextCaseConverter
PascalCase      → OpenFormatterTextCaseConverter
snake_case      → open_formatter_text_case_converter
kebab-case      → open-formatter-text-case-converter
CONSTANT_CASE   → OPEN_FORMATTER_TEXT_CASE_CONVERTER
dot.case        → open.formatter.text.case.converter

Re-paste any output as input and the converter resplits it — round-trip safe between every case.

Twelve Cases at Once

No mode switch — every case renders simultaneously so you can compare and copy in one motion.

Smart Word Splitting

Recognises camelCase, snake_case, kebab-case, dot.case, and whitespace boundaries — round-trips between every format.

One-Click Copy

Each panel has its own copy button so you never highlight the wrong case by accident.

Client-Side Only

All conversion happens in JavaScript on your device — variable names, internal labels, and secrets stay local.

Common use cases

  • check_circleRenaming a variable across the camelCase / snake_case / kebab-case boundary
  • check_circleGenerating an environment-variable key (DATABASE_URL) from a config name
  • check_circleProducing a URL slug (kebab-case) from a blog post title
  • check_circleConverting a database column (snake_case) into a JSON field (camelCase)
  • check_circleDrafting a Title Case heading from sentence-case copy
  • check_circleReformatting CONSTANT_CASE config keys into PascalCase enum values
  • check_circleAuditing a file for inconsistent identifier casing
  • check_circleQuickly producing every case for a brand or product name

Naming conventions by language

LanguageVariablesClasses / TypesConstants
JavaScript / TScamelCasePascalCaseCONSTANT_CASE
Pythonsnake_casePascalCaseCONSTANT_CASE
Rustsnake_casePascalCaseCONSTANT_CASE
GocamelCase / PascalCasePascalCasePascalCase
CSS / HTMLkebab-case
SQL columnssnake_casesnake_case

More text utilities

Sort lines, count words, diff documents, or reverse text — every tool runs in your browser.

Frequently Asked Questions

What is the difference between camelCase and PascalCase?

Both join words without separators by capitalising each new word. The difference is the first letter — camelCase starts lowercase (myVariableName), PascalCase starts uppercase (MyClassName). JavaScript and Java use camelCase for variables and methods, PascalCase for classes and types. C# uses PascalCase for almost everything public.

When do I use snake_case vs kebab-case?

snake_case (underscores) is the convention in Python, Ruby, Rust, and most database column names. kebab-case (hyphens) is used in URLs, CSS class names, HTML attributes, and command-line flags. Hyphens are not valid in identifiers in most languages — that is why URLs use kebab-case and code uses snake_case.

What is CONSTANT_CASE for?

CONSTANT_CASE (sometimes called SCREAMING_SNAKE_CASE) is the universal convention for compile-time and environment-level constants — MAX_RETRIES, DATABASE_URL, API_KEY. The all-caps + underscore visually marks the value as immutable and globally meaningful.

How does the converter handle input that is already in a specific case?

The tool splits the input into words first, recognising camelCase boundaries, snake_case underscores, kebab-case hyphens, dot.separators, and whitespace. Then it re-assembles in the target case. So myVariableName, my_variable_name, and my-variable-name all produce identical output for a given target case.

What is sentence case?

Sentence case capitalises only the first letter of the first word and the first letter after each terminal punctuation (. ! ?). Modern style guides — Google, Microsoft, GitHub — prefer sentence case for headings and UI labels because it reads more naturally and is friendlier to non-English speakers. Title Case capitalises every significant word; sentence case capitalises only sentence starts.

Is the tool Unicode-safe?

Mostly. JavaScript's built-in toUpperCase / toLowerCase handle Latin, Cyrillic, Greek, and most accented characters correctly. A few language-specific edge cases exist — Turkish dotted/undotted I being the most famous — that pure JS does not solve without locale-aware variants. For 99% of English, European, and source-code text the conversions are exact.

Why does Title Case lowercase the rest of each word?

Because that is the standard definition: capitalise the first letter, lowercase the rest. Inputs like "API key" become "Api Key" — by design. If you want to preserve internal capitalisation (acronyms like API, URL, JSON), do the case change first and then re-apply the acronyms manually, or use a domain-specific style.

Is the text uploaded?

No. Every conversion runs in JavaScript inside your browser. Open DevTools → Network — typing in the input produces zero network traffic. Safe for variable names, secrets, internal copy, or any text you cannot paste into a remote tool.

Text Case Converter — UPPERCASE, lowercase, camelCase, snake_case, kebab-case