Free tool Case converter for text and code
Type once and get nine versions: four for writing (lowercase, UPPERCASE, Title Case, Sentence case) and five for code and data (snake_case, kebab-case, camelCase, PascalCase, CONSTANT_CASE). Paste a list and every line is converted on its own.
- Nine formats at once
- Line by line
- Runs locally
Convert letter case and naming style
Every format below updates as you type. Use the copy button on the one you need.
A headline, a sentence, or identifiers such as userSignUp or ORDER_PAID_AMOUNT. One item per line for a batch.
how to track a sign-up button
order paid amountEvery letter in lower case; spacing and punctuation unchanged.
HOW TO TRACK A SIGN-UP BUTTON
ORDER PAID AMOUNTEvery letter in capitals.
How to Track a Sign-Up Button
Order Paid AmountEach word capitalised except short words such as a, of, the, to (unless first).
How to track a sign-up button
Order paid amountLower case, with a capital at the start of each line and after . ! ?
how_to_track_a_sign_up_button
order_paid_amountLower-case words joined by underscores.
how-to-track-a-sign-up-button
order-paid-amountLower-case words joined by hyphens.
howToTrackASignUpButton
orderPaidAmountFirst word lower case, the rest capitalised, no separators.
HowToTrackASignUpButton
OrderPaidAmountEvery word capitalised, no separators.
HOW_TO_TRACK_A_SIGN_UP_BUTTON
ORDER_PAID_AMOUNTUpper-case words joined by underscores.
Version v1.0Updated Update history
Two families of formats
The first four keep your words and spacing and only change capitals. The other five rebuild the text as a single identifier per line.
Writing cases
lowercase and UPPERCASE change every letter. Title Case capitalises each word but leaves short words (a, an, and, as, at, but, by, for, in, nor, of, on, or, per, the, to, vs, via) in lower case unless they come first. Sentence case lowers everything and capitalises the first letter of each line and after . ! or ?.
Code cases
snake_case, kebab-case, camelCase, PascalCase and CONSTANT_CASE first split the line into words, then join them with the format's separator and capitals. Punctuation and spaces disappear in the process.
Where words split
At spaces, punctuation, underscores and hyphens, and inside camelCase where a lower-case letter or digit meets a capital. Runs of capitals stay together: XMLHttpRequest becomes xml_http_request.
Line by line
Each line is converted separately, so a pasted column of names comes back as a column. Empty lines stay empty.
Title Case and Sentence case lower-case everything first. Acronyms and brand names such as SEO or iPhone need fixing by hand afterwards.
Three common jobs
The same input box serves writers, marketers and developers.
-
1
Fix a headline
Paste a title typed in capitals or all lower case, then copy the Title Case or Sentence case version and correct any acronyms.
-
2
Rename identifiers
Paste variable, column or event names in one style and copy them in another, for example camelCase from an API into snake_case for a database.
-
3
Clean a list
Paste campaign names or tags one per line and copy the snake_case or kebab-case column so every value follows the same convention.
Nine formats side by side
All nine results for the example line "order paid amount", with where each style is usually found.
- Code formats keep letters and digits only;
sign-upandsign upboth become two words - Apostrophes split words in code formats:
don'tbecomesdon_t - Letters without case, such as Chinese characters, are kept as they are
| Format | Result | Typical use |
|---|---|---|
| lowercase | order paid amount | Tags, UTM values, email addresses |
| UPPERCASE | ORDER PAID AMOUNT | Buttons, labels, short headings |
| Title Case | Order Paid Amount | Headlines, page titles, menu items |
| Sentence case | Order paid amount | Body text, UI copy, subheadings |
| snake_case | order_paid_amount | Python, database columns, event names |
| kebab-case | order-paid-amount | URLs, CSS classes, file names |
| camelCase | orderPaidAmount | JavaScript and Java variables, JSON keys |
| PascalCase | OrderPaidAmount | Class and component names |
| CONSTANT_CASE | ORDER_PAID_AMOUNT | Constants, environment variables |
Converting real identifiers
Names copied from code, a spreadsheet and a campaign plan, each run through the converter. The last two rows show where the rules need a human check.
| Input | snake_case | camelCase | kebab-case |
|---|---|---|---|
| userSignUp | user_sign_up | userSignUp | user-sign-up |
| ORDER_PAID_AMOUNT | order_paid_amount | orderPaidAmount | order-paid-amount |
| Spring Sale 2026 | spring_sale_2026 | springSale2026 | spring-sale-2026 |
| userID | user_id | userId | user-id |
| iPhone | i_phone | iPhone | i-phone |
userID comes back as userId, so a round trip does not always restore the original. Mixed-case words like iPhone, SaaS or TapCub are split where the capitals change; edit those by hand.
Where case conversion goes wrong
The rules are predictable. Surprises come from words that do not follow them.
Lost acronyms in titles
Title Case turns SEO into Seo and TapCub into Tapcub. Read the result before publishing a headline.
Mixed-case words split apart
iPhone becomes i_phone and SaaS becomes saa_s in code formats, because a capital inside a word marks a new word.
Apostrophes in identifiers
don't becomes don_t or donTStop. Remove apostrophes from the input when you are naming variables or events.
Mixing styles in analytics names
Most analytics tools treat Sign_Up and sign_up as two different events or sources. Pick one style and convert everything to it.
Consistent names, cleaner reports
Case matters most when names become data. TapCub checks event names as they arrive and lets you tidy them afterwards, so one action does not turn into three rows in a report.
Data quality checks
Event names, properties and types are validated on arrival; unexpected ones are flagged. Events and properties can be merged, renamed or retired.
Learn moreCustom events from any platform
Send named events with properties from the web script, mobile and mini-program SDKs or the server API, with names shared across platforms.
Learn moreUTM link builder
Lower-cases campaign values and swaps spaces for underscores so sources do not split by spelling.
Learn moreCase converter questions
Still have a question?
Chat with the team behind TapCub — we usually reply within a few hours on business days.
What is Title Case?
A headline style where the main words start with a capital and short words such as a, of, the and to stay lower case, unless they are the first word. Style guides disagree on details, for example whether to capitalise longer prepositions, so check yours for formal publications.
What is the difference between camelCase, PascalCase and snake_case?
camelCase joins words with no separator and capitalises every word except the first (orderPaidAmount). PascalCase capitalises the first word too (OrderPaidAmount). snake_case keeps everything lower case and joins words with underscores (order_paid_amount).
Which case should I use for event names and UTM values?
Any single convention works, as long as everyone uses it. Lower-case snake_case is a common choice for event names and UTM values because it reads well and avoids case mismatches. See tracking plan for how teams document it.
How do I change case in Excel or Google Sheets?
Both have UPPER, LOWER and PROPER functions, for example =UPPER(A1). PROPER capitalises every word, including short ones like "of", and has no camelCase or snake_case equivalent, which is where this tool helps.
Can I convert many lines at once?
Yes. Paste one item per line and every format is produced line by line, so you can paste a spreadsheet column and paste the result straight back.
Why did my acronym change?
Title Case and Sentence case lower-case the text before adding capitals, and code formats split words where capitals change. Brand names and acronyms such as SEO, iPhone or userID need a manual check.
What happens to Chinese characters, accents and numbers?
Characters without case, such as Chinese, and digits are kept as they are and joined like any other word, so "Spring Sale 2026" becomes spring_sale_2026. Accented letters keep their accents and change case normally: café becomes CAFÉ. For URLs, the slug generator removes accents and turns Chinese into pinyin.
Is my text uploaded?
No. Conversion runs in your browser, the text is not added to the page address, and nothing is sent to TapCub.
Update history
New features, fixes and data refreshes for this tool, newest first.
-
· v1.0
LaunchedFirst release.
Missing something or found an error? Tell us — requests that come up often go into the next update. All tool updates
Keep event names consistent from the start
Connect your site or app to TapCub and every event name is checked on arrival, with tools to merge and rename what slipped through.