To create batch numbers for soap, give every batch a short code the day you pour it, built from the recipe, the date and a letter for the batch of the day: LAV260930A is the first lavender batch poured on September 30, 2026. Put that code on every bar's label or wrapper, and write the same code at the top of a batch log that records which lot of each oil, the lye and the fragrance went in. True soap isn't required to carry a batch number by federal rule, but a complaint, a bad fragrance lot or a shop's vendor form will all ask for one.
The short version
- Code = recipe abbreviation + pour date + batch letter. Pick it once and never change it.
- The code goes on every bar, on the wrapper, band or sticker, where it won't be thrown away with the box.
- The batch log records the supplier lot of every oil, the lye, the fragrance and any colorant, with weights.
- Add the date the bars are cured and ready, so nothing is sold early.
- TaroStack gives the batch its code, notes the lots it used, and holds the bars while they cure. More below.
A format that works
| Part | Example | Why |
|---|---|---|
| Recipe | LAV | Which soap. Three letters for each recipe, written down in a list |
| Pour date | 260930 | Year, month, day: sorts in date order |
| Batch letter | A | First batch that day; B for the second |
| Batch number | LAV260930A |
If you change a recipe, change the code too (LAV2 for the new lavender), so a bar can always be traced to the recipe it was made from. And if you'd rather keep it shorter, a day-of-year code works: LAV6273A. That one is explained in the Julian date code format.
The same idea for food makers is in how to create lot numbers, and whether to call it a batch or a lot (it rarely matters) is in batch number vs lot number.
What goes in the batch log
One page, or one row, per batch:
| Field | Example |
|---|---|
| Batch number and date poured | LAV260930A, Sep 30, 2026 |
| Recipe and version | Lavender oatmeal, version 1 |
| Each oil, its supplier lot and weight | Olive, lot 8812, 36 oz; coconut 76°, lot C4471, 24 oz; shea, lot SB-0921, 16 oz; castor, lot 2207, 4 oz |
| Lye: supplier lot and weight | Sodium hydroxide, lot NA-6610, 11.18 oz |
| Water | 22 oz distilled |
| Fragrance or essential oil: supplier lot and weight | Lavender EO, lot FO-2291, 3 oz |
| Colorant and additives, with lots | Ground oats, lot OT-0904, 1 oz |
| Bars cut, and bars sellable | 20 cut, 19 sellable |
| Cure starts, ready on | Oct 1, ready Nov 5 |
| Made by | JW |
The weights come from the soap making cost calculator's 5 lb batch, which is the same recipe. Always check your own recipe in a lye calculator; these numbers are for the example.
The supplier lots are the part that pays. If your fragrance supplier writes about a problem with lot FO-2291, the log tells you in a minute which batches used it, and the batch numbers on the bars tell you which of them are still on the shelf.
On the bar
Print the batch number where it stays with the soap: the wrapper, the band, or a small sticker on the back. A code on the shipping box goes in the recycling the day the bars arrive. A rubber stamp on a paper band works; so does a small label printer. If you sell at markets, a code on the bar is also how you'll know which batch a regular customer is talking about when they come back.
What the rules say
FDA treats a product as soap only when most of it is the alkali salts of fatty acids, its cleaning comes from those, and it's labeled, sold and represented only as soap (21 CFR 701.20). Soap in that sense isn't regulated by FDA as a cosmetic; FDA's small business fact sheet notes that some soaps are regulated by the Consumer Product Safety Commission (FDA). Make a claim like "moisturizing", or use synthetic detergents, and it can become a cosmetic, with FDA's cosmetic rules.
For cosmetics, the Modernization of Cosmetics Regulation Act of 2022 (MoCRA) added facility registration, product listing, safety substantiation records and serious adverse event reporting, and directs FDA to set good manufacturing practice rules (FDA). Small businesses, defined as those with average annual US cosmetic sales under $1,000,000 over the previous three years, adjusted for inflation, are exempt from registration and listing, and FDA's MoCRA page says from the GMP requirements too, unless they make certain products, such as ones that regularly touch the eye's mucous membrane or are meant for internal use (FDA guidance). Serious adverse event reporting isn't on that list of exemptions, and a batch number is how you'd connect a reaction to the bars that caused it.
This is general information, not legal advice. Whether your products are soap or cosmetics, and which rules apply, is worth checking with someone who knows cosmetic regulation.
Where this stops working
The code on the bar is easy. The log behind it is the work: every supplier lot copied from a jug or a bottle onto a sheet, on a day your hands are in gloves and the trace is setting up. Skip it once and the batch number points at nothing. Then there are the bars curing on the rack, which look finished and aren't, and the question of which batches used the fragrance lot your supplier has written about, asked of a stack of paper.
How TaroStack does it
TaroStack keeps the log as you make the soap. Record a batch against its recipe and it gets its batch number, and the oils, lye and fragrance come off from the lots you used, first-expired-first-out unless you choose, so the record of which lot of lavender went into LAV260930A is written without anyone copying a code. Your own checklist fields go on the batch record too, such as the trace time, the temperature, or whoever checked the weights, with a sign-off.
Curing fits as well. Put the batch on hold while it cures, and held stock is kept out of what you can sell, so a bar can't be shipped a week early; release it when it's ready. Lot labels for the batch print on a sheet of labels or a label printer. And when a supplier writes about a lot, the recall report shows which batches used it, who bought those bars, and what's still on your shelves.
Lots and recalls are on every plan, from $49 a month, and recipes and batches are on Standard at $99. The first 30 days are free, and your recipes and supplies import from a spreadsheet. If you'd like a hand setting up, ask, and we'll do it with you.
