Case Converter

Type or paste your text and pick a conversion style below.

UPPER CASE

HELLO WORLD

lower case

hello world

Title Case

Hello World

Sentence case

Hello world

camelCase

helloWorld

PascalCase

HelloWorld

snake_case

hello_world

kebab-case

hello-world

About Case Converter

The Case Converter transforms any text into one of eight different case styles instantly, all in your browser. Whether you need camelCase for JavaScript variables, snake_case for Python, or Title Case for headlines, this tool handles it in one click.

Available case styles

  • UPPERCASE — every letter capitalised. Useful for headings, labels, and constants.
  • lowercase — every letter lowercased. Handy for normalising data or writing CSS class names.
  • Title Case — first letter of each word capitalised. Standard for headings and proper nouns.
  • Sentence case — only the first word capitalised. Correct for most body text sentences.
  • camelCase — words joined, each except the first capitalised. Convention in JavaScript and Java.
  • PascalCase — like camelCase but the first word is also capitalised. Used for class names.
  • snake_case — words separated by underscores, all lowercase. Python, Ruby, and database columns.
  • kebab-case — words separated by hyphens, all lowercase. CSS classes and URL slugs.

How to use

Type or paste your text into the input field, then click any of the format buttons. Each button shows a live preview of the converted result and includes a one-click copy button. You can convert the same text to multiple formats without retyping.

About the Case Converter

A case converter rewrites text into a chosen letter-casing style without changing the underlying words. This tool supports the full set of common conventions: UPPERCASE, lowercase, Title Case, Sentence case, camelCase, PascalCase, snake_case, kebab-case, CONSTANT_CASE, and inverted case. Conversion is purely a string transformation and happens instantly as you type — paste once, copy any version.

Case-conversion problems show up everywhere in software and writing. Programmers convert between casing conventions when refactoring code or generating identifiers across languages with different style rules; writers normalise headlines and lists; data engineers clean inconsistent CSV exports where one team typed names in ALL CAPS and another used title case.

The naming conventions you'll see in code

Most programming style guides specify a single casing for each kind of identifier. JavaScript and Java use camelCase for variables and PascalCase for classes. Python and Ruby use snake_case for variables and PascalCase for classes. Rust uses snake_case for functions and PascalCase for types. CSS uses kebab-case for class names and properties. C/C++ macros and environment variables traditionally use CONSTANT_CASE. Converting an identifier from one ecosystem to another is a frequent and tedious task; this tool does it in one click.

Title Case versus Sentence case

Title Case capitalises the first letter of every major word (typically all words except articles, short conjunctions, and short prepositions). It is used for book titles, article headings, and proper-noun-heavy lists. Sentence case capitalises only the first word and any proper nouns within. Most house style guides prefer sentence case for UI labels and form headings because it reads more naturally; Title Case remains standard for editorial headlines in U.S. journalism.

How to use the Case Converter

  1. Paste your source text

    Drop the text you want to re-case into the input box. The original is preserved while every variant is computed.

  2. Choose the target casing

    Each variant appears in its own box with a one-click copy button. There is no "Convert" button to press — every casing is shown simultaneously.

  3. Copy the result

    Click the copy icon next to the variant you want. The transformed string is placed on your clipboard.

Worked examples

Example 1

Input: Hello World From Toolbox

Result: helloWorldFromToolbox

camelCase — common for JavaScript and Java variable names.

Example 2

Input: hello world from toolbox

Result: hello-world-from-toolbox

kebab-case — used by CSS class names and URL slugs.

Example 3

Input: helloWorldFromToolbox

Result: hello_world_from_toolbox

snake_case — typical Python and Ruby variable naming. The tool correctly detects internal capitals and inserts separators.

Real-world use cases

  • Refactoring an identifier across programming languages with different conventions.
  • Cleaning inconsistent product or person names imported from a spreadsheet.
  • Generating URL slugs from article titles for static site generators.
  • Producing CONSTANT_CASE keys for environment variables and configuration files.
  • Rewriting headlines for editors who prefer sentence case over Title Case.

Tips & common mistakes

  • For programming identifiers, prefer the explicit camelCase, snake_case, or kebab-case outputs — Title Case may include unwanted spaces or punctuation.
  • Title Case rules vary slightly by style guide (AP, Chicago, MLA). The tool uses a widely accepted set: capitalise everything except articles, short conjunctions, and short prepositions of four letters or fewer.
  • Inverted case (FLIPS THE case OF EVERY LETTER) is mostly a novelty, but is handy for quickly testing case-insensitive matching in search code.

Frequently asked questions

Does Title Case work with non-English text?

It handles diacritics (é, ñ, ü) correctly because JavaScript's Unicode-aware string methods are used. Languages without an upper/lower distinction (Chinese, Japanese, Korean, Arabic, Hebrew, Hindi) pass through unchanged.

Will it preserve acronyms like NASA or HTML?

When converting to camelCase, snake_case, or kebab-case, acronyms are normalised to the surrounding case style — NASA becomes nasa, Nasa, or NASA depending on the variant. There is no universal correct behaviour here; if you need to preserve acronym casing, edit the output manually after conversion.

Why does my snake_case output have leading underscores?

That usually happens when the input starts with a capital letter. Several conventions (Python's "_private", JavaScript's "_internal") treat a leading underscore as meaningful, so it is preserved rather than silently stripped.

Is there a length limit?

The tool handles documents up to several hundred thousand characters without lag. Beyond that you may notice typing latency; in that case, work in smaller chunks.

Related tools

Last updated: June 2026 · All processing happens locally in your browser.