Excel UPPER, LOWER, and PROPER Functions
last modified October 5, 2026
The UPPER, LOWER, and PROPER functions
are text functions in Excel that change the case of letters. UPPER
converts every letter to uppercase, LOWER converts every letter to
lowercase, and PROPER capitalizes the first letter of each word
while lowercasing the rest. They are widely used to standardize names, codes,
and imported data before it is compared, matched, or stored. This tutorial
covers the syntax and arguments of each function, the word-separator quirk in
PROPER, how numbers and dates are handled, and the errors you are
likely to meet.
Function Basics
All three functions take a single text argument and return a new text string. They never change the value stored in a cell; the case conversion happens only in the cell that holds the formula. Letters are converted, while digits, punctuation, and spaces are copied unchanged.
| Function | Description | Syntax |
|---|---|---|
| UPPER | Converts all letters to uppercase | =UPPER(text) |
| LOWER | Converts all letters to lowercase | =LOWER(text) |
| PROPER | Capitalizes the first letter of each word and lowercases the rest | =PROPER(text) |
The table summarizes the three case functions. Each one returns text, so the
result can be passed to another text function or compared with
EXACT, but it cannot be used directly in arithmetic without being
converted back to a number.
| Argument | Meaning |
|---|---|
| text | The text to convert. It can be a literal in double quotes, a cell reference, or an expression that returns text. Numbers, dates, and logical values are converted to text first, as described below. |
Exactly one argument is accepted. Supplying more produces a "too many arguments" error, and omitting it produces a "too few arguments" error.
The UPPER Function
UPPER changes every lowercase letter in the text to uppercase.
Digits, spaces, and punctuation are left alone.
=UPPER("Excel functions") ' EXCEL FUNCTIONS
=UPPER("Hello 123") ' HELLO 123
=UPPER("") ' empty text stays empty
The first formula returns "EXCEL FUNCTIONS", the second shows that the digits
and the space are not changed, and the third confirms that an empty string
returns an empty string. UPPER is often used to prepare codes and
identifiers that must be stored in a fixed uppercase form.
=UPPER(A1)
When A1 contains "abc123", this formula returns "ABC123". The reference can point to any cell whose text you want to normalize.
The LOWER Function
LOWER is the mirror of UPPER: it changes every
uppercase letter to lowercase and leaves everything else untouched.
| A | B |
|---|---|
| EXCEL FUNCTIONS | =LOWER(A1) |
The table places text in A1 and the LOWER formula in B1. The
result is "excel functions".
=LOWER("Hello 123") ' hello 123
=LOWER(A1)
The first formula shows the basic behavior, including that the digits and the
space survive unchanged. The second converts whatever text is in A1. Because
email addresses and URLs are conventionally lowercase, LOWER is a
common first step when building them.
The PROPER Function
PROPER capitalizes the first letter of each word and converts all
other letters to lowercase, producing title case. As the Microsoft
documentation puts it, it capitalizes the first letter in the text and any
letter that follows a character other than a letter.
=PROPER("the quick brown fox") ' The Quick Brown Fox
=PROPER("john smith") ' John Smith
PROPER is ideal for formatting names, titles, and place names that
were entered in inconsistent case.
The PROPER Word Separator Quirk
The rule "any character other than a letter starts a new word" has an important consequence. Apostrophes, digits, and hyphens are not letters, so they are treated as word separators. The letter immediately after them is capitalized even when it should not be.
| Input | PROPER result | Separator |
|---|---|---|
| don't stop | Don'T Stop | apostrophe |
| o'brien | O'Brien | apostrophe |
| 2nd place | 2Nd Place | digit |
| hello-world | Hello-World | hyphen |
| 76BudGet | 76Budget | digit |
The first row is the classic surprise: "don't" becomes "Don'T" because the apostrophe makes "t" the start of a new word. The name "o'brien" happens to come out right as "O'Brien", but a name such as "d'artagnan" would become "D'Artagnan", which many style guides reject. Hyphenated words keep a capital after the hyphen, so "hello-world" becomes "Hello-World".
=PROPER("don't stop") ' Don'T Stop
=PROPER("2nd place") ' 2Nd Place
=PROPER("hello-world") ' Hello-World
When the automatic result is wrong, correct it after the fact. For example,
=SUBSTITUTE(PROPER(A1),"Don'T","Don't") restores the apostrophe
case for that one phrase. There is no setting that changes the separators that
PROPER recognizes.
Numbers, Dates, and Logical Values
The case functions are designed for text, but they accept other values by converting them to text first. Digits and symbols are never altered by the conversion, but a number, date, or logical value becomes a text string. The value in the source cell is not changed; only the returned text differs.
| Input | Formula | Result |
|---|---|---|
| 123 | =UPPER(123) | "123" (text) |
| TRUE | =UPPER(TRUE) | "TRUE" |
| TRUE | =LOWER(TRUE) | "true" |
| 15-Jun-2024 | =UPPER(DATE(2024,6,15)) | "45458" (serial number as text) |
A date is stored as a serial number, and the case functions convert that
underlying number rather than the way the date is displayed. To keep a readable
date, convert it to text with the TEXT function before applying a
case function, as shown below.
=UPPER(123) ' "123" =LOWER(TRUE) ' "true" =UPPER(DATE(2024,6,15)) ' "45458" =UPPER(TEXT(DATE(2024,6,15),"mmmm d, yyyy")) ' JUNE 15, 2024
The last formula formats the date first, so the case conversion applies to the
month name and produces "JUNE 15, 2024". Without TEXT, the serial
number would be returned instead.
UPPER and LOWER for Comparisons
The = operator, VLOOKUP, MATCH, and
COUNTIF all ignore case when they compare text. UPPER
and LOWER are therefore not needed to make those comparisons
case-insensitive. They matter when you build a stable key from mixed-case
input, or when you combine them with a case-sensitive test such as
EXACT.
| Formula | Result |
|---|---|
| ="Apple"="apple" | TRUE (the = operator ignores case) |
| =EXACT("Apple","apple") | FALSE (EXACT is case-sensitive) |
| =EXACT(UPPER("Apple"),UPPER("apple")) | TRUE (both sides normalized) |
Wrapping both arguments in UPPER makes the case-sensitive test
case-insensitive. The same pattern works over a range.
=EXACT(UPPER(A1), UPPER(B1)) =SUMPRODUCT(--EXACT(UPPER(A1:A10), "APPLE"))
The first formula returns TRUE when A1 and B1 spell the same word in any combination of cases. The second counts how many cells in A1:A10 match "apple" regardless of case.
Combining PROPER with TRIM
Imported text frequently carries leading, trailing, or repeated spaces. Since
PROPER treats a space as a word separator, stray spaces can create
odd capital letters, so clean the text first with TRIM.
| A | B |
|---|---|
| " excel FUNCTIONS " | =PROPER(TRIM(A1)) |
TRIM removes the outer spaces and collapses internal runs to a
single space, then PROPER capitalizes the result. The cell becomes
"Excel Functions".
=PROPER(TRIM(A1))
The inner function runs first, so the text is trimmed before it is capitalized. Nesting text functions this way is a common cleaning technique.
Standardizing Names
| A | B |
|---|---|
| jANE dOE | =PROPER(A1) |
| mARY SMITH | =PROPER(A2) |
| pETER jONES | =PROPER(A3) |
The names in column A use inconsistent capitalization. The PROPER
formulas in column B return "Jane Doe", "Mary Smith", and "Peter Jones". This
is a quick way to tidy a customer or mailing list before it is exported, but
remember the separator quirk: names such as "o'brien" or "van-der-berg" are
not always capitalized the way a person writes them.
Building Email Addresses
| A | B | C |
|---|---|---|
| John | Smith | =LOWER(A1&"."&B1&"@company.com") |
The formula joins the first name, a period, the last name, and the domain, then
lowercases the whole string. With "John" and "Smith" it returns
"john.smith@company.com". The concatenation operator & turns
the values into one text string before LOWER is applied.
=LOWER(A1&"."&B1&"@company.com")
Standardizing Product Codes
| A | B |
|---|---|
| abc123 | =UPPER(A1) |
| AbC456 | =UPPER(A2) |
| xyz789 | =UPPER(A3) |
The UPPER formulas return "ABC123", "ABC456", and "XYZ789". The
digits are untouched, but the letters are made uniform. This matters in
inventory systems where a code may be compared as text and "abc123" would
otherwise be treated as a different item from "ABC123".
=UPPER(A1)
Errors and Troubleshooting
| Cause | Symptom | Fix |
|---|---|---|
| More than one argument | Too many arguments error | Each function takes exactly one text argument |
| Argument is an error value | The same error is returned | Clean the source with IFERROR before converting |
| A date is passed directly | A serial number such as 45458 | Format it first with TEXT, then apply the case function |
| The text result is used in a calculation | #VALUE! or unexpected text | Wrap the result in VALUE, or use the original number |
| PROPER meets an apostrophe, digit, or hyphen | "Don'T", "2Nd", or "Mc-Donald" | Correct the affected words with SUBSTITUTE or by hand |
| A case-insensitive match is expected from EXACT | FALSE for "Apple" versus "apple" | Wrap both sides in UPPER, or use the = operator |
Most problems with these functions come from forgetting that they always return
text. Feed a date through them and you get its serial number; feed the result
into arithmetic and you get an error; expect PROPER to respect an
apostrophe and you get a surprise capital. Check the source value and wrap the
formula with TEXT, VALUE, or IFERROR
when the output has to be used in another context.
Conclusion
The UPPER, LOWER, and PROPER functions
are simple but indispensable tools for cleaning text in Excel.
UPPER and LOWER enforce a single letter case across
imported data and are handy for building comparison keys, while
PROPER turns ragged input into readable title case. Remember that
all three return text rather than changing the underlying value, that numbers
and dates are converted to text first, and that PROPER treats
every non-letter, including apostrophes and digits, as the start of a new word.
With those behaviors in mind, you can standardize names, codes, and addresses
confidently and predict exactly what each formula will produce.
Author
List all Excel Formulas.