LabeljoyNew version
Code 16K stacks the characters of Code 128 in rows of five, from 2 to 16 rows, between two bars along the top and the bottom. A value that would make a very long Code 128 fits in a compact block.

| What it holds | |
| Characters | Every letter, digit and symbol on the keyboard, and the accented letters of Western European languages - é, ü, ñ and the like. The euro sign and other alphabets don't fit: use a QR Code for those. |
| Length | Up to 152 digits, or 76 other characters. Digits pack two to a character. |
| Check digit | Two check characters, worked out by Labeljoy. |
| Readable text | None. |
| Settings | |
| Encoding | Standard or GS1: see GS1 and HIBC data. |
The number of rows follows from the value. Quiet zone keeps the white space at the start of the rows, inside the top and bottom bars.
Characters you can't type. With Encoding set to Standard, a tilde followed by three digits is
the character with that code - ~013 is a carriage return - and ~~ is a tilde.
The rest of the settings - quiet zone, color - are in the Barcode section.
| What goes wrong | |
| Input data too long. | The value needs more than 16 rows. |
| Only Latin-1 characters, the letters of Western European languages, fit in this barcode. | The value has a character Code 16K can't hold - a euro sign, another alphabet, an emoji. |
See also


























