Advertisement

Blog Viewer

Faster than I expected - Final rule for the 12-digit NDC

By Dennis Tribble posted 03-09-2026 09:31

  

Last Thursday (3/5/2026), The FDA published its final rule on revising the National Drug Format and Drug Label Barcode Requirements.

Last September I published an analysis of the impact of this change. I did not expect the change to be formalized this quickly.

I should note one error in the article, which is that, in a non-NDC GTIN-14 barcode, the check-digit is the last character of the 14-digit GTIN as opposed to being an additional character after the GTIN. Specifically, this effects Figures 4 and 5, but does not otherwise change their meaning.

The short story is:

  • Industry will no longer be able to use the GTIN-12 (aka UPC) 12-digit format for the NDC barcode data. The only industry-standard data encoding for the NDC will be the GTIN-14 encoding.
  • The NDC will no longer be the prominent and primary identifier in a GTIN-14 encoded barcode. It will become ancillary information (like lot number and expiration date) appended to the primary identifier which will, perforce, be a GTIN.
    • Each such ancillary data element is identified by an application identifier (AI) number - for example the AI for a lot number is 10.
    • Each AI represents either fixed-length or variable-length data. 
      • Expiration date (AI = 17) is fixed-length - 6 numeric characters in YYMMDD format.
      • Lot number (AI = 10) is variable length
      • The AI proposed for the 12-digit NDC (AI = 715) has been established by GS1 as a variable-length field that can contain up to 20 characters
    • GS1 recommends, but does not enforce, that fixed-length AIs are to be placed before variable-length AIs. In some consulting work I am doing, I have encountered a number of such barcodes where variable-length and fixed-length AIs are intermixed.
    • When multiple variable-length AIs are encoded within a barcode, or when variable-length AIs appear in the encoding before fixed-length AIs, the end of each variable length data field must be marked by an unprintable FNC1 (ASCII-29) character that tells parsing software that the following characters represent another AI. The only exception occurs when a variable-length AI's data is the final data encoded in the barcode. This may create significant problems for current barcode scanning software that (a) expects the NDC to be prominently encoded as the primary code and (b) may not be written to detect and handle the FNC1 code. Additionally, barcode scanners may need to be reprogrammed to detect and report non-printable characters.
  • There will be a 3-year period during which both old and new barcode encoding will coexist in the supply chain. Barcode scanning software will need to be able to tell the difference between data encoded in its 10-digit format (and prominently displayed as the first identifier) and data encoded in its 12-digit format (and encoded later in the barcode data).
  • The FDA will abandon its mandate for the NDC to appear in a linear barcode.

In the referenced analysis, I proposed two changes that might mitigate hazards associated with this change:

  1. Change the definition of the 715 AI to be a 12-digit fixed-length numeric field
  2. Have the FDA mandate a specific encoding of the 12-digit NDC within a GTIN-14 barcode to facilitate its ready identification.

I again urge ASHP to take a prominent position in this matter to work with both FDA and GS-1 to create and enforce such a standard encoding. 

As always, the opinions expressed in my blog are my own.

Dennis A. Tribble, PharmD, FASHP

Retired

Ormond Beach, FL

tribbledennis@gmail.com

0 comments
40 views

Permalink