The Data of 2D Codes Explained: How much data can you store in a DotCode?

  • By Domino Printing Sciences
  • May 23, 2022
  • Life Sciences
  • Tobacco
Get in touch

If you've read Domino North America blogs, you already know a thing or two about 2D codes including Bar Codes, QR Codes and Data Matrix Codes, and their potential uses in a number of industries. However, the traceability world doesn't end just QR Codes and Barcodes. There is another – the DotCode - only invented in 2009 and developed for use in specific, high-throughput applications.

Given that it was effectively built for speed, how much data can this code really store?

How was the DotCode Developed?

If you've never seen the DotCode or utilized it on one your products, you're probably not alone. It's much less used than other 2D codes. It's a 2D barcode that encodes data in dots in a rectangular array. It was originally developed as a solution for a machine-readable code that could be read reliably when printed using high-speed inkjet or laser technologies.

In industries with high-speed production processes, DotCodes can be used as an alternative to other 2D codes to facilitate item-level serialization allowing products to be tracked throughout global supply chains.

The DotCode was developed by Dr. Andrew Longacre, with official specifications by global industry standards organization AIM in 2009.

DotCodes are public domain codes – this means that they are not restricted by copyright and their use is royalty free, so organizations do not require a license in order to print or use the code. Up to date specifications are available from AIM under ISS DotCode Symbology Specification 4.0.

DotCode Maximum Size

What does a DotCode code look like?

Unlike QR or DataMatrix codes, DotCodes are typically thin and rectangular in shape and not squares. In addition, instead of square-ish pixels and Locator Pattern boxes, they are simple dots. That said, these dots can be either square or circular and are positioned on a grid diagonal to the rectangle.

The sizing and orientation of DotCodes are flexible, however the dot height, and width of the code must be odd – if, for example, there is an odd number of dots in the height of the code, then there must be an even number in the width, and vice versa.

For maximum legibility and effectiveness, DotCodes must have good contrast from their background. In order to do so, the codes must be printed in either dark colors on a light-colored background, or in light colors on a dark-colored background, providing that there is sufficient contrast to ensure readability.


What’s the best technology for printing DotCodes and how do you scan one?

Unlike other 2D codes, DotCodes do not require the use of continuous lines or precise spacing, and, as such they can be reliably applied with high-speed coders, including industrial inkjet printers and laser coding systems, including CO2 and fiber lasers. This makes the codes well suited to industries with high-speed production lines.

How do you scan a DotCode?

Like Data Matrix codes and QR codes, DotCodes can be scanned from any orientation using a specialist 2D code scanner, or camera scanner. DotCodes can also be scanned using the camera on a smart phone or tablet, provided there is a suitable barcode reader app installed – however, DotCodes are not typically recommended for use in consumer-facing applications.

How much Data Can a DotCode Contain? It depends on the physical space.

How much data can a DotCode contain?

All of this background information brings us to the question of the hour: just how much information can you pack into a DotCode. Well, unlike a QR Code, it doesn't quite work that way.

It's a symbology-based code like braille the basic alphabet - not binary data code-based. So instead of data type and error correction being the data limiter, physical space of the code itself becomes the limiter.

How do DotCodes Encode Data?

DotCodes can encode data using all 7-bit ASCII (American Standard Code for Information Interchange) characters, as well as all extended 8-bit ASCII characters – representing numerals 0 to 9, lowercase letters a to z, uppercase letters A to Z, punctuation symbols, and a range of special characters.

Unlike other 2D codes, DotCodes are not technically limited to any functional capacity with regards to data capacity. There is no fundamental maximum capacity to the amount of data that can be stored in a DotCode, though in practice, printers are likely to be restricted to a size limit of 124 dots in either direction.

That said, multiple DotCodes can be linked to one another to create ever-larger codes, so, you could have a theoretically limitless DotCode. The minimum size for a DotCode is 7 dots high – in theory, there is no maximum size.

7 x 124

At the typical 7 x 124 size, you get enough for about 40-46 characters from the space. This may not sound like much, but it's certainly good enough for a typical traceability code, serial number, lot code, etc.

Dot Code Pass-Fail

How much damage can a DotCode sustain before it's rendered unreadable?

If you've considered other code types for your products, you might know that there are Finder Patterns within QR codes and other similar codes to create easy readability and preserve the code in the event of damage. The DotCode has a similar feature. 

DotCode Finder Pattern

Like other 2D codes, DotCodes have a ‘finder pattern’, this can be seen in the two corners of the code which contain data dots – the location of these dots allows a data reader, or scanner, to know where to start reading the data.

In order to boost readability, they must be surrounded by a ‘quiet zone,’ three dots wide, on all four sides of the printed code. The empty space ensures that a scanner can effectively scan and read the code without picking up any additional printed content.

However, a DotCode would be rendered useless if an entire outer row or column of dots was missing - even if the rest of the code rendered or printed on the product flawlessly. In essence, if the quiet zone extended one line further in there for any of the corners, there would be an error in the code. 

The code can be damaged if either of the outer top or bottom; left or right rows are completely missing - but the rest of the code still renders, it's damaged. The likelihood of this type of error happening in the wild in a full-scale production line is relatively low and would most likely be the result of a major printer malfunction or ink loss that, say, one of our inkjet printers would alert the user to prior to occurring. 

Reed-Solomon Correction Algorithm

That said, to combat this issue, like other 2D codes, DotCodes are equipped with error correction capabilities using the Reed-Solomon correction algorithm. This algorithm was specifically created to detect and restore missing data in 2D codes like QR Codes or, in this case, DotCodes. This means that DotCodes can still be read if part of the code is missing or damaged.

What industries are DotCodes used for?

DotCodes have been used to great success for on-pack serialization in the European tobacco industry – where fast paced production environments (often producing up to 1,000 packs per minute) require a high-speed product marking solution.

GS1 – the global standards organization – maintains global standards for DotCodes for use in tobacco applications, for meeting the requirements of the EU tobacco traceability regulation EU 2018/574.

While the most prominent use of DotCode is within the tobacco sector, the codes’ suitability for use in fast-paced production environments could prove useful for other industries with high-speed printing requirements – such as alcoholic beverages – where serialization may become a requirement in the future.

How can I find out more about using DotCodes?

If you are considering adding a DotCode, or any kind of 2D code, to your product packaging and need more information on how best to do this please get in touch.

We have a range of different printing and labeling solutions to suit the requirements for all industries, and packaging types. We also offer a range of specialist code verification systems, to ensure that codes meet print quality requirements, and which can be used to check data accuracy for serialized codes.

If you are working in an industry with high-speed serialization requirements, and are interested in exploring the use of DotCodes, our experts are on hand to talk through your specific requirements and discuss which solution is right for your business.

For more information about Domino North America, contact one of our product representatives. Or, if you would like specific information about one of our industrial printing technologies, visit our product page.

Thank you to Domino UK's David Thayer and Domino North America's Ryan Lewandowski for their collective assistance to this blog.

Need more information?

Contact us about our innovative and award-winning printing and marking solutions. Get in touch

Featured Articles