Case Converter
Convert text between upper case, lower case, title case, sentence case, camelCase, snake_case, and kebab-case.
How to use Case Converter
- 1Paste text
Paste the text you want to transform.
- 2Pick a case
Click any case button to see the transformed output.
About Case Converter
Converting text between different capitalization styles — upper, lower, title, camelCase, snake_case, kebab-case — is a constant minor task: renaming variables when adopting a new naming convention, formatting article headings, generating URL slugs from titles, converting between programming language idioms (Python snake_case vs JavaScript camelCase), or cleaning up data extracted from spreadsheets.
Doing it manually for more than a few words is tedious and error-prone. Utilify converts your input to all eight common case styles at once — UPPER, lower, Title, Sentence, camelCase, PascalCase, snake_case, and kebab-case. Click any output to copy. Title Case follows AP-style rules (lowercase articles and prepositions like "of", "the", and "and"); the programming case styles tokenize on spaces, hyphens, underscores, and case boundaries so they round-trip cleanly.
The distinction between camelCase and PascalCase catches people out: both join words without separators, but camelCase leaves the first letter lowercase (myVariableName) while PascalCase capitalizes it (MyClassName). By convention, most languages use camelCase for variables and functions and PascalCase for class and type names. snake_case (my_variable_name) is the Python and Ruby norm and also standard for SQL columns, while kebab-case (my-variable-name) is favored for URLs, CSS classes, and file names because hyphens are safe and readable in those contexts.
Generating a clean URL slug is one of the most common reasons people reach for this tool. Converting a heading like "10 Tips for Better Sleep!" to kebab-case yields "10-tips-for-better-sleep" — lowercase, punctuation removed, spaces turned into hyphens — which is exactly what search-friendly URLs and CMS permalinks expect.
Title case and sentence case solve editorial rather than technical problems. Title Case capitalizes the principal words of a heading; sentence case capitalizes only the first word and any proper nouns, which many modern style guides now prefer for headings because it reads more naturally. Seeing both side by side makes it easy to apply your publication's house style consistently.
Which case does each language actually expect?
The conventions below come from each language’s own authority — PEP 8 for Python, Effective Go, the Rust API Guidelines, the .NET naming guidelines — not habit. The gotchas are in the third and fourth columns:
| Variables & functions | Classes & types | Constants | |
|---|---|---|---|
| JavaScript / TypeScript | camelCase | PascalCase | UPPER_SNAKE_CASE (a.k.a. SCREAMING_SNAKE_CASE) by convention |
| Python (PEP 8) | snake_case | PascalCase (“CapWords”) | UPPER_SNAKE_CASE |
| Java | camelCase | PascalCase | UPPER_SNAKE_CASE |
| Go (Effective Go) | camelCase or PascalCase — capitalization controls visibility: exported names start uppercase | Same rule; no underscores anywhere | MixedCaps too — Go has no SCREAMING_SNAKE convention |
| Rust (API Guidelines) | snake_case | PascalCase | SCREAMING_SNAKE_CASE |
| Ruby | snake_case | PascalCase | SCREAMING_SNAKE_CASE |
| C# (.NET guidelines) | PascalCase for methods; camelCase for locals and parameters | PascalCase | PascalCase — not UPPER_SNAKE, the one most people get wrong |
Outside identifiers the split is by medium, not language: kebab-case owns URLs, CSS classes, and file names; snake_case owns SQL columns and environment-variable-adjacent config keys.
When to use Case Converter
- Variable renaming
Convert names between camelCase and snake_case when porting code across languages.
- URL slug generation
Turn an article title into a kebab-case slug suitable for clean URLs.
- CSV header cleanup
Normalize inconsistent column headers from exports into snake_case before importing.
Examples
The quick brown fox
theQuickBrownFox
The quick brown fox
the-quick-brown-fox
Case-conversion traps that bite later
- Putting kebab-case inside an identifier
Hyphens are for URLs, CSS classes, and file names — not variable names. In an expression my-total reads as my minus total, and declaring a kebab-case identifier is a hard syntax error in JavaScript, Python, Java, C#, Go, and Rust — the code fails to parse before a linter ever gets a chance to run. If you need a separator inside code, that is what snake_case and camelCase are for.
- The acronym problem
Style guides genuinely disagree on acronyms: Go keeps them all-caps (userID, parseURL), while the .NET and Google Java guides prefer capitalizing only the first letter (userId, XmlHttpRequest). Mechanical converters — this one included — treat a run of capitals as one glued token, so XMLHttpRequest becomes xmlhttp_request rather than xml_http_request. Whichever convention you pick, hand-check acronyms after converting.
- Case-only file renames on macOS and Windows
Renaming File.js to file.js is a real change to git but often invisible to macOS and Windows, whose default filesystems are case-insensitive. The result is a repo that builds on Linux CI and fails on a teammate’s laptop, or two files differing only in case that cannot both exist in a local checkout. Rename through an intermediate name (File.js → tmp.js → file.js) so git records the change on every platform.
- Leaking two conventions through an API boundary
A Python backend naturally emits snake_case JSON while a JavaScript frontend naturally consumes camelCase, and codebases that never decide on a boundary end up checking both spellings of every field. Pick the wire format deliberately, convert once at the edge (serializer or API client), and keep each side idiomatic internally.
Frequently asked questions
What is title case?+
It capitalizes the first letter of each major word while leaving articles and short prepositions ("of", "the", "and") lowercase, following AP-style rules.
Does this convert programming identifiers?+
Yes — camelCase, PascalCase, snake_case, and kebab-case are all produced, tokenizing on spaces, hyphens, underscores, and case boundaries so they round-trip cleanly.
What is the difference between camelCase and PascalCase?+
Both join words without separators; camelCase keeps the first letter lowercase (myVariable) and PascalCase capitalizes it (MyClass). Most languages use camelCase for variables and PascalCase for types.
How does it create a URL slug?+
Choosing kebab-case lowercases the text, strips punctuation, and replaces spaces with hyphens — for example "10 Tips for Better Sleep!" becomes "10-tips-for-better-sleep".
What is sentence case?+
Sentence case capitalizes only the first word (and proper nouns), like a normal sentence. Many style guides now prefer it for headings because it reads more naturally than Title Case.
Related tools
Count words, characters, sentences, paragraphs, and reading time for any text. Free and instant.
Remove duplicate lines from any text. Optional case-insensitive matching and sorting.
Format, beautify, and validate JSON online. Free, fast, runs entirely in your browser.