Case Converter

Paste any text and get all nine common casings at once — UPPERCASE, lowercase, Title Case, Sentence case, camelCase, PascalCase, snake_case, kebab-case and CONSTANT_CASE. Click a result to copy it.

Type or paste text above to convert it
UPPERCASE
lowercase
Title Case
Sentence case
camelCase
PascalCase
snake_case
kebab-case
CONSTANT_CASE

What Is a Case Converter?

A case converter rewrites a piece of text in a different letter casing convention. That sounds trivial until you need the same phrase in five forms at once: a database column wants user_profile_settings, the REST API it feeds wants userProfileSettings, the CSS class wants user-profile-settings, the env variable wants USER_PROFILE_SETTINGS, and the page heading wants "User Profile Settings". Doing that by hand is where typos and copy-paste bugs come from.

The Nine Casings and Where Each One Belongs

Why Naive Conversion Breaks

Every case converter has to decide where one word ends and the next begins, and English does not make that easy. Notes like "iPhone" and "McDonald's" are already cased in a way no rule reproduces; acronyms are worse, since parse_HTTP_response could legitimately become parseHttpResponse or parseHTTPResponse. The pragmatic rule most codebases settle on is: acronyms become regular words in camelCase/PascalCase (parseHttpResponse, HttpClient) and stay whole in CONSTANT_CASE. Tools above collapse runs of separators (_, -, multiple spaces) into a single word boundary, so pasting a snake_case identifier and asking for kebab-case gives exactly what you expect.

Pro Tips

FAQ

Q: Is my text sent to a server?
No. The conversion runs entirely in your browser with JavaScript, so it is safe for private copy, unpublished product names and internal identifiers.
Q: How does it know where words start in an identifier?
It splits on three signals at once: separators (_, -, spaces), lowercase-to-uppercase transitions (userProfile → user | profile), and acronym-to-word transitions (HTTPClient → HTTP | Client). That is why getUserProfileById, get_user_profile_by_id and get-user-profile-by-id all produce the same nine outputs.
Q: Why does "iPhone" or "McDonald" come out wrong in Title Case?
Because Title Case only has a rule for the first letter of each word, and those names carry meaning in their internal capitals — it produces Iphone and Mcdonald. Run the conversion, then fix the handful of proper nouns by hand; a keep-list of brand names is the usual production fix.
Q: Why do Title Case rules differ between style guides?
Because guides disagree about minor words. AP and Chicago capitalise everything except articles, coordinating conjunctions and short prepositions, so "How to Format Dates in Python" and "How to Format Dates In Python" are both defensible. This tool capitalises every word — the predictable choice for headings and UI labels — so lowercase to, in and of yourself if your style guide requires it.
Q: Should my API use camelCase or snake_case?
Pick one and never mix them in the same payload. JSON APIs built in JavaScript ecosystems usually use camelCase, Python and Ruby backends usually use snake_case, and both are correct — consistency matters far more than the choice, because a mixed payload (userId next to created_at) forces every client to special-case field names.
Q: Can I convert a whole file or a list of identifiers?
One paste at a time here — but you can convert a full column name list in one go, then run the outputs through the Diff Checker against the old list to confirm nothing but casing changed. For scripted bulk renames, sed or a small Python re.sub that mirrors the same three split rules is the right tool.

Why Use Our Case Converter?

Nine casings at once, no signup, no uploads, no clicking through one conversion at a time. Every result updates as you type and copies to your clipboard with a single click, so moving an identifier from a database column to a JSON key to an env variable takes seconds instead of retyping.