A batch code is a short alphanumeric lot identifier the manufacturer prints or etches on a bottle and its carton. It identifies the production run, which usually implies an approximate production date. It is not an expiration date, not a serial number and not proof of authenticity. Formats are set by each company, so no universal decoder exists.
What is a batch code, and where is it printed?
A batch code, also called a lot code, marks the production run a unit came from. On fragrance it is normally printed in small type or laser-etched near the base of the bottle, on the underside, or around the collar, and repeated on the carton, usually on a bottom panel or an end flap. It is short, commonly three to eight characters, and it usually looks nothing like a date.
The reason it exists is traceability. If a manufacturer identifies a problem with one production run, batch codes let it withdraw that run rather than everything it has ever made. Compliance guidance describes exactly this scenario: a contamination issue affecting a single production run can be handled with a targeted recall instead of a mass one, provided the units can be identified. That is a manufacturing control, not a consumer feature, which explains why it is printed so discreetly and why brands publish no key to it.
Two consequences follow immediately, and most misunderstanding about batch codes comes from missing them. First, the code was never designed for you, so it owes you nothing in terms of readability. Second, it identifies a batch, not a bottle. Every unit filled in that run carries the same code, which is why a batch code cannot function as a serial number.
Is a batch code required by law?
It depends entirely on the market, and the US and EU answers are close to opposite.
In the European Union, Regulation 1223/2009 requires every cosmetic product to bear “the batch number of manufacture or the reference for identifying the cosmetic product,” with an allowance for products too small to carry it, where the information need appear only on the packaging. The same article requires a date of minimum durability, defined as the date until which the product stored under appropriate conditions will continue to fulfil its initial function, and requires that where minimum durability exceeds 30 months the label instead carry an indication of the period after opening for which the product is safe to use, shown with the open-jar symbol followed by a period in months or years.
In the United States there is no equivalent requirement. FDA’s summary of cosmetic labeling requirements covers product identity, net quantity, the responsible firm’s name and address, the ingredient declaration and country of origin. Batch numbers, lot codes and expiration dates are not on the list.
| Requirement | United States | European Union |
|---|---|---|
| Batch or lot code | Not required | Required: batch number of manufacture or an identifying reference |
| Expiration or durability date | Not required. FDA states there are no US laws requiring cosmetics to carry expiration dates | Date of minimum durability required where durability is 30 months or less |
| Period-after-opening symbol | Not required | Required where minimum durability exceeds 30 months: open-jar symbol plus a period |
| Prescribed code format | None | None; the regulation specifies no format |
| Who determines shelf life | The manufacturer. FDA calls this the manufacturer’s responsibility | The manufacturer, assessed in the product safety report |
| Small-package allowance | Not applicable | Yes, the code may appear on the packaging only |
This is why a US-market bottle can legitimately carry no date information of any kind, while the same fragrance bought in Europe carries a batch number and possibly a durability indication. The absence of a printed date on a US bottle tells you nothing about whether it is genuine. It is also why parallel-import stock sometimes carries markings a US-market bottle does not; the unit was labelled for a different regulatory regime.
What does a batch code actually tell you?
At best, roughly when the unit was filled. Most large fragrance manufacturers encode a year and either a month, a week or a day-of-year value into the code, and third-party lookup sites have reverse-engineered many of those schemes by collecting codes from stock whose age is known. A working code typically resolves to a month and year, sometimes only to a year.
What it does not give you is precision or meaning beyond that. A single batch can be filled across several days. The filling date is not the date the fragrance concentrate was compounded, which may be months earlier. Nothing in the code describes the conditions the bottle met afterwards, which is the variable that actually determines how it smells now.
It is also worth knowing that the format is a business decision rather than a regulated one. Compliance guidance on EU batch numbering states plainly that the format is commonly decided by the company, and the regulation itself prescribes none. A brand can change its scheme when it changes packaging supplier, opens a new filling site, or moves production between contract manufacturers, and it has no obligation to tell anyone.
How do you actually read a code, step by step?
There is no universal key, so the method is elimination and corroboration rather than decoding. Work through it in this order.
- Record the code exactly. Copy every character including letters, digits and any spaces, and note the order. Photograph it rather than transcribing from memory, because 0 and O, 1 and I, and 5 and S are routinely confused at that type size.
- Note its shape. Count the characters and note the pattern, for example three characters, or a letter followed by four digits. The shape is what a lookup site matches against.
- Identify the manufacturer, not the brand. One fragrance manufacturer fills for many brand names under licence, and the coding scheme belongs to the filler. Selecting the wrong entity is the most common reason a lookup returns nonsense.
- Run it through a lookup site and record the result. Expect a month and year at best.
- Corroborate with a second, independent site. Accept the result only if both agree. If they disagree, you have learned that the format is ambiguous, which is itself useful.
- Sanity-check the answer against reality. A code that resolves to a date before the fragrance launched is wrong. A code that resolves to next year is wrong. A code that resolves to fifteen years ago on a bottle in current retail packaging is probably wrong, because packaging generations change.
- Compare bottle to carton. The two codes should match. This check does not depend on decoding anything and is the most reliable thing you can do with a batch code.
- Stop if nothing resolves. An unrecognised format is common and means only that the scheme is not in that site’s catalogue.
Step six is the one people skip and the one that catches most errors. A decoder will happily return a confident date from a code it has misread, because it is applying a rule rather than checking a database. The launch-date test costs thirty seconds and invalidates a large share of wrong answers. One thing we cannot help with: we do not publish production dates, and nothing in our catalogue records them. The word “batch” does not appear in a single one of our listing descriptions. If the age of a particular bottle matters to you, the code on the unit itself is the only thing that will tell you, and you can only read it once the bottle is in your hand.
Does a batch code tell you when a perfume expires?
No, and on a US-market bottle there is usually nothing that does. FDA states plainly that there are no US laws or regulations requiring cosmetics to have specific shelf lives or expiration dates on their labels, and that determining a product’s shelf life is part of the manufacturer’s responsibility.
Brands that discuss it publicly give ranges rather than dates. Creed’s guidance is that an opened fragrance lasts three to five years on average, that it is ideally used within two to three years, and that an unopened bottle stored properly lasts considerably longer because it has had no exposure to oxygen. Creed also describes what a turned fragrance smells like: sour, metallic or acidic, almost vinegary, with the liquid often darker or more opaque than when it was bought.
Storage is the real clock. A peer-reviewed review of essential oil stability found compositional change proceeding considerably faster under illumination than in darkness, and notes that a temperature rise of 10 degrees Celsius approximately doubles chemical reaction rates. Commercial stability laboratories test fragrance against heat, light and freeze-thaw cycling, and accelerated aging protocols work by raising the temperature to simulate longer storage, which tells you how directly heat substitutes for time in this product category.
There is a safety dimension as well as an aesthetic one. The European Commission’s scientific committee summary on fragrance allergies notes that oxidation products of common fragrance terpenes, including limonene, linalool, geraniol and linalyl acetate, have been identified as potent sensitizers in predictive animal tests, and that the oxidised forms give frequent allergic contact reactions in patch-tested dermatitis patients while the non-oxidised compounds rarely do. It also notes that air oxidation can be limited by handling and storage that avoids air exposure. A bottle kept in a hot, bright bathroom ages faster in every sense than one kept closed in a drawer.
| Question | Can a batch code answer it? |
|---|---|
| Roughly when was this filled? | Usually, to within a month or a year, if the scheme is known |
| Is this bottle genuine? | No. Codes are not registered anywhere public |
| Does the bottle match its carton? | Yes, and this is its most reliable use |
| When does it expire? | No. US labels carry no expiration requirement |
| How was it stored? | No, and storage matters more than age |
| Has the formula been reformulated? | No. Reformulations are rarely announced or marked |
| Which market was it made for? | No, though EU-labelled stock carries markings US stock need not |
How reliable are online batch code checkers?
Useful, and not authoritative. They work by pattern matching. Someone has worked out that a given manufacturer writes the year in a particular position and the month in another, and the site applies that rule to whatever you type. When the rule fits, the answer is right. When a brand changes packaging supplier, moves production, or uses a filler whose scheme the site has not catalogued, the answer is wrong or simply absent.
The failure mode that matters is that these tools rarely say “I do not know.” A rule-based decoder returns a date because that is what it does, and a confidently displayed month and year feels like a fact. Treat every result as an estimate with an error bar. Two independent checkers agreeing is meaningfully more persuasive than one. A checker returning nothing is common and means only that the format is unrecognised, not that the bottle is suspect.
Does a matching batch code prove a bottle is genuine?
No. Batch codes are not registered in any public database, so there is nothing to verify a code against. A counterfeiter can print plausible characters as easily as anyone, and printing a code that a lookup site will happily decode is not difficult once you know the format, because the format is public knowledge on those same sites.
The code is still worth checking, for a comparative reason rather than a decoding one. The code on the bottle should match the code on its carton. In Davidoff and Cie v. PLD International, a reseller covered the box codes with white stickers and obliterated the batch codes on Cool Water bottles with an etching tool, leaving a mark roughly an inch and an eighth long near the base. The reseller’s stated motive was to stop Davidoff identifying which vendors were supplying it. The Eleventh Circuit held the altered bottles were materially different from what Davidoff sold, upheld a preliminary injunction, and noted that physical alterations making consumers think a product has been harmed or tampered with create actionable confusion. A footnote recorded Davidoff’s position that removing the code interfered with its quality control system.
Read that as evidence about effort. Codes that have been scratched, solvent-wiped, stickered over or etched away did not lose themselves. Somebody spent time removing them, and the documented reason for doing so is to break traceability.
What a batch code will never tell you
It will not tell you whether the bottle is authentic, which is the job people most often try to give it and the one it cannot do.
It will not tell you how the bottle was stored, and storage matters more than age. Two bottles from the same run, one kept in a climate-controlled stockroom and one in a hot loading bay, are in materially different condition and carry identical codes.
It will not tell you whether the fragrance has been reformulated. Reformulations happen for regulatory, cost and supply reasons, are rarely announced, and are rarely marked on packaging. People sometimes use batch codes as a proxy for formulation era, which is a reasonable heuristic and not a fact, because a brand can change a formula without changing anything visible.
It will not give you a guaranteed date, only one inferred from a scheme the manufacturer never published and could change without notice.
And on a US-market bottle it may not exist at all, which is lawful and unremarkable. A missing code on a US bottle is not a red flag; a removed code is.
The honest summary is that a batch code is one input among several. It is most useful as a cross-check between bottle and carton, and as a rough age estimate when choosing between two units of the same fragrance. It is least useful as an authenticity test.
What a listing can tell you is the condition of the unit, and that is worth reading closely rather than skimming. Across the 3,832 bottles we currently list, about 93% are sealed retail, around 5.6% are marked as testers and about 1.4% as unboxed. Condition is a decent proxy for how a bottle has been handled and roughly how old it is likely to be, which is exactly the question a batch code is being asked to answer.
Bottles to try this on
Fragrances where batch age is worth weighing before you buy, because the opening is the first thing to go: Creed Aventus, Acqua di Parma Colonia, Guerlain Shalimar, Dior Sauvage Eau de Toilette, Coco Mademoiselle.
Related reading
- how to spot a fake bottle — label rules, cap and collar checks, and what to do next
- what a tester bottle actually is — the same liquid, a plain carton and usually no cap
- what an unboxed bottle really means — what you lose with the carton, and what discount is fair
- why the same bottle costs wildly different amounts — condition, channel, size and import rules
Common questions
Where is the batch code on a perfume bottle?
Usually in small print or a laser etch near the base of the bottle, on the underside, or around the collar, and repeated on the carton on a bottom panel or end flap. It is typically three to eight characters and does not look like a date. A phone camera at full zoom under good light is the easiest way to read it.
Can a batch code tell me if my perfume is fake?
No. Batch codes are not registered in any public database, so there is nothing to check a code against, and a counterfeiter can print plausible characters. The useful test is comparative: the code on the bottle should match the code on the carton, and a code that has been scratched off, stickered over or etched away is a genuine warning sign.
Do perfumes have an expiration date?
Not in the United States as a rule. FDA states there are no US laws or regulations requiring cosmetics to carry specific shelf lives or expiration dates, and calls shelf life the manufacturer’s responsibility. EU-market products must carry a batch number, plus either a durability date or a period-after-opening symbol depending on how long the product lasts.
How accurate are online batch code checkers?
They are pattern matchers, not databases. A site applies a rule someone reverse-engineered for a given manufacturer, so the answer is right when the rule fits and wrong or missing when a brand changes filler, packaging supplier or format. Use two independent checkers, accept the result only if they agree, and treat it as a month and year at best.
Why did the batch checker give me no result?
Almost always because the format is not in that site’s catalogue, which happens when a brand changes filling site or packaging supplier, or when the manufacturer selected was wrong. Remember that the coding scheme belongs to the company that fills the bottle, not to the brand on the label. A blank result is not evidence of a problem.
How old is too old for a perfume?
It depends on the composition and the storage far more than the date. Creed’s published guidance is three to five years once opened, ideally used within two to three, with unopened bottles lasting longer because they have had no oxygen exposure. Citrus-led and delicate florals fade first; woody, resinous and oriental compositions tolerate years better.
Does an old batch smell different from a new one?
It can. Volatile top notes go first, which makes an older bottle open flatter and read as heavier or more base-dominant. A genuinely turned fragrance is different again: sour, metallic or vinegary, often with a darker or cloudier liquid. That is degradation driven by heat, light and air, not a stronger formula.
Is it a problem if a bottle has no batch code at all?
Not on a US-market bottle. FDA’s required label elements do not include a batch number, lot code or expiration date, so a US bottle can lawfully carry none. EU-market product must carry one. What matters is the difference between absent and removed: a code that has been scratched, wiped or etched away is a serious warning sign.
Can a batch code tell me if a fragrance was reformulated?
Not reliably. Reformulations happen for regulatory, cost and supply reasons, are rarely announced, and are rarely marked on packaging. Using a production year as a proxy for formulation era is a reasonable heuristic that collectors use, but it is an inference, not a fact. A brand can change a formula without changing anything visible on the bottle.
Should I avoid buying if the seller will not share the batch code?
It is a reasonable thing to weigh, especially for citrus-led or delicate floral releases where age shows fastest. A seller who will not share a code is not necessarily hiding anything, since many warehouses do not record codes per unit. Treat it as one unknown among several and price it into what you are willing to pay.

