First off a UPC is a specific standard of writing a barcode:
A barcode uses 7-bit character encoding and can be made to any length necessary, the data would be length(n) of the code * 7, eg. a 20 character barcode would be 20×7 = 140bit
A UPC is an international standard(technically UPC-A) length barcode of 12 characters, so 12*7 = 84bits
Note: 7-bit character encoding carries far more possible data than a binary representation of 0-9 which would only require 4bits per number
Now for QR codes:
Data is represented in a 177×177 grid of “pixels” for each bit, 177×177=31,329 bits. Data in a QR code in encoded into 8-bit bytes instead of the 7-bit used in barcodes, so 31,329/8=3,916 bytes. Bytes to data rate conversion 3,916/1,024=3Kb
TL;DR a QR code can hold 372 times as many bits of binary data as a standard UPC-A code.
Latest Answers