RiScan app icon RiScan

How to Read Expiration Date Codes on Food Packaging

“28.3.27” — is that the 28th of March 2027, or March 27th 2028? Date stamps follow no single worldwide standard, and imported products bring their home country's habits with them. Here's how to decode the common ones.

The three big orderings

OrderExampleCommon in
Day–Month–Year28.3.27 → 28 Mar 2027Europe, most of the world
Year–Month–Day27.3.28 → 28 Mar 2027Japan, China, Korea (e.g. 2027.03.28)
Month–Day–Year3/28/27 → 28 Mar 2027United States

The trap: a code like “28.3.27” is valid in more than one ordering, and the only clues are context — the product's origin, whether one number can't be a month, and which resulting date is plausible for that kind of food. A juice carton “expiring” four years from now probably isn't day-first.

Month-and-year-only stamps

Long-life products often print just “11.2026” or “NOV 2026”. Convention: the product is good through the end of the stated month. Canned goods, dry pasta, and chocolate typically use this style.

Julian date codes

Some producers (notably eggs and canned goods in the US) stamp a three-digit day-of-year: “083” means the 83rd day of the year — March 24th. Often paired with a final digit for the year: “0837” → day 83 of 2027. These are usually packing dates, not expiry dates — the shelf life starts from there.

Lot codes vs. date codes

Not every stamped string is a date. Codes like “L2261A” or “BN 4471” identify the production batch for recalls. If a string doesn't resolve to a sensible date in any ordering, it's probably a lot code — look elsewhere on the package for the actual date, usually near the words “best before”, “use by”, “BB”, or “EXP”. (What those words mean is its own topic: best before vs. use by.)

Or skip the decoding entirely

This ambiguity is exactly why RiScan was built to read the printed date rather than the barcode. Point your iPhone camera at the stamp and the app recognizes over 70 date formats — including two-digit years, month-only stamps, and ambiguous codes like “28.3.27”, which it interprets and shows you for confirmation before saving. You get the decoded date attached to a photo of the product, and a notification before it arrives.

Let the app do the decoding. RiScan reads 70+ date formats with your camera — free for iPhone and iPad.

Download RiScan on the App Store

Quick reference

  • EXP / E: expiration date follows.
  • BB / BBE / MHD (German) / DLUO (French): best before.
  • PKD / MFG: packed / manufactured date — not an expiry.
  • 賞味期限: best-before (Japanese); 消費期限: use-by (Japanese).
  • Three digits (083): Julian day-of-year, usually a packing date.

Once decoded, the question becomes remembering it — that's covered in how to keep track of expiration dates.