Solved.tools: Free Online Calculators & Tools

We use cookies for analytics and advertising. Learn more about our cookie policy

Text Case Converter

Last updated: 27 June 2026

Reviewed by Gavin Meiring, Lead research and primary author · Doctoral Candidate (Corporate Governance) · Research and drafting assisted by AI

UPPERCASE
THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG.
lowercase
the quick brown fox jumps over the lazy dog.
Title Case
The Quick Brown Fox Jumps Over the Lazy Dog.
Sentence case
The quick brown fox jumps over the lazy dog.
Alternating case
tHe qUiCk bRoWn fOx jUmPs oVeR ThE LaZy dOg.
camelCase
theQuickBrownFoxJumpsOverTheLazyDog.
PascalCase
TheQuickBrownFoxJumpsOverTheLazyDog
snake_case
the_quick_brown_fox_jumps_over_the_lazy_dog.
kebab-case
the-quick-brown-fox-jumps-over-the-lazy-dog.
slug-case
the-quick-brown-fox-jumps-over-the-lazy-dog
Was this helpful?


Text Case Converter

The text case converter converts any text between uppercase, lowercase, title case, sentence case, camelCase, PascalCase, snake_case, and other formats in one click. It is designed for developers, writers, marketers, and data professionals who need to reformat text quickly without manual retyping.

How to Use the Text Case Converter

  1. Paste or type your text into the input field.
  2. Select the target case format from the options panel.
  3. The converted text appears instantly in the output field.
  4. Click Copy to copy the result to your clipboard.
  5. Convert to additional formats by selecting a different option without re-entering your text.

The Formula

Each case format follows a specific rule applied to the input text:

UPPERCASE: Convert every letter to its capital form. text.toUpperCase()

lowercase: Convert every letter to its small form. text.toLowerCase()

Title Case: Capitalise the first letter of each word, lowercase the rest. Apply exceptions for prepositions and articles (a, an, the, in, on, of, etc.) which remain lowercase unless they begin the title.

Sentence case: Capitalise the first letter of the first word in each sentence. Lowercase all other letters. Detect sentence boundaries by full stops, question marks, and exclamation marks.

camelCase: Remove spaces and punctuation. Lowercase the first word. Capitalise the first letter of every subsequent word. Used in programming variable names.

PascalCase: Same as camelCase but the first word is also capitalised. Used in class names in many programming languages.

snake_case: Replace all spaces and punctuation with underscores. Convert all letters to lowercase. Used in Python variables, database column names, and file names.

kebab-case: Same as snake_case but uses hyphens instead of underscores. Used in HTML, CSS, and URL slugs.

Real-World Example

A developer is creating a database schema and needs a field named from the user input "Customer Order Date."

  • snake_case: customer_order_date (for database column names in SQL)
  • camelCase: customerOrderDate (for JavaScript variables)
  • PascalCase: CustomerOrderDate (for C# class properties)
  • kebab-case: customer-order-date (for HTML data attributes or URL parameters)

All four formats convey the same meaning but follow different conventions for their respective environments. The converter handles all four in one tool without any retyping.

Case Conventions by Context

Different industries and tools have established conventions:

  • SQL databases: snake_case for column names
  • Python: snake_case for variables and functions, PascalCase for class names
  • JavaScript: camelCase for variables, PascalCase for classes
  • CSS: kebab-case for property and class names
  • URLs and slugs: kebab-case (e.g., my-blog-post)
  • Book and article titles: Title Case (with style guide variations for APA, Chicago, AP)
  • Legal documents: UPPERCASE for defined terms and headings

Frequently Asked Questions

What is the difference between Title Case and Sentence case? Title case capitalises the first letter of every significant word in a heading or title ("The Quick Brown Fox Jumps"). Sentence case only capitalises the first word and any proper nouns, treating the text like a regular sentence ("The quick brown fox jumps"). Style guides differ on which to use for headings; AP style uses title case, while some modern digital publications prefer sentence case.

Does the converter handle proper nouns correctly? Automated conversion to sentence case or lowercase cannot reliably detect proper nouns, which should remain capitalised. After converting, review the output for names of people, places, and brands and restore their capitals manually if needed.

What is camelCase used for? camelCase is widely used in programming for variable names, function names, and JSON keys. The name comes from the humped appearance of the capitals in the middle of the word. JavaScript, Java, and Swift conventionally use lowerCamelCase for variables.

Can I convert text that includes HTML or markdown? The converter processes plain text. If you paste text containing HTML tags, the tags themselves will be converted (which is usually not what you want). For code or markup, copy just the text portions you want to convert.

Ten formats on one string

The converter applies every format to the same input at once, so the comparison sits on the screen instead of across ten separate runs. For the input "Customer Order Date" the ten outputs are:

| Format | Output | | UPPERCASE | CUSTOMER ORDER DATE | | lowercase | customer order date | | Title Case | Customer Order Date | | Sentence case | Customer order date | | Alternating case | cUsToMeR OrDeR DaTe | | camelCase | customerOrderDate | | PascalCase | CustomerOrderDate | | snake_case | customer_order_date | | kebab-case | customer-order-date | | slug-case | customer-order-date |

Two of the rows earn a word of explanation. Alternating case flips the case of every character by position, starting lowercase at index zero, so it produces the mixed-case effect used for mocking text rather than anything a style guide asks for. Kebab-case and slug-case agree on this input and part company on others, which the accent section below sets out.

On the sentence "The quick brown fox jumps over the lazy dog." the same list gives "THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG." for uppercase, "The Quick Brown Fox Jumps Over the Lazy Dog." for title case, and "theQuickBrownFoxJumpsOverTheLazyDog." for camel case, punctuation included.

What title case and sentence case actually do

Title case leaves a fixed list of short words lowercase unless they open the string: a, an, the, and, but, or, for, nor, on, at, to, by, in, of, up, as. That list is shorter than the Chicago or APA style guides use, so a title such as "A Tale of Two Cities" comes out correctly, while a title containing a word like "with" or "from" has that word capitalised. The rule is applied by position in the string, so a short word in the middle stays lowercase and the same word at the start is capitalised.

Sentence case is the narrower transform of the two. It capitalises the first character of the input and lowercases everything after it. It does not detect sentence boundaries, so a passage of three sentences returns with the first letter of the first sentence capitalised and the other two left lowercase. For a single sentence that is the expected result. For a paragraph, convert sentence by sentence, or take the title case output and fix the boundaries by hand.

Why the programming cases disagree about the first word

camelCase lowercases the whole string first and then capitalises the character that follows each run of punctuation or spaces. PascalCase capitalises the first letter of every word and then deletes the punctuation. The visible difference is the opening letter. The hidden difference is that neither transform recognises a word that is already camel-humped, so an existing identifier is flattened rather than split:

| Input | camelCase | PascalCase | snake_case | | FileNotFoundError | filenotfounderror | Filenotfounderror | file_not_found_error | | my_blog-post | myBlogPost | MyblogPost | my_blog_post |

snake_case and kebab-case do split at the boundary between a lowercase letter and a following capital, which is why the identifier comes back as file_not_found_error and file-not-found-error from those two. Check the output rather than assuming all four name cases agree.

Accents and punctuation survive in some formats and not others

The transforms differ in what they do with anything outside a to z. snake_case and kebab-case keep accented letters and punctuation, because they only replace the space, the hyphen and the "_" character. camelCase and PascalCase treat every other character as a separator, which deletes it and eats the boundary at the same time.

| Input | camelCase | PascalCase | snake_case | | café crème | cafCrMe | CafCrMe | café_crème | | Hello World! This is a Test. | helloWorldThisIsATest. | HelloWorldThisIsATest | hello_world!_this_is_a_test. |

The "cafCrMe" row is the one that catches people out. Both accented letters are treated as separators, so the letters beside them are consumed along with the accent. slug-case handles the same input differently again: it strips the accented characters rather than folding them, so "café" becomes "caf" and "über" becomes "ber". The dedicated text to slug tool on this site takes the opposite approach, decomposing the character and removing the accent mark so that "café" becomes "cafe". Neither route maps the German sharp s to "ss": both return "strae" for "straße".

Case mapping also has a small set of characters whose uppercase form is longer than the original. The German sharp s uppercases to "SS", two characters, so converting a string to uppercase can lengthen it.

Where the output goes next

Two of the conversions change the length of the string. Lowercasing never does. Uppercasing can add characters where a special mapping applies, and folding accents usually shortens the string instead. A database column sized against the input needs a little headroom on both sides.

Case conversion is also the usual first step before comparing two strings. Lowercasing both sides removes one class of false difference. It leaves accented characters and the sharp s untouched, so a comparison that must be accent-insensitive also normalises the text.

Case mapping depends on the language

Two characters change their behaviour with the region settings, and both matter when the output feeds a system that is not purely English.

| Input | Default mapping | Turkish mapping | | Capital I with dot above, U+0130 | Lowercases to i plus a combining dot | Lowercases to a plain i | | Lowercase i | Uppercases to I | Uppercases to I with a dot above |

The converter applies the default mapping, which is correct for English text and for storage that has no locale attached. It can surprise an application rendering Turkish text, where the two forms of i are separate letters and the wrong one changes the word. Where that matters, apply the locale-specific conversion inside the application rather than storing the converted result.

The German sharp s carries the second surprise. Its uppercase form is "SS", two characters, so uppercasing a string that contains it can lengthen the string by one character per occurrence. Lowercasing never has that effect, and the accented characters handled by the slug transforms shorten rather than lengthen.


Also try these free tools related to Text Case Converter: - Word Counter