104

I would like to use this script https://github.com/jeromeetienne/jquery-qrcode
(or is there even a better solution?)

What I like to do is "save" some small scripts or programs and even files like xml formatted files (svg, x3d, ...) as QR code images.

But how much information (in bytes) can I save exactly to QR code images (using this javascript solution)?

Any experience with this script and using qr codes for files?
https://github.com/jeromeetienne/jquery-qrcode

2 Answers 2

102

QR codes have three parameters: Datatype, size (number of 'pixels') and error correction level. How much information can be stored there also depends on these parameters. For example the lower the error correction level, the more information that can be stored, but the harder the code is to recognize for readers.

The maximum size and the lowest error correction give the following values:
Numeric only Max. 7,089 characters
Alphanumeric Max. 4,296 characters
Binary/byte Max. 2,953 characters (8-bit bytes)

Sign up to request clarification or add additional context in comments.

7 Comments

so it can not be greater than this actually?
That's whats standardized (qrcode.com/en/vertable4.html) and widely published. Maybe there is a vendor anywhere that in one way or another support bigger ones, but you can't rely on it.
and that there is mentioned on websites that you can split larger data into 16 qr codes? how does this work?
Also note that the inappropriately named "byte mode" does not actually encode binary data. It encodes the ISO-8995-1 character set. This means that that 2.9kB limit is somewhat misleading, as it is only that limit if you can encode the data in ISO-8995-1. There are some surprising absences in that specification, including the new line character. Whether or not client readers will be able to decode them depends on implementation decisions regarding how closely they conform to the spec, as well as attempts at encoding detection.
So storing base64-encoded data in alphanumeric QR code is more efficient (3222 bytes) than storing binary data directly?
|
50

See this table.

A 101x101 QR code, with high level error correction, can hold 3248 bits, or 406 bytes. Probably not enough for any meaningful SVG/XML data.

A 177x177 grid, depending on desired level of error correction, can store between 1273 and 2953 bytes. Maybe enough to store something small.

enter image description here

5 Comments

read that bigger data can be split into a maximum of 16 qr codes, how does this work?
The linked website seems to be down. Look here for an old snapshot from the archive.org project or see this screenshot.
@mab It's back now.
It's gone again. And the archive cache link is also not working now.
The same content is available here: qrcode.com/en/about/version.html . Click on "31-40" for the largest "version" of QR codes.