All barcodes have what is known as error correcting codes. This is extra information added to correct most typical read errors. For example in an UPC code you can get away with only having four modules per digit this would cause a lot of errors so they have seven modules per digit making it easier to read. This makes it 47% efficient. In addition there is a check digit which further reduce the efficiency. You would think that using bars instead of a matrix would reduce efficiency but this is not the case since the bars can be very short which means you can have as much information in the same place if you use multiple barcodes stacked on top of each other.
For QR codes however the amount of error correcting code in the pattern and therefore its density can be selected freely. So it is up to the people encoding the QR code to set how easy it should be to scan. You can create a very big pattern with lot of error correcting codes or a tiny pattern with the same data but which can be hard to scan if damaged.
Latest Answers