Uppercase converter — text to ALL CAPS.

The tool below opens in UPPERCASE mode. Paste any amount of text, press the button, and every letter is capitalised in place with your line breaks preserved. The counter above the buttons tells you if the length changed — and on some text, it does.

46 characters39 without spaces8 words1 line

Everyday cases

Developer cases

Everything runs in this tab. Your text is never uploaded, stored or logged.

Uppercase is not always a one-for-one swap

Most of the time, capitalising a string leaves its length alone: one lowercase letter in, one capital out. It is such a reliable assumption that people build database columns and character limits on it, and then are surprised when a name overflows.

The assumption is wrong for a specific, enumerable set of characters. Scanning every code point in the Basic Multilingual Plane through the same case-mapping the browser uses finds 102 characters whose uppercase form is longer than one character, 16 of which expand to three. The great majority — 81 of the 102 — are polytonic Greek vowels carrying multiple diacritics, and 6 more are Armenian ligatures. That leaves 15 that a Latin-script writer will actually meet:

Latin-script characters that get longer when uppercased — 15 of the 102 found across the whole BMP. Generated at build time by mapping every code point and keeping the ones that grew.
CharacterCode pointUppercases toCharacters after
ß U+00DF SS 2
ʼn U+0149 ʼN 2
ǰ U+01F0 2
U+1E96 2
U+1E97 2
U+1E98 2
U+1E99 2
U+1E9A 2
U+FB00 FF 2
U+FB01 FI 2
U+FB02 FL 2
U+FB03 FFI 3
U+FB04 FFL 3
U+FB05 ST 2
U+FB06 ST 2

Two groups stand out. The first is ß, the German sharp s, which is the only one of these that appears in ordinary running text — and German is not a rare language to be re-casing. The second is the typographic ligatures ff, fi, fl, ffi, ffl, ſt and st: single characters that look like two or three letters and uppercase into two or three letters. They arrive by accident, pasted out of a PDF where the typesetter used them, and they are a common cause of text that mysteriously gains characters or fails a search.

Measured, on real words

Counts are Unicode code points, produced by the same counter the tool displays above.
WordUppercaseBeforeAfterChange
Straße STRASSE 6 7 +1
Fußball FUSSBALL 7 8 +1
Weißbierstraße WEISSBIERSTRASSE 14 16 +2
Grüße GRÜSSE 5 6 +1
file FILE 3 4 +1
fflicker FFLICKER 6 8 +2
All six 41 49 +8

Weißbierstraße is 14 characters and becomes 16. If that string is going into a field with a hard limit, the limit has to be checked after the conversion, not before it.

Uppercase is a one-way door

Case conversion throws information away, and uppercase throws away the most. Once a sentence is in capitals, nothing in the text records which words were proper nouns, which were acronyms, or which ß was really a ß. Lowercasing afterwards gives you a plausible string, not your string: STRASSE comes back as strasse, and NASA comes back as nasa.

This is why the tool has an Undo button and never asks you to convert back. Undo restores the exact characters from before the last conversion, including everything the transform would have destroyed. It stacks, so several conversions can be walked back one at a time.

When to convert, and when to use CSS instead

On the web, an uppercase look and uppercase text are different things, and the difference matters more than it sounds.

  • Style it with text-transform: uppercase when the capitals are presentation: nav items, buttons, small caps headings. The underlying text stays normal, so copy-paste gives the reader ordinary words, search still matches, and assistive technology reads the sentence out as a sentence instead of spelling it.
  • Convert it when the value itself must be uppercase: a coupon code, an environment-variable name, a constant in source, a legacy field that rejects lowercase, a spreadsheet column being normalised for a join.

There is a readability cost to real capitals too. Lowercase letters have ascenders and descenders that give words distinct shapes; capitals are all the same height, which removes that cue. It is why all-caps paragraphs feel slower to read — fine for four words on a button, punishing for a paragraph of forty.

What passes through untouched

Uppercase only affects characters that have a case. Digits, punctuation, spaces and emoji are unchanged, and so are entire scripts that do not distinguish case: Chinese, Japanese, Korean, Arabic, Hebrew, Devanagari and Thai all come out exactly as they went in. Mixed text works fine — the cased letters convert and everything else stays put.

One script does change behaviour by language: Turkish. Uppercasing i gives I in English and İ in Turkish, because Turkish treats the dotted and dotless i as separate letters. Tick Turkish i rules to switch the tool between them; the difference is explained in full on the main case converter page.

Uppercase questions

How do I change text to all caps without retyping it?

Paste it into the box above and press UPPERCASE. The whole block converts in place, line breaks and blank lines intact, and Undo puts it back exactly as it was if you change your mind. Nothing is uploaded — the conversion is a JavaScript call inside your own tab.

Why did my character count go up?

Because a handful of lowercase characters have no single-character capital. Scanning the whole Basic Multilingual Plane with the browser’s own case mapping finds 102 characters that uppercase to more than one character, 16 of which produce three. The one you will actually meet in ordinary text is the German ß, which becomes SS.

What happens to the German ß in uppercase?

It becomes SS — two characters where there was one. That is the default Unicode mapping and it is what every browser does. Unicode does define a capital sharp s (ẞ, U+1E9E) and some German house styles use it, but it is not what an automatic uppercase produces, here or anywhere else.

Can I get my original text back after uppercasing it?

Not by lowercasing. Uppercase destroys the information: STRASSE lowercases to “strasse”, not “straße”, and NASA lowercases to “nasa”. Use the Undo button, which restores the exact text from before the conversion rather than trying to reverse a lossy transform.

Should I type in caps or style in caps?

For anything on a web page, style it: CSS text-transform: uppercase renders capitals while the underlying text stays normal, so search, copy-paste and screen readers all keep working. Convert the actual characters only when the stored value itself has to be uppercase — a product code, a constant name, a legacy system that expects it.

Does uppercase work on accented and non-Latin letters?

Yes. é becomes É, ñ becomes Ñ, and Greek and Cyrillic uppercase correctly too. Scripts with no letter case at all — Chinese, Japanese, Korean, Arabic, Hebrew, Thai — pass through untouched, which is the correct outcome and not a failure.

Keep going

  • All twelve case converters on one page — the full tool, with the four title-case style guides and the six programmer cases side by side.
  • Lowercase Converter — the exact inverse operation, and a table of what it cannot bring back.
  • Title Case Converter — when a heading needs capitals on the important words only, under a named style guide.
  • Sentence Case Converter — the fastest way to rescue a paragraph that arrived in full caps.
  • Word Counter — our sister tool for the other half of the job: word, character and reading-time counts when you are writing to a limit instead of fixing capitalisation.