Case Converter
Convert text to UPPERCASE, lowercase, Title Case, and more.
Introduction
Writing code, formatting documents, fixing copied text, or preparing content for a specific system — you constantly need text in a specific case format, and it's rarely in the right one when you start. Retyping or manually fixing case on long strings is error-prone and slow.
This Text Case Converter handles all the major case formats instantly. Paste your text, click a case format, and the converted result is ready to copy. All conversion happens in your browser — nothing is sent anywhere.
Technical & Concept Breakdown
Each case conversion applies a specific transformation rule to the input text:
UPPERCASE: Every character converted to its capital form.
text.toUpperCase() // "hello world" → "HELLO WORLD"
lowercase: Every character converted to its small form.
text.toLowerCase() // "Hello World" → "hello world"
Title Case: First letter of each meaningful word capitalized.
text.replace(/\w\S*/g, w => w.charAt(0).toUpperCase() + w.slice(1).toLowerCase())
// "hello world" → "Hello World"
Sentence case: First letter of each sentence capitalized, rest lowercase.
text.toLowerCase().replace(/(^\s*\w|[.!?]\s*\w)/g, c => c.toUpperCase())
// "hello world. good morning" → "Hello world. Good morning"
camelCase: No spaces, each word after the first starts uppercase.
// "hello world" → "helloWorld"
PascalCase: Like camelCase, but first word also capitalized.
// "hello world" → "HelloWorld"
snake_case: All lowercase, spaces replaced with underscores.
// "hello world" → "hello_world"
kebab-case: All lowercase, spaces replaced with hyphens.
// "hello world" → "hello-world"
CONSTANT_CASE: All uppercase, spaces replaced with underscores.
// "hello world" → "HELLO_WORLD"
Real-World Use Cases
Developers: Convert variable and function names to the correct naming convention for each language — camelCase for JavaScript, snake_case for Python, PascalCase for C#/TypeScript classes.
Content Writers: Fix ALL CAPS text pasted from a PDF or Word document. Convert it to Sentence case or Title Case for use in articles.
CSS/HTML Development: Convert human-readable labels to kebab-case CSS class names or camelCase JavaScript property names.
Database Administrators: Convert column names between snake_case (SQL convention) and camelCase (API convention) when mapping database schemas to API responses.
SEO & Marketing: Ensure headline-style titles use correct Title Case, and body content uses Sentence case, consistently across all content.
Best Practices & Optimization Tips
Title Case has nuances. Articles (a, an, the), prepositions (in, on, at), and conjunctions (and, but, or) are typically not capitalized unless they're the first word. Simple Title Case algorithms capitalize every word — manually check short connecting words in important titles.
camelCase vs PascalCase depends on context. Functions and variables are typically camelCase in JavaScript. React components, TypeScript interfaces, and CSS-in-JS component names use PascalCase. Know your codebase's convention before converting.
snake_case is the SQL and Python standard. Database column names and Python variables both use snake_case by convention. When generating database schemas from camelCase JSON keys, convert them here first.
Avoid CONSTANT_CASE for regular variables. In most languages, ALL_CAPS is reserved for constants and environment variables. Using it for regular variables signals a convention violation to other developers.
Limitations & Common Mistakes
Abbreviations get mangled by title/sentence case. "NASA" becomes "Nasa" in title case. After converting, manually restore any abbreviations or proper nouns that need to stay uppercase.
CamelCase-to-words conversion isn't included. If you need to split "helloWorld" → "hello world", you need a separate "split camelCase" tool — this tool goes the other direction (words to case formats).
Non-ASCII characters: toUpperCase() handles most accented characters (é → É) correctly in JavaScript, but some script-specific casing rules (Turkish dotted-i, German ß → SS) may produce unexpected results.
The tool processes all input in one pass. Mixed-language content or text containing code snippets inside prose should be converted carefully — code identifiers may be altered.
Privacy Guaranteed
Your data never leaves this device. All processing is handled locally by JavaScript.
