The Second Rule of QR Codes

I previously wrote how if the QR Code you generate resolves to a url it is a good idea to make sure that the page is optimized for display on a mobile device The first rule of QR Codes.

The second rule of QR Codes is to make sure the url is as short as possible.

The reason for this is that you want the code to be easy to read and to reduce the risk of error when read.

Many mobile devices and reader software have difficulty with a QR Code matrix greater than 33×33 and some even falter with those dimensions. This means you should aim for a small matrix rather than a large matrix.

In QR Code encoding the number of bytes at a given Error Correction Level (ECL) will determine the matrix size (see chart below) therefore a shorter url can mean a dimensionally smaller matrix.

Chart showing number of bytes by QR Code matrix size


37 by 37 QR Code matrixFor example let’s assume you would like your QR Code to point to a mobilized page on your website where users can receive a special promotion code. The url is and you would like to use ECL-Q which allows 25% of the QR code to be restored. The QR Code would be a 37×37 matrix.




29 by 29 QR Code matrixHowever if you use a url truncation service the url could be shortened to and the QR Code would be a 29×29 matrix.




If you are concerned about the persistence of a third party url truncation service you can always register your own short url and perform a redirect. There are still lots of unregistered random five letter/number combinations.

1 thought on “The Second Rule of QR Codes”

  1. JHC – why is seemingly EVERYONE talking about using 3rd party URL redirection services? (Yeah I know this one is 2y old. But it still goes on.)

    Blah, blah, blah, make the URL short. FINE. Then how about: ?

    http:// is mandatory as is www is optional, replace it with your OWN subdomain for this particular promotion. Next is qr101. If you don’t want your competition to know how many you’ve done, randomize the number.

    If you depend upon a 3rd party to decode and direct views to your site, you’re toast if they die.
    I’m from the old school where you might farm out annoyances but keep the primary function under your direct control.

    And by the way, as you can probably tell from this comment, I email and text people in standard English with little slang and very few abbreviations. Y I cn B kl 2, but thank you, that’s unreadable.

    And if your hosting service CAN’T do this for you, change and get a competent one this time.

Leave a Reply

Your email address will not be published. Required fields are marked *