What you're using right now
- 100+ barcode & QR symbologies
- Live preview & customization
- PNG & SVG export, no login
- Copy to clipboard
Loading Barcode Mintβ¦
Free Online Barcode & QR Code Generator
Encode GTIN, batch number, and expiration date into a compact GS1-compliant Data Matrix code built for pharmaceutical and device labeling.
Open the generator βTurn a CSV β or a numbered sequence β into hundreds of barcodes at once, exported as a ZIP of images or a print-ready PDF sheet. Launching with Pro.
The browser generator stays free forever. Paid plans are for teams who need bulk output and developers who need the REST API at scale β commercial license included. Tell us what you'd use; early-list members get first access and launch pricing.
What you're using right now
For designers & teams
Priced by requests. Commercial license and self-serve keys included; usage dashboard at launch.
GS1 DataMatrix is a Data Matrix symbol (ISO/IEC 16022) whose payload follows the GS1 General Specifications, structuring data with Application Identifiers (AIs) such as (01) for GTIN, (17) for expiration date, and (10) for batch/lot number. It's one of GS1's officially recognized 2D symbologies for regulated industries, and is the barcode most commonly required by pharmaceutical serialization and medical device Unique Device Identification (UDI) rules worldwide, because its small footprint fits on unit-dose blister packs and device labels where space is extremely limited and a linear barcode of equivalent data length simply wouldn't fit.
Physically, a GS1 DataMatrix symbol is identical to a standard Data Matrix code — the same L-shaped solid finder border, clock track, and Reed-Solomon (ECC200) error correction. What distinguishes it is the payload: data is a concatenation of Application Identifiers and values, where fixed-length fields like the 14-digit GTIN under AI 01 need no separator, but variable-length fields like a batch number under AI 10 require the non-printable FNC1 character (represented in human-readable form with parentheses around the AI) to mark the field boundary. This lets any GS1-compliant scanner parse the structured data without prior knowledge of your specific product catalog, since the AI itself tells the receiving system what each value means and how long to expect it.
Pharmaceutical serialization mandates in most major markets require GTIN, batch/lot number, expiration date, and a unique serial number on each saleable unit, making the combination of AIs 01, 10, 17, and 21 the standard payload for drug packaging. Medical device UDI labeling under FDA and EU MDR rules similarly combines a Device Identifier (part of the GTIN) with production identifiers like lot number, expiration date, and sometimes manufacturing date. Because Data Matrix achieves high data density in a small footprint, all of these fields typically fit on a symbol just a few millimeters across, and the underlying symbol still uses the same fixed ECC200 error correction as plain Data Matrix rather than a separately selectable level.
Pharmaceutical unit-dose and blister pack serialization to meet drug supply chain security regulations such as the US Drug Supply Chain Security Act and the EU Falsified Medicines Directive; medical device labeling for FDA UDI and EU MDR compliance; hospital and clinical inventory systems that scan device and drug data at the point of care to reduce medication errors; and small consumer healthcare products where a linear barcode wouldn't fit the available label area. Regulatory bodies in the US, EU, and other regions specifically reference GS1 DataMatrix (or an equivalent GS1 2D symbology) as an accepted format for these mandates, which is why it has become the de facto standard across the pharmaceutical and medical device industries rather than just one option among many.
Select GS1 Data Matrix from the symbology list and enter your data using GS1 Application Identifier syntax, for example (01)00312345678905(17)270630(10)LOT9F2(21)000123. Barcode Mint validates AI formats and lengths and inserts required separators between variable-length fields automatically. Error correction is fixed at ECC200 (Reed-Solomon) as with plain Data Matrix, so there's nothing to configure there. From there you can:
/barcode?type=gs1datamatrix&data=(01)00312345678905(17)270630 — to integrate with a serialization or labeling systemMaintain the required quiet zone even on small labels; Data Matrix's solid finder border tolerates tight surrounding print but still needs clear space to be reliably located by the scanner's decoding software. For regulated pharmaceutical and device labeling, verify print quality against ISO/IEC 15415 symbol quality grading, since many regulatory frameworks specify a minimum grade for compliance and manufacturers routinely fail audits over marginal print quality rather than encoding errors. Thermal transfer and laser marking on unit-dose packaging both benefit from testing under real production line speeds and lighting before validating a labeling process, since a symbol that scans fine on a static bench test can fail on a moving line. Always confirm the encoded AI string against GS1's syntax rules; a malformed AI — wrong length, missing FNC1 separator, or invalid date format — can cause pharmacy or hospital scanning systems to reject a label that otherwise looks correct to the eye.
GS1 Data Matrix shares its physical symbol with plain Data Matrix but adds a mandatory structured payload of Application Identifiers, so the two aren't interchangeable for regulated use even though a generic scanner can physically decode either. GS1 QR Code carries the same kind of AI-structured data in a QR symbol instead, which is more common in retail-facing applications since it doubles as something a consumer's phone can also scan for product information. GS1-128, a linear barcode rather than a 2D code, encodes the same AI concept but needs considerably more horizontal space, making it a poor fit for the small unit-dose and device labels where GS1 Data Matrix dominates. GS1 Digital Link Data Matrix goes a step further, embedding the same GTIN, batch, and expiry data inside a resolvable web URL rather than a plain AI string, so it works both as a supply-chain identifier and a consumer-facing link.