Case Converter

Convert text to any case — UPPER, lower, Title, camelCase, snake_case, kebab-case, and more. All 11 variants update instantly as you type.

UPPER CASE

HELLO WORLD

lower case

hello world

Title Case

Hello World

Sentence case

Hello world

camelCase

helloWorld

PascalCase

HelloWorld

snake_case

hello_world

SCREAMING_SNAKE

HELLO_WORLD

kebab-case

hello-world

UPPER-KEBAB

HELLO-WORLD

dot.case

hello.world

Supports camelCase, PascalCase, snake_case, kebab-case, and more — type anything and all variants appear instantly.

Why use our online Case Converter?

Transform text between camelCase, PascalCase, snake_case, kebab-case, UPPER_CASE, and more in one click. Useful for renaming variables, formatting database columns, or preparing API field names.

How to use Case Converter

  1. 1
    Paste or type your text

    Click the input area and paste your content or start typing. All 11 case variants update in real time as you type.

  2. 2
    Find the case you need

    Scan the result cards below the input. Each card shows the converted text in one format — UPPER CASE, camelCase, snake_case, kebab-case, and more.

  3. 3
    Copy any variant with one click

    Click the Copy button on any card to instantly copy that case variant to your clipboard. The button confirms with a 'Copied!' message.

  4. 4
    Clear and convert new text

    Use the Clear button at the top-right of the input to reset and start with a fresh piece of text.

Which case convention to use and when

Naming conventions in programming are language-specific and team-specific, but broad patterns exist across ecosystems. camelCase (lowerCamelCase) is the standard for variables and function names in JavaScript, TypeScript, Java, Swift, and Kotlin. PascalCase (UpperCamelCase) is standard for class names, component names (React), and type names across most languages.

snake_case (all lowercase, underscores) is the convention in Python (variables, functions, module names), Ruby, and SQL column names. SCREAMING_SNAKE_CASE (all uppercase, underscores) is widely used for constants in Python, Java, and C/C++. kebab-case (lowercase, hyphens) is the convention for CSS class names, HTML attributes, URL slugs, and file names in web projects.

dot.case is less common but appears in configuration keys (spring.datasource.url in Java Spring), package names in some systems, and log category hierarchies. The key rule: within a project, be consistent. Mixed conventions in the same codebase are harder to search, read, and autocomplete.

How the tokenizer splits mixed-case input

A case converter must first break text into individual words before it can recombine them in a new format. This is called tokenization. The challenge: input may already be in camelCase, snake_case, kebab-case, or plain sentence text — and the converter must handle all of them correctly.

The tokenizer works by splitting on: whitespace (spaces, tabs, newlines), underscores, hyphens, and camelCase word boundaries (positions where a lowercase letter is followed by an uppercase letter, or a sequence of uppercase letters is followed by a lowercase letter). For example, "XMLParser" splits into ["XML", "Parser"] and "myHTTPRequest" into ["my", "HTTP", "Request"].

Numbers are kept with adjacent words based on context. Apostrophes in contractions ("don't") are stripped, treating the word as a single token ("dont"). Consecutive delimiters are collapsed — "hello__world" produces ["hello", "world"]. After tokenization, the converter reassembles tokens in the target case format.

Case conventions in databases and APIs

Databases and APIs each have strong conventions that are worth following for interoperability. SQL databases traditionally use snake_case for table names and column names: users, user_id, created_at, first_name. PostgreSQL, MySQL, and SQLite store identifiers in lowercase by default; mixing cases requires quoting identifiers, which adds friction.

REST APIs have fragmented conventions. Many popular APIs use camelCase for JSON response fields (GitHub API, Stripe API) — influenced by JavaScript's convention. Others use snake_case (Python-built APIs, Twilio, SendGrid) — reflecting Python's convention. Some use kebab-case in URL paths (/api/user-profiles) but camelCase in JSON bodies. When designing an API, pick one convention and apply it consistently across all field names, paths, and parameters.

GraphQL schemas use PascalCase for type names (User, ProductVariant) and camelCase for field names (firstName, totalPrice) — this is a formal convention documented in the GraphQL specification and followed by virtually all GraphQL services.

File naming conventions and URL slugs

File names have different conventions depending on the platform and the type of file. On macOS and Windows, the filesystem is case-insensitive by default — MyFile.txt and myfile.txt refer to the same file. On Linux and most web servers, the filesystem is case-sensitive — these are two different files. This is a common source of bugs when code developed on a Mac is deployed to a Linux server: a file imported as './components/Button' works locally but throws a module-not-found error in production if the actual filename is 'button.tsx'.

Web URLs are case-sensitive for the path component (by convention; the HTTP spec technically allows servers to be case-insensitive, but almost none are). kebab-case is the universal convention for URL paths: /blog/how-to-format-json rather than /blog/howToFormatJSON or /blog/how_to_format_json. kebab-case is preferred over snake_case for URLs because underscores can be misread as part of a link underline in some rendering contexts, and because Google's URL guidelines historically recommended hyphens as word separators.

For SEO-friendly URL slugs, convert a title to lowercase, replace spaces with hyphens, strip punctuation, and normalize Unicode characters to ASCII equivalents (é → e, ü → u). This tool's kebab-case output is the correct starting point for generating slugs from arbitrary text.

Frequently Asked Questions

What case formats does the converter support?

The tool supports 11 formats: UPPER CASE, lower case, Title Case, Sentence case, camelCase, PascalCase, snake_case, SCREAMING_SNAKE_CASE, kebab-case, UPPER-KEBAB-CASE, and dot.case.

Can it convert camelCase or snake_case input back to words?

Yes. The tokeniser automatically splits camelCase, PascalCase, snake_case, kebab-case, and dot.case inputs into individual words before converting, so mixed inputs are handled correctly.

Does my text get sent to a server?

No. All conversion logic runs entirely in your browser using JavaScript. Your text is never transmitted to any server.

What is the difference between camelCase and PascalCase?

In camelCase the first word is lowercase and subsequent words are capitalised (e.g. helloWorld). In PascalCase (also called UpperCamelCase) every word including the first starts with a capital letter (e.g. HelloWorld). PascalCase is common for class names; camelCase for variables and function names.

Related Tools