1 · Lye is a different class of hazard
Every other making guide on this site handles heat. Hot wax burns, and it tells you immediately. This one handles a corrosive that attacks the person holding it, and the most useful thing known about it is that it does not always announce itself.
⚠️ A lye burn may not hurt yet. CCOHS, on sodium hydroxide: "Contact can cause pain, redness, burns, and blistering. Permanent scarring can result. A severe exposure can cause death. Burns may not be immediately painful; onset of pain may be delayed minutes to hours."[1]
That one sentence changes the whole procedure. You cannot rely on sensation to tell you that you have been splashed. Rinse on suspicion, not on pain.
Eyes are worse. "Contact causes severe burns with redness, swelling, pain and blurred vision. Permanent damage including blindness can result."[1] Goggles, not glasses, and not "when I'm pouring" — whenever the lye is out of its container.
The flush is longer than you think
CCOHS's first aid for skin contact is not a rinse under the tap. "Quickly take off contaminated clothing, shoes, and leather goods… Quickly and gently blot or brush away excess chemical. Immediately flush with gently flowing water for at least 60 minutes. DO NOT INTERRUPT FLUSHING. If it can be done safely, continue flushing during transport to hospital." For eyes, the same 60 minutes, "occasionally lifting the upper and lower eyelids."[1]
⚠️ Flush with water. Do not try to neutralise it on skin. Reaching for vinegar is an instinct worth unlearning: it is a second chemical reaction on tissue that is already injured, and it costs time that the flush needs.
| Source | Skin contact | Eye contact |
|---|---|---|
| CCOHS[1] | at least 60 minutes | at least 60 minutes |
| New Jersey Department of Health[2] | at least 30 minutes | at least 30 minutes |
This page uses 60 minutes, and it is only fair to say that is a choice. Two sources this guide already relies on give different durations for the same exposure to the same chemical. 60 is the conservative end, the injury is one that can progress while it is painless, and no source suggests harm from flushing longer — so the longer figure is the one to act on. But a maker who reads the New Jersey sheet and sees 30 has not misread it.
⚠️ A shorter figure circulates, and this page will not print it as fact. Fifteen minutes for skin is widely attributed to CDC and ATSDR. Every route to cdc.gov and atsdr.cdc.gov refused on 18 September 2026 — 403 and 404 respectively, including through the rendering reader that had reached the NIOSH pocket guide earlier the same day. So it is named here as unverified and kept out of the table. If you are treating an exposure, flush for the longest time you have a source for.
Metals, and why the pot is a safety decision
Sodium hydroxide and several common metals make hydrogen. CCOHS states it plainly — "Contact with metals liberates flammable hydrogen gas" — and lists the solution as "Corrosive to: aluminum alloys, carbon steel, and other metals."[1] NIOSH's pocket guide gives the incompatibilities as "Water; acids; flammable liquids; organic halogens; metals such as aluminum, tin & zinc; nitromethane", with the note "Corrosive to metals."[3]
So the pot is not aluminium. An aluminium stockpot is not a cheaper version of the right pot; it is the wrong equipment for this chemistry, and the same goes for tin and zinc.
Stainless steel is the usual answer, and "stainless steel" is not one material. Grades differ, and compatibility is not independent of concentration or temperature — a vessel that is unremarkable in a cool solution is not automatically unremarkable in a hot one, and lye solution gets hot by itself. Use a vessel whose specific material is rated for the concentration and the temperature you will actually expose it to, on the maker's own statement. That is the same rule this page applies to gloves two paragraphs down, and for the same reason: a material category is not a compatibility statement.
⚠️ "Attacks plastics" and "wear gloves" are both true, and they are not in conflict. New Jersey's hazardous substance fact sheet says sodium hydroxide "can attack IRON, COPPER, PLASTICS, RUBBER and COATINGS";"Footnote 2">[2] CCOHS's own advice is to wear chemical protective clothing and gloves.[1] Some glove and container materials are suitable here and others are not, and neither document says which plastics, at what concentration or temperature. Take the compatibility statement from the manufacturer, for the concentration involved, rather than reasoning from the word "plastic" — which is the same over-broad inference this callout is warning about.
The exotherm, and the order of addition
Lye into water. Never water into lye. That is CCOHS's own instruction — "Never add water to a corrosive. Always add corrosives slowly to COLD water" — and the reason is on the same page: sodium hydroxide "reacts violently with water".[1] Water is also the first entry on NIOSH's incompatibilities line.[3] Adding water to solid or concentrated lye puts a large amount of heat into a small volume; adding lye to the full volume of cold water spreads it.
⚠️ This page publishes no temperature for that reaction, deliberately. Figures circulate — 190 °F, 200 °F — and none of them comes with a concentration, a starting temperature, a vessel or a rate, which are the things that would make a number mean anything. The mechanism is sourced; the number is not, so this page states the mechanism and stops.
Work where the air moves, and keep your face away from the vessel. CCOHS's handling advice is to "avoid generating vapours or mists" and to use "corrosion-resistant tools and equipment"; its engineering controls call for "a local exhaust ventilation and enclosure", through "a corrosion-resistant exhaust ventilation system separate from other ventilation systems" that exhausts "directly to the outside".[1] New Jersey's sheet puts the same idea as a hierarchy: enclose the process for "severely irritating and corrosive chemicals", use local exhaust "for chemicals that may be harmful with a single exposure", and use general ventilation "to control exposures to skin and eye irritants".[2] A kitchen has none of that — which is the argument for mixing outdoors, or under a working extractor, rather than over the hob.
What the occupational standards assume
The rules written for this chemical assume a workplace. OSHA requires that "where the eyes or body of any person may be exposed to injurious corrosive materials, suitable facilities for quick drenching or flushing of the eyes and body shall be provided within the work area for immediate emergency use."[4]
⚠️ That is an occupational requirement, and a kitchen is not a workplace with an eyewash station. Saying so is more honest than pretending a bottle by the sink is equivalent. What it should change is where you work: within reach of a sink or shower that can run gently for an hour, with nobody else in the room, and never with a hose you cannot control.
Storage is a separate problem from handling
While you are making soap you control exposure. Between batches you control access. CCOHS: store "in an area that is: cool, dry, well-ventilated, separate from incompatible materials", and "in the original, labelled, shipping container."[1] New Jersey adds: "Store in tightly closed containers in a cool, well-ventilated area away from WATER and MOISTURE."[2]
⚠️ Never decant lye into a food or drink container, and keep it out of reach of children. This is a live enforcement area rather than a hypothetical: CPSC recalled a sodium hydroxide product sold on Amazon in April 2026 because the packaging "is not child-resistant, posing a risk of chemical burns and irritation to the skin and eyes", as required by the Poison Prevention Packaging Act — and four further sodium or potassium hydroxide recalls in 2023 name the same failure — and three of those four describe the recalled product as "commonly used for soapmaking and cleaning", which names this audience.[5]
2 · The arithmetic, and why the number moves
Soap is a reaction with a stoichiometry, and the recipe is the arithmetic of it. Each fat needs a particular mass of alkali, expressed as its saponification value — and that quantity has a published definition rather than a craft one. ISO 3657:2023, clause 3.1, gives it the symbol Is and defines it as the "number of milligrams of potassium hydroxide required for the saponification of 1 g of the product tested".[6]
Which is why you cannot swap oils. Replacing olive with coconut at the same weight changes how much alkali the batch needs. Every substitution is a recalculation, not a swap.
⚠️ And KOH is not NaOH. Potassium hydroxide makes soft and liquid soap, sodium hydroxide makes bars, and they cannot be substituted gram for gram. The molar masses are different — sodium hydroxide 39.997 g/mol,[7] potassium hydroxide 56.106 g/mol[8] — so one mole of KOH weighs 1.4027 times one mole of NaOH. A saponification value published as milligrams of KOH per gram of fat therefore overstates the sodium hydroxide mass by that factor, which is what the conversion below removes.
That ratio is the conversion everyone quotes four different ways. The published saponification value of a fat is conventionally in milligrams of KOH per gram. To get the sodium hydroxide mass you scale by the ratio of the molar masses:
56.106 ÷ 39.997 = 1.4027
NaOH mass = oil mass × (SAPKOH ÷ 1000) × (39.997 ÷ 56.106)
= oil mass × SAPKOH ÷ 1402.7
⚠️ the 1000 is milligrams to grams, and it is written out here
because it is the step that gets applied twice or not at all
NaOH needed = KOH SAP value ÷ 1.4027
…which is the same operation as "multiply by 0.713", and the same operation again as
"divide by 1402.7" when the SAP value is in milligrams and you want grams.
⚠️ The third form hides a unit conversion inside the chemistry. "Divide by 1402.7" folds milligrams-to-grams into the molar-mass ratio. A maker reading two charts written in two of these forms can easily apply the conversion twice, or not at all. Decide which form you are using, write the units down, and do it once.
A saponification value is a property of a lot, not of a name
"Olive oil" is not a specification. A fat's saponification value depends on its fatty-acid composition, which varies with crop, region, season and refining — so published tables give ranges, and two calculators can return different lye weights for the same recipe because they picked different points in those ranges, or assumed different alkali purity.
And the standard says why it moves, which is more useful than knowing that it does. ISO 3657's scope states that "the saponification value is a measure of the free and esterified acids present in fats and fatty acids".[6] It counts the acid in both forms — already free, and still bound up in the triglyceride — so anything that frees or binds acid moves the number. That is refining and storage as much as crop and season, and it is the reason a value measured on one lot is a statement about that lot.
For an ideal triglyceride of molecular mass M:
SAP (mg KOH per g) = (3 × 56.106 × 1000) ÷ M
3 = the three ester groups on the molecule ·
56.106 = the molar mass of KOH ·
1000 = grams to milligrams
That is arithmetic from molar masses, not a measurement — and it explains the whole argument of this section. A fat whose average molecular mass is lower carries more ester groups per gram, so it needs more alkali per gram, so its saponification value is higher. The number moves because the composition moves, and that can be shown here without publishing a single table figure.
⚠️ The body that defines the measurement has published wrong figures for it and corrected them. ISO 3657:2023 is the sixth edition, and it replaces ISO 3657:2020. Its foreword lists what changed: "errors in the calculations of the mean relative molecular mass (C16 TAG molecular weight) in B.7.4 and saponification value in B.7.5 have been corrected", and "incorrect values for the repeatability limit as well as the reproducibility limit values in Table A.1 have been corrected".[6]
Both halves matter here. A worked saponification value in the standard's own annex was wrong, and so were the limits describing how closely two laboratories should agree. If that is the history at ISO, a figure copied from a calculator into a blog into a recipe has no provenance at all — which is the argument this section is making, stated by the best available source rather than by us.
⚠️ This page deliberately publishes no table and no purity defaults. The figures circulating in the research for this guide — a named span for olive, and two calculators' assumed purities — could not be verified against the calculators' own settings pages, and a lye weight is the wrong place to repeat an unverified number. Use one calculator, read its stated assumptions, and keep using that one.
⚠️ A spec sheet may carry an acid value beside the saponification value, and they are not interchangeable. ISO 660:2022, clause 3.1, defines the acid value as the milligrams of potassium hydroxide needed to neutralise the free fatty acids in one gram of fat.[9] Same units, same alkali, same denominator, different property: the acid value counts only the acid that is already free, where the saponification value counts the free and the esterified together.
So an acid value is much the smaller number, and putting it where the saponification value belongs under-doses the lye badly — which is the failure that leaves unreacted alkali in a finished bar. Read the label on the number before you use it, not just the number.
Which is also why this guide does not work the example. The natural illustration here is two named oils, the same 500 g of each, and the two different lye weights that come out — but that needs two published saponification values, and a saponification value is exactly the table figure the callout above refuses to repeat. Work it with the numbers you hold instead: take each fat's value from the specification your supplier gives for it, run both through the conversion above at the same fat mass, and the gap between the two answers is the recalculation that a swap skips.
Superfat does two jobs, and most guidance names only one. Leaving a percentage of the oils unsaponified gives a milder bar, which is the reason usually given. It is also the margin that absorbs error — in the table, in the assumed purity of your alkali, and in your scale. Both are real, and neither is a reason to skip the calculation.
⚠️ A lye discount and a superfat are not two words for one thing. A lye discount is a reduction in the calculated alkali — an input you choose. A superfat describes the intent that some fat is left unsaponified — an outcome you want. Neither guarantees that a particular percentage of a particular oil survives the reaction: saponification does not set your most expensive oil aside, and what remains unreacted is not a tidy proportional sample of everything you put in.
3 · Water is the third denominator
Water does not change how much alkali the fats need. It changes concentration, working time and how the batch behaves in the mould. And it is specified three different ways, against three different denominators:
Water as a percentage of oils — water ÷ oil weight
Lye concentration — NaOH ÷ (NaOH + water)
Water-to-lye ratio — water ÷ NaOH
With O = oil, L = lye, W = water:
p = W ÷ O — water as a percentage of oils
c = L ÷ (L + W) — lye concentration
r = W ÷ L — water-to-lye ratio
c = 1 ÷ (1 + r) and r = (1 − c) ÷ c
Two of the three carry the same information. The first does not. Concentration and water-to-lye convert into each other with nothing else supplied, so quoting either one fixes the other. Water as a percentage of oils does not convert, because it is measured against the oils while the other two are measured against the lye — and how much lye a recipe needs depends on which fats are in it. Two recipes both at "30 % water" can sit at different lye concentrations. That is algebra rather than an opinion, and it is the whole reason the denominator has to travel with the number.
⚠️ Three numbers, three denominators, one word. "38% water" and "33% lye concentration" and "2:1 water to lye" are not variants of one figure; they are answers to different questions. Carrying a number from one recipe into a calculator expecting another is how a batch ends up with a water amount nobody intended.
This is the third time this shape appears across these guides. The wax melt guide has fragrance percentage measured against wax, against total batch, or against nothing stated; this guide has the saponification conversion expressed four ways and water expressed three. The failure is never the arithmetic. It is carrying a number across a denominator boundary without noticing.
4 · The three methods
Cold process mixes lye solution and oils near room temperature, pours, and lets the reaction finish in the mould over the following day. Hot process drives the same reaction with applied heat until it completes in the pot. Melt-and-pour starts from a base someone else saponified: you are melting finished soap, colouring and scenting it, and pouring it.
⚠️ The method is not the classification test. Whether your finished bar is legally soap, or a cosmetic, turns on what it is made of, what does the cleaning, and how it is sold — not on which process you used. A melt-and-pour bar can be true soap, and a cold-process bar can be a cosmetic. The regulatory guide is the one that answers that, and it matters before you write a label.
Only two of the three put you in a room with lye. Melt-and-pour is the route that lets the maker skip section 1 entirely — the base arrives already saponified, which means somebody else did that step with an alkali before it reached you — which is worth knowing if the reason you have not started is the corrosive rather than the craft.
5 · Cure, and a word two guides disagree about
Soap makers rest finished bars for weeks before use, and call it curing. The usual account is that water leaves the bar, which hardens it and makes it last longer in the dish.
The interesting part is that the word travels badly. A fragrance supplier arguing that wax melts do not need curing points at this craft for the origin of the practice: "We suspect that curing is part of the mystique transferred from cold press soap."[10] Same word, two crafts, and the wax melts guide carries that argument in full, because there it is contested.
⚠️ This page publishes no cure schedule, and does not source the mechanism either. Four and six weeks are both widely repeated, and the accounts of what curing does came from makers rather than from measurements. What you can do without trusting any of it: weigh a bar, leave it, and weigh it again. A bar that has stopped losing weight has stopped losing water, and that is a measurement you made.
6 · Fragrance: Category 9 is not Category 12
Soap is a rinse-off product on the skin, and IFRA limits it far more tightly than a candle or a wax melt. One Standard, read whole, shows the size of the gap. From the IFRA Standard for eugenol, published 2023 under Amendment 51 — the amendment in force — under the heading "MAXIMUM ACCEPTABLE CONCENTRATIONS IN THE FINISHED PRODUCT (%)":[11]
| Category | What it covers | Eugenol, maximum in the finished product |
|---|---|---|
| Category 9 | rinse-off products, which is where a bar of soap sits | 4.9 % |
| Category 12 | products not intended for skin contact, which is where candles and melts sit | No restriction |
⚠️ A widely repeated figure for this same ingredient is out of date. "Eugenol, 0.5% in Category 9" is widely attributed to the 43rd Amendment — ⚠️ an attribution this page could not verify against a primary document, so treat the amendment number as well as the figure as unconfirmed. What is confirmed is the current Standard above. The stale figure still circulates as though it were current — paired with "Category 11", which was where candles sat before they moved to Category 12 at the 49th. A stale limit and a stale category travel together, and most pages carrying them do not say which amendment they were written against. Check the amendment number on any IFRA figure before you formulate against it.
⚠️ And 4.9% is not a fragrance load. It is the ceiling on eugenol in the finished bar. A fragrance oil containing 10% eugenol would only reach that ceiling at a 49% fragrance load, which is not a soap. The certificate your supplier gives you states the limit for that mixture in each category; the ceiling on one constituent is a different calculation, and neither is a recipe recommendation.
What a certificate looks like, from three suppliers
That last sentence — "the certificate your supplier gives you" — is worth making concrete. Three vanilla fragrance oils, three suppliers, all three documents read on 18 September 2026. ⚠️ Three products is not a survey, and nothing here describes the trade as a whole.
| Oil | What the page gives you | For soap |
|---|---|---|
| Bramble Berry, Vanilla Select[12] | IFRA certificate, 51st Amendment, assessed 31 January 2024 | Category 9: 6.20 % |
| Nurture, Vanilla Cream[13] | IFRA certificate, 50th Amendment, published 06/30/21 | Category 9: 2.85 % |
| CandleScience, Vanilla Element[14] | No certificate on the page | Bar soap recommendation: 2.0–6.0 % |
⚠️ Those are not three answers to one question, and two of them are not even the same kind of number. These are three different mixtures, so three different Category 9 limits is exactly what a certificate is for — 6.20 % and 2.85 % are limits on those formulas, correct and unrelated to each other.
The third is a usage recommendation, not a limit, and CandleScience says so itself: "Usage amounts are recommendations only… See IFRA certificate for max usage levels."[14] ⚠️ The page directs you to a certificate it does not provide. That is the honest reading of the third row: not a lower number, but a different document — and one you would have to ask for.
A certificate on sale today, assessed under a superseded amendment
Nurture's IFRA report for Vanilla Cream states compliance with the "50th Amendment published on 06/30/21".[13] The 51st was notified on 30 June 2023, and both of its compliance dates have passed — 30 March 2024 for new creations and 30 October 2025 for existing ones.[11] So the document offered with the product today was assessed under the amendment before the one in force.
⚠️ And the supplier's own note says what an amendment change did to this oil. Dated 1/15/2023 on the same product page: "With the new IFRA 50 regulation, the use rate of this fragrance is significantly lower than before. Because of this, we recommend using this scent in products other than cold process."[13]
A fragrance made impractical for soap by a change in an amendment, said by the people selling it. That is the whole argument of this section, arriving from the supplier rather than from us.
But out of date is not the same as wrong
Bramble Berry publishes both amendments for the same oil, which makes the comparison possible.[12] The two certificates are genuinely different documents — different lengths, different assessment dates — and this is what changed:
| Category | 50th | 51st |
|---|---|---|
| 9 — soap, rinse-off bath products, shampoo | 6.20 % | 6.20 % |
| 10A — household cleaning products | 6.20 % | 6.20 % |
| 10B — air freshener sprays | 21.00 % | 39.70 % |
| 12 — candles and incense | 100.00 % | 100.00 % |
⚠️ For this oil the soap number did not move at all. What moved was 10B, air freshener sprays, which nearly doubled. So a certificate assessed under a superseded amendment is not automatically a wrong number — it is an unknown one, and the only way to find out which is a current certificate.
That is the reason to check the amendment, stated precisely. Not because an old figure is false, but because nothing on the document tells you whether the figure you need is one of the ones that changed.
The constituent that produces the limit
This section has been asserting that a restricted constituent at some concentration is what produces a mixture's category limit. Bramble Berry's certificate shows it. Its EU allergens pages list Coumarin 3.5 — and, on the same list, Eugenol: Not Present.[12] The limit on this mixture is not produced by the ingredient this section opened with, which is exactly why the certificate is per-formula and the Standard is per-ingredient.
⚠️ Two dates in one PDF, and it is worth seeing. The IFRA table is dated 31 January 2024; the allergen and Proposition 65 pages behind it are dated 24 August 2022.[12] The constituent data is seventeen months older than the assessment sitting on top of it. Nothing about that is improper — but "the certificate is current" is a claim about one page of it.
⚠️ And a restatement drifts. The certificate gives the existing-product compliance date as "October 29, 2025", where the IFRA Standard quoted at the top of this section gives 30 October 2025.[11] One day, on a document restating a primary source — which is the reason this guide quotes the Standard rather than a supplier's summary of it.
Vanillin three ways, and a flash point with no method
The same three suppliers publish the same property in three incompatible forms. CandleScience gives "More than 5%", a band rather than a number.[14] Bramble Berry's certificate gives Vanillin as "Not yet available".[12] Nurture gives 0%.[13]
⚠️ And vanillin is not the only thing that browns a bar. Nurture's page publishes Vanillin: 0% and, in the same specification block, Discoloration: Dark brown.[13] If you are choosing a fragrance to avoid a brown bar, a vanillin figure of zero is not the assurance it looks like.
The flash points have the same problem in a different place. CandleScience gives 226 °F (107 °C);[14] Nurture gives ">200°F", a bound rather than a value.[13] Neither names the method — and UL 283 accepts five different ones, all closed-cup, which the wax melts guide sets out. Ask which method produced the number before comparing two suppliers' figures.
7 · What this guide won't decide
Your recipe. Oils, superfat and water are formulation choices, and the arithmetic above is what makes them yours rather than a copied number.
The temperatures. Gel phase, false trace, the mismatch that makes stearic spots — the mechanisms are real, and the figures attached to them in the maker literature are not measurements. This guide states no soaping temperature for that reason, and the thermal chapter is not written.
How your fragrance will behave in the batter. Acceleration, ricing, seizing and vanillin discolouration are real effects, and the numbers that would make them predictable — the vanillin percentage of a particular oil — belong on supplier product pages. Ask for them before you buy.
Whether your bar is legally soap. That is the regulatory guide, and it is a question about the finished product and your marketing rather than about your process.
Sources
- Canadian Centre for Occupational Health and Safety, Sodium hydroxide chemical profile: "Burns may not be immediately painful; onset of pain may be delayed minutes to hours."; "Contact causes severe burns with redness, swelling, pain and blurred vision."; "Immediately flush with gently flowing water for at least 60 minutes. DO NOT INTERRUPT FLUSHING."; "Reacts violently with water. Contact with metals liberates flammable hydrogen gas."; "Corrosive to: aluminum alloys, carbon steel, and other metals."; storage "in the original, labelled, shipping container." Read 18 September 2026. ↩
- New Jersey Department of Health, Hazardous Substance Fact Sheet: Sodium Hydroxide: "Sodium Hydroxide can attack IRON, COPPER, PLASTICS, RUBBER and COATINGS."; "Store in tightly closed containers in a cool, well-ventilated area away from WATER and MOISTURE." ⚠️ The fact sheet names the materials and not the conditions — no concentration, temperature or polymer grade — which is why the page sends you to the glove and container maker. Extracted with pypdf, 18 September 2026. ↩
- US CDC / NIOSH, NIOSH Pocket Guide to Chemical Hazards: sodium hydroxide. Incompatibilities & reactivities: "Water; acids; flammable liquids; organic halogens; metals such as aluminum, tin & zinc; nitromethane [Note: Corrosive to metals.]" ⚠️ cdc.gov refuses automated requests; read through a rendering reader, 18 September 2026. ↩
- 29 CFR § 1910.151(c) (OSHA, medical services and first aid): "Where the eyes or body of any person may be exposed to injurious corrosive materials, suitable facilities for quick drenching or flushing of the eyes and body shall be provided within the work area for immediate emergency use." An occupational requirement, cited as such. Read at Cornell LII, 18 September 2026. ↩
- US Consumer Product Safety Commission, recall 26429, 23 April 2026, mGanna Sodium Hydroxide (lye) Pellet Bags, about 3,240 units: the products "contain sodium hydroxide (lye), which must be in child-resistant packaging as required by the Poison Prevention Packaging Act (PPPA). The packaging is not child-resistant, posing a risk of chemical burns and irritation to the skin and eyes." ⚠️ Four further recalls name the same failure, all with 2023 recall dates, read from the same API on 18 September 2026: 23-155 Ecoxall, 16 March 2023, about 440 units, sodium hydroxide caustic soda beads and potassium hydroxide flakes; 23-782 Midwest Lubricants, 17 August 2023, about 3,000 units; 23-787 Chemboys (DIYChemicals), 31 August 2023, about 200 units, potassium and sodium hydroxide; 24-703 Family Health Products, 12 October 2023, about 570 units. ⚠️ Ecoxall, Chemboys and Family Health Products each describe the goods as "commonly used for soapmaking and cleaning"; the Midwest Lubricants notice does not. ⚠️ Two notes on the numbers: 24-703 carries a 2024 prefix and a 2023 date, because the prefix is CPSC's fiscal year, and the API returns these numbers unhyphenated (23155) where CPSC's own notices hyphenate them. ↩
- ISO 3657:2023, Animal and vegetable fats and oils — Determination of saponification value, sixth edition, which replaces ISO 3657:2020. Clause 3.1 defines the saponification value, symbol Is, as the "number of milligrams of potassium hydroxide required for the saponification of 1 g of the product tested". Clause 1 states that "the saponification value is a measure of the free and esterified acids present in fats and fatty acids". The foreword lists the changes from the fifth edition: "errors in the calculations of the mean relative molecular mass (C16 TAG molecular weight) in B.7.4 and saponification value in B.7.5 have been corrected" and "incorrect values for the repeatability limit as well as the reproducibility limit values in Table A.1 have been corrected". ⚠️ Read on the ISO Online Browsing Platform free preview by the site's author, 18 September 2026 — clauses 1 and 3 and the foreword only. The precision clause and the annexes named in that foreword are behind the paywall and were not read; nothing on this page rests on them, and no figure from Annex A or B is quoted here. ↩
- PubChem CID 14798, sodium hydroxide: molecular formula NaOH, molecular weight 39.997. Read from the PubChem REST API, 18 September 2026. ↩
- PubChem CID 14797, potassium hydroxide: molecular formula KOH, molecular weight 56.106. The 1.4027 ratio on this page is those two figures divided, not a number taken from a chart. Read from the PubChem REST API, 18 September 2026. ↩
- ISO 660:2022, Animal and vegetable fats and oils — Determination of acid value and acidity, clause 3.1: the acid value is the mass of potassium hydroxide, in milligrams, required to neutralise the free fatty acids in one gram of fat. Stated here unquoted, as the substance of the clause rather than its wording. ⚠️ Read on the ISO Online Browsing Platform free preview by the site's author, 18 September 2026 — clause 3 only. It is cited for the definition alone: this page makes no claim about how either value is determined, and gives no acid-value figure for any fat. ↩
- Fragrance Oils Direct, Cure Times for Fragrance Oils in Wax Melts and Candles, 9 June 2022. ⚠️ Practitioner source, and it is arguing about wax melts rather than about soap: "We suspect that curing is part of the mystique transferred from cold press soap." ⚠️ Cited ONLY for that sentence — it is evidence that the practice travelled, not evidence about what curing does in soap, and this page claims no more from it. The wax melts guide carries its argument in full. ↩
- IFRA, IFRA Standard — Eugenol, publication date 2023 (Amendment 51), CAS 97-53-0. Recommendation: restriction, on dermal sensitisation and systemic toxicity. Under "MAXIMUM ACCEPTABLE CONCENTRATIONS IN THE FINISHED PRODUCT (%)": Category 9 4.9 %, Category 12 No restriction (Category 11A and 11B are 0.21 %). Implementation dates: 30 March 2024 for new creations, 30 October 2025 for existing ones, and the Standard notes those dates "apply to the supply of fragrance mixtures (formulas) only, not to the finished consumer products in the marketplace." Downloaded and extracted with pypdf, 18 September 2026. ↩
-
Bramble
Berry, IFRA 51st Amendment statement, EU allergens and Proposition 65 — Vanilla
Select Fragrance Oil, SKU V000188, 5 pages. IFRA table "Dated Assessed
1/31/2024": Category 9 6.20, Category 10A 6.20, Category 10B 39.70,
Category 12 100.00, and the note that these rates "should be used for
new products created after March 30, 2024 and for existing products created after
October 29, 2025". EU allergens and Prop 65 pages "Date Assessed 8/24/2022":
Coumarin 3.5, Eugenol Not Present, Vanillin "Not yet
available", Benzyl Benzoate 30.1737.
⚠️ Also fetched and archived: the same SKU's
50th
Amendment statement, 3 pages, Date Assessed 8/24/2022, giving 9 = 6.20, 10a = 6.20,
10b = 21.00, 12 = 100.00. The two files are different
documents — 264,078 and 136,097 bytes, different SHA-256 — so the 50th link is
not a mislabelled copy of the 51st. Both fetched from Bramble Berry's CDN, extracted
with pypdf and archived with their hashes on 18 September 2026; URLs supplied by the
site's author, the fetch and extraction first-party. See
docs\supplier-certificates\. ↩ - Nurture, Vanilla Cream Fragrance Oil, and its IFRA report. The report states the fragrance is compliant with "guidelines published by I.F.R.A. (International Fragrance Association) 50th Amendment published on 06/30/21", and gives Category 9 (soap, bath bombs, shampoo) 2.85% and Category 12 (candles, plug-ins, incense) Not Limited. The product page gives Flashpoint ">200°F", Vanillin: 0% and, under CP testing notes, Discoloration: Dark brown; and carries the supplier's note dated 1/15/2023 quoted in the text. ⚠️ The certificate is archived as bytes rather than linked, because the finding is a dated state of a page: if it is reissued under the 51st, this becomes uncheckable. Fetched, extracted with pypdf and hashed 18 September 2026. ⚠️ nurturesoap.com redirects to nurturehandmade.com. ↩
- CandleScience, Vanilla Element Fragrance Oil (BlendingElements). Details: Flashpoint 226°F (107°C), Vanillin Content "More than 5%". Recommended applications: Bar Soap 2.0% – 6.0%, Liquid Soap 0.5–6.0%, Wax Melt 5.0–25.0%, Candle 3.0–10.0%, Lotion 0.5–2.0%, Room Spray 0.5–10.0%, Perfume 10.0–19.5%. Disclaimer, verbatim: "Usage amounts are recommendations only. Individual usage amounts can vary based on your desired fragrance strength, wax type, soap base, or lotion base. See IFRA certificate for max usage levels." ⚠️ No IFRA certificate, and no link to one, appears anywhere on the page. ⚠️ This one was NOT fetched. candlescience.com renders its specifications in the browser and returns a shell to an automated request — verified the same day, 200 with nearly identical byte counts for a real and a fabricated slug — so the text was captured from the browser by the site's author on 18 September 2026 and is archived as a user-supplied capture, labelled as one. ↩