As the title says, is there a specific reason for why products keys are (almost) always in uppercase? Does it serve a purpose?

Here's what I mean by a product key:


Why aren't they:


Or a mix of upper and lower case letters?

  • 3
    It's not completely impossible for these keys to have to be read out over the phone as well (more a historic thing these days), keeping to single case is much quicker then.
    – Chris H
    Commented Jun 18, 2014 at 8:25

3 Answers 3


Ariel is on the right track. Uppercase letters are generally much more distinguishable from each other. L won't get mixed up with 1 or the lower case l, as Ariel mentioned.

If you look around, you can find a mixture of upper and lowercase, but from the user perspective, typing in a mixture can be cumbersome. So to make it more user friendly, keep it in one case.

An exception for this could be when security is absolutely paramount, and you don't mind having the user put in a bit more effort to type. For security, having a mixture of cases makes cracking codes a great deal more complicated/difficult.

  • 1
    Ambiguity is the key. Some codes, like Xbox Live codes exclude some letters just for reducing input errors. See the accepted answer on this question: gaming.stackexchange.com/questions/22047/… Commented Jun 17, 2014 at 18:24
  • Doesn't ring true to me. Much harder to distinguish 5 and S, 0 and O and 1 and I than it is to distinguish 5 and s, 0 and o, 1 and i. C and G are also easier to mix up than c and g.
    – uliwitness
    Commented Jun 19, 2014 at 14:17
  • That is why I said 'generally.' Granted, there are characters that throw a wrench into the whole more distinguishable from each other thought. However, if you were to compare the amount of distinguishable upper case letters against the amount of distinguishable lower case letters, you will find that there are more distinguishable upper case letters compared to lowercase.
    – Andrew
    Commented Jun 19, 2014 at 14:39

Several reasons come to mind:

  1. Indication of spelling: Usually, lowercase letters and mixed-case words are used for actual, existing words. When, in text, you mention a single letter, you generally write it in uppercase (which helps distinguish the indefinite article "a" from the letter "A" - though "I" in English is still a problem here). So this tells your brain immediately not to expect a word that makes sense.

  2. Indicator for case-insensitivity: Regular people (as opposed to programmers) generally do not see letter case as a major distinguishing feature, and may not copy the case of a character. So if your license key used mixed case, half the readers would ignore it, the other half would try to painstakingly copy it. Given that, you can't use case as a distinguishing factor in license keys. So you usually pick one case for all letters and normalize to that.

  3. Distinguishability: Some uppercase letters are harder to mix up. E.g. i and l vs. I and L. Though there are a number of letters where the opposite is true, e.g. the number "0" and the letter "O", "5" and "S", "1" and "I" in some fonts, or when you squint, which is why at least one of each is usually left out.

  4. Uppercase letters are what is printed on the key caps: Makes them easier to find for beginners and other not-yet-proficient users.


I don't have something I would consider to be a "valid" answer, but I'd like to blame the letter L - in lowercase form, it could be an I, an L, or the number 1.

edited to add: On the UX side - my mind wants to make this a more valid answer, so I'm going to add that the real underlying intent (potential) could be that codes are a serious pain as it is. To have character confusion would just make it worse and insight anger, frustration, and lower customer happiness.

But that's just a best guess... I wouldn't be surprised if it was something more along the lines of the history of the label and its being printed by similar equipment as the postal service, which was only equipped to print or read capitalized letters, and that just being carried over into today's labels.

  • 2
    Distinguishability isn't enough, in my opinion, to warrant exclusively upper-case codes on its own. It's easy enough to have the code-generator omit characters that can be confusing -- even all-upper-case codes have to worry about O vs. 0! Most such generators will also have processes to avoid getting close to spelling offensive words; you don't want your customer to see a promo code that says SH1T right in the middle of it. Very robust generators will even do this for multiple languages.
    – Brian S
    Commented Jun 17, 2014 at 21:05

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.