Skip to content

Data Matrix Code Scanner

Add Data Matrix scanning to your mobile application or website

Trusted by 300+ global
industry leaders

Generali Success Story Deutsche Telekom Case Study Deutsche Bahn Success Story AXA Success Story Generali Success Story Deutsche Telekom Case Study Deutsche Bahn Success Story AXA Success Story

Turn smartphones into fast & reliable Data Matrix scanners

The Scanbot Data Matrix Scanner delivers exceptional performance even under challenging conditions – such as code damage or when scanning the very small codes commonly found in industrial environments. With a scanning speed of under 0.04 seconds, your users get instant reads for seamless workflows.

Key benefits include:

  • Offline scanning: The Scanbot SDK works 100% on-device, ensuring both uninterrupted performance and data security.
  • Enterprise-grade support: Get dedicated chat support via Slack, Teams or email for any issue. Includes free assistance during the integration phase.
  • Flat pricing model: Cost stays the same no matter how much your user base or scanning volume grows.
Data Matrix code reader
Data Matrix reader

How this scanning tool works

Our free online Data Matrix code reader scans codes directly through your camera or on imported images. This barcode scanner works in any browser, no app download or signup needed. Enjoy real-time camera view scanning or decode barcodes on pictures in seconds – just point your camera at the Data Matrix code or import an image file to instantly access the encoded data.

This tool is powered by the Scanbot Barcode Scanner SDK!


(We don’t store any images or data you import. Everything stays on your device.)

Understanding Data Matrix codes

What is a Data Matrix code?

 

Data Matrix codes are two-dimensional barcodes that store data in a compact and reliable format. Unlike traditional linear barcodes, they use a grid of black and white modules to encode information such as characters, numbers, or binary data. Defined in the ISO/IEC 16022 standard, these codes can store up to 3,116 numeric, 2,335 alphanumeric, or 1,556 binary characters at an exceptional data density.

 

Their small size and large storage capacity make Data Matrix one of the most widely used 2D barcode types. They can be microscopically small, making them ideal for applications where space is tight. These codes remain highly readable even in low light or low contrast conditions and – with the right scanning software – maintain readability when damaged or distorted.

 

Structure and components

 

Data Matrix barcodes use black and white cells (modules) arranged in a square or rectangular pattern. The key components include:

 

  • Finder pattern: This serves as the foundation of every Data Matrix. It consists of two solid adjacent borders forming an “L” shape along the left and bottom edges, helping scanners locate and determine the orientation of the symbol.
  • Timing pattern: The timing pattern, which is located along the top and right edges, allows scanners to determine the exact number of rows and columns.
  • Data regions: These contain arrays of modules, where each black or white module represents a binary digit (1 or 0) to encode text, numbers, or other data.
  • Quiet zone: Also known as the margin, the quiet zone surrounds the entire symbol, creating a buffer that helps scanners distinguish the code from background elements.
  • Alignment pattern: For larger Data Matrix codes, the alignment pattern divides the symbol into multiple, individual blocks. This minimizes distortion risk and ensures accurate scanning.

 

Data Matrix key elements

 

Data Matrix codes come in different versions. ECC200 is the newer version that has an even number of rows and columns, with sizes ranging from 10×10 to 144×144. ECC000-140 versions have an odd number of modules with sizes ranging from 9×9 to 49×49.

 

Data Matrix code (ECC200) comes in two variations:

 

Square Data Matrix

 

Square Data Matrix codes can store up to 3,116 numeric, 2,335 alphanumeric, or 1,556 binary characters. They range from 10 x 10 to 144 x 144 modules in size. To prevent distortion, any symbol larger than 24 x 24 modules is divided into smaller blocks, each no larger than 24 modules per side.

 

Square Data Matrix

 

Total symbol size Number of blocks
10×10 to 26×26 1 block
32×32 to 52×52 4 blocks
64×64 to 104×104 16 blocks
120×120 to 144×144 36 blocks

 

Rectangular Data Matrix

 

Rectangular Data Matrix barcodes can store up to 98 numeric, 72 alphanumeric, or 47 binary characters. They come in six sizes, ranging from 8 x 18 to 16 x 48 modules. Unlike square Data Matrix codes, only the larger rectangular symbols are divided into blocks.

 

Rectangular Data Matrix

 

Total symbol size Number of blocks
8×18 1 block
12×26 1 block
16×36 1 block
8×32 2 blocks
12×36 2 blocks
16×48 2 blocks

 

Error correction

 

ECC200 employs Reed-Solomon error correction algorithms to ensure reliable data recovery, even when the code is partially damaged or obscured. This advanced error correction system is integrated into the Data Matrix structure and automatically scales with the symbol size.

The system can reconstruct complete data strings even when up to 30% of the symbol is damaged, as long as the scanner can still find the matrix position. This robust error correction results in an exceptionally low error rate of less than 1 in 10 million scanned characters.

Unlike earlier versions or other 2D codes, ECC200’s error correction cannot be manually adjusted, ensuring consistent reliability across all implementations. This standardization helps maintain data integrity across different scanning environments and applications.

 

Applications of Data Matrix codes

 

Small electronic components

Data Matrix barcodes are widely used for marking small items due to their ability to store 50 characters in a symbol as small as 2–3 mm². Despite their compact size, they remain highly readable, even when printed with a low contrast ratio of just 20%. For that reason, Data Matrix barcodes are especially useful in industries like electronics, where space is limited. The US Electronic Industries Alliance (EIA) even recommends them for labeling small electronic parts.

 

Direct part marking

Direct part marking (DPM) is a method of permanently applying a code onto the surface of an item by lasering, dot peen marking or permanently etching barcodes. Data Matrix barcodes are commonly used as dpm codes. They are essential for reliable identification of products and parts in industries like manufacturing, automotive, and aerospace. Their ability to remain readable even when damaged ensures reliable tracking.

 

Healthcare

Data Matrix barcodes are used to label and authenticate medication quickly. By encoding critical information like batch numbers and expiry dates, they contribute to safe medication administration. Moreover, they are used for Unique Device Identification (UDI) of medical devices, where they ensure traceability and patient safety.

 

Retail and logistics

Similarly, these codes also allow for product identification and tracking in retail and logistics industries. Data Matrix barcodes are often used for inventory control, where they manage stock levels and automate the reordering process.

 

Advantages of Data Matrix codes

 

  • Compact size: They can store large amounts of data in minimal space (up to 3,116 numeric characters) with exceptional density – as small as 2-3 mm² for 50 characters.
  • Error correction: They use Reed-Solomon error correction that maintains readability even when the code is partially damaged or printed in low contrast conditions (down to 20%).
  • Scalability: Data Matrix codes are available in multiple sizes from 10×10 to 144×144 modules for square formats, with automatic block division for larger sizes to prevent distortion. Rectangular formats also exist for specific applications.
  • Versatility: Omnidirectional scanning ensures seamless decoding from any angle.

 

Why choose the Scanbot SDK for Data Matrix scanning?

 

The Scanbot Barcode Scanner SDK is specifically designed to handle the challenges of decoding Data Matrix codes in real-world scenarios.

 

What sets us apart:

 

  • Exceptional performance: Reliably decodes even damaged, low-contrast or distorted barcodes.
  • High-speed scanning: Read Data Matrix codes in as little as 0.04 seconds.
  • Cross-platform compatibility: Easily integrate with Android, iOS, cross-platform, web, Windows, and Linux platforms.
  • Customizable UI: Customize the ready-to-use components to match your app or website design.
  • Privacy-first: Operates offline for complete data security.

 

Whether your use case involves Data Matrix codes, QR codes, or any other barcode, the Scanbot SDK delivers the accuracy, speed, and reliability you need to succeed.

 


 

Related Barcode Types:

Frequently Asked Questions

Can you scan a Data Matrix code?

Yes. The Scanbot Barcode Scanner SDK reads Data Matrix barcodes as fast as 0.04 seconds per scan. Interested in integrating reliable scanning into your app or website? Get a free trial license, or try our demo apps to see the SDK in action.

What is the difference between a Code 128 and a Data Matrix? 

Code 128 is a one-dimensional (1D) linear barcode, while Data Matrix is a two-dimensional (2D) barcode. Data Matrix has a much higher data capacity compared to Code 128. It can store up to 2,335 alphanumeric characters or 3,116 numeric characters. Code 128 encodes up to 128 ASCII characters. 

While both code symbologies offer error correction, Data Matrix has a more robust system, that can read the data even if up to 30% of the code is damaged.

What is the difference between a Data Matrix code and a QR Code?

Data Matrix and QR codes are both two-dimensional (2D) barcodes but differ in key aspects. QR codes generally have a higher data capacity than Data Matrix codes. However, Data Matrix codes are typically smaller and offer higher data density in a compact format. 

Visually, Data Matrix codes have an "L"-shaped finder pattern, whereas QR codes use three corner squares. QR codes also support Kanji and multi-byte characters. Data Matrix codes are common in industrial and healthcare settings, while QR codes are widely used in consumer applications.

What is the difference between a UPC and a Data Matrix?

UPC is a one-dimensional (1D) linear barcode, while Data Matrix is a two-dimensional (2D) barcode. UPC has limited data capacity and can only encode numeric characters, with UPC-A encoding 12 digits and UPC-E encoding 6 digits. Data Matrix can store up to 2,335 alphanumeric characters, 3,116 numeric characters or 1,556 binary characters. 

UPCs have limited error detection through a check digit, whereas Data Matrix codes have robust error correction capabilities. Moreover, UPCs are primarily used in retail for product identification and inventory tracking. Data Matrix codes are more common in manufacturing, healthcare, and aerospace for product traceability and direct part marking.

What is the difference between ECC140 and ECC200? 

The older versions of the data matrix (ECC000, ECC050, ECC080, ECC100, ECC140) differ in the number of modules on the side. The ECC200 has even-numbered modules, whereas the older versions have odd-numbered modules.

How do I determine the Data Matrix code size?

To calculate the size of a Data Matrix code, multiply the number of modules by the printable size of each module. For example, a 10 x 10 module code with 0.25 mm printable modules will be 2.5 x 2.5 mm in size.

How can Scanbot SDK help you with Data Matrix scanning?

The Scanbot SDK delivers exceptional performance in challenging environments, including damaged or curved barcodes, with a scanning speed of under 0.04 seconds for seamless workflows. Try it now with a free trial license.