Text Case Converter
Convert text between UPPER CASE, lower case, Title Case, camelCase, snake_case, kebab-case, and more.
Text Case Formats Explained
Different technical contexts and writing styles require text to be formatted in specific cases. Understanding when to use each case helps maintain consistency across code, documentation, and UI.
- UPPER CASE — All letters capitalised. Used for acronyms, constants in code (e.g. MAX_VALUE), and emphasis in plain text contexts.
- lower case — All letters in lowercase. Used in URLs, email addresses, and lowercase-only identifiers.
- Title Case — First letter of each major word capitalised. Used in headings, article titles, and proper nouns.
- Sentence case — Only the first letter of the first word capitalised, as in a normal sentence. The standard for body text, descriptions, and UI labels.
- camelCase — No spaces; each word after the first starts with a capital letter. The standard naming convention for variables and functions in JavaScript, Java, and Swift.
- PascalCase — Like camelCase but the first word is also capitalised. Used for class names and component names in most programming languages.
- snake_case — Words separated by underscores, all lowercase. Standard for Python variables, Ruby identifiers, and SQL column names.
- kebab-case — Words separated by hyphens, all lowercase. Used in CSS class names, HTML attributes, URL slugs, and npm package names.
Common Use Cases
- Content editing — Quickly fix case inconsistencies in pasted text without retyping.
- Code refactoring — Convert variable names between camelCase, snake_case, and PascalCase when switching languages or following a new style guide.
- URL slugs — Convert article titles to lowercase kebab-case for use in URLs.
- Database columns — Convert readable field names to snake_case for SQL schemas.
- CSV and data processing — Normalise text fields before importing data into a database or spreadsheet.
How to Convert camelCase to snake_case
Converting between naming conventions by hand is error-prone — this tool does it in one step. Paste an identifier like getUserProfileData and every format is shown at once: get_user_profile_data (snake_case),get-user-profile-data (kebab-case),GetUserProfileData (PascalCase), and more. Click any result to copy it. The converter detects word boundaries at capital letters, spaces, hyphens, and underscores, so it works whichever format you start from.
Frequently Asked Questions
What is the difference between Title Case and sentence case?
Title Case capitalises the first letter of every major word (typically excluding articles, prepositions, and conjunctions under 4 letters). Sentence case only capitalises the first word of the sentence and proper nouns. Most modern style guides (AP, APA, Chicago) use Title Case for headings and sentence case for descriptions and UI labels.
When should I use camelCase vs PascalCase in code?
The convention varies by language. In JavaScript and TypeScript, use camelCase for variables, functions, and object properties, and PascalCase for classes, types, interfaces, and React components. In C#, use PascalCase for public members and camelCase for private fields. In Python, use snake_case for functions and variables, and PascalCase for class names. Always follow the style guide of the language or framework you are working in.
Does the converter handle special characters and accents?
Yes. The converter uses JavaScript's built-in string methods which correctly handle Unicode characters including accented Latin letters (é, ü, ñ), making it safe to use with multilingual content. Note that snake_case and kebab-case conversion strips or replaces non-ASCII characters to produce valid identifiers and URL slugs.
How do I convert a title into a URL slug?
Paste the title and copy the kebab-case result — it lowercases everything and joins words with hyphens, which is the standard format for readable URL slugs (e.g. "How To Encode URLs" becomes how-to-encode-urls).
Is my text sent anywhere when converting?
No. All case conversion runs locally in your browser with JavaScript string methods. Nothing you paste is uploaded or stored, so it is safe to use with private code, names, or content.