Lye calculator
NaOH, KOH or dual lye with purity and superfat. Water as a lye concentration, a percentage of oils or a ratio, all three shown at once. Citric acid and milks handled with real chemistry. Every number has an explanation, and every oil value names its source.
- Free, no login
- No ads
- Every formula cited
- Every oil value sourced
Inputs
Measured values from a certificate of analysis
Published saponification values are ranges, because fats vary with origin, season and refining. If your supplier gave you a certificate of analysis for the lot in front of you, enter its measured value and the uncertainty for that oil collapses to it.
Resize this recipe
—
Resizing multiplies every weight by one factor and leaves the percentages exactly as they are. Nothing is re-derived from a rounded figure, which is how a resize elsewhere in this category once turned 25 oz of palm oil into 857.
Use a master batch of lye solution
Size the batch to a mold
Oils to fill it with this recipe: — (batch —). The old "in³ × 0.4" rule would say —.
ready
Results
—
—
How well is this pinned down?
Check these
Soap qualities
The shaded band is the conventional range. These are a community convention summing fatty-acid groups, not a measurement; the formula page says what they ignore.
Recipe
Fatty acids
Explain every number
The formula, and where it comes from
Lye KOH₁₀₀ = Σ(oilᵢ × SAPᵢ ÷ 1000) # SAP in mg KOH per g KOH_sf = KOH₁₀₀ × (1 − superfat ÷ 100) NaOH = KOH_sf × 39.997 ÷ 56.106 ÷ (purity ÷ 100) KOH = KOH_sf ÷ (purity ÷ 100) Dual: KOH share f of the saponification → KOH = KOH_sf × f, NaOH = KOH_sf × (1 − f) × 0.7129 Acids in the pot NaOH_add = mass × purity × (n × 39.997 ÷ M_acid) # citric 0.6246 g/g, acetic 0.6660, lactic 0.4440 Water % of oils: water = oils × p ÷ 100 lye concentration: water = lye × (100 − c) ÷ c water : lye ratio: water = lye × r liquids: plain water = max(0, water − Σ liquidᵢ × water%ᵢ) Qualities (community convention) hardness = lauric + myristic + palmitic + stearic cleansing = lauric + myristic conditioning = oleic + linoleic + linolenic + ricinoleic bubbly = lauric + myristic + ricinoleic creamy = palmitic + stearic + ricinoleic INS = Σ wᵢ × (SAPᵢ − IVᵢ) Mold batch = V × ρ × fill; oils = batch ÷ (1 + lye/oil + water/oil + additives/oil + fragrance/oil)
- AOCS Official Method Cd 3-25, "Saponification Value of Fats and Oils". American Oil Chemists' Society. Defines SAP as mg KOH required to saponify 1 g of sample.
- IUPAC Commission on Isotopic Abundances and Atomic Weights, "Atomic weights of the elements 2013" (Pure Appl. Chem. 88(3), 2016). Na 22.990, K 39.098, O 15.999, H 1.008 → NaOH 39.997 g/mol, KOH 56.106 g/mol.
- Dunn, Kevin M. Scientific Soapmaking: The Chemistry of the Cold Process. Clavicula Press, 2010. Chapters on saponification stoichiometry, lye discount and lye purity.
- Community convention: "full water" = 38 % of oil weight, the default that most hobby calculators have used since the 2000s; roughly a 27–28 % lye solution for a typical bar recipe. — A convention, not a chemical constant. Lye concentration is the better control variable because it does not drift with the oil blend.
- Neutralisation stoichiometry: citric acid is triprotic (3 OH⁻ per molecule); acetic and lactic acids are monoprotic. g NaOH per g acid = n × 39.997 ÷ M_acid.
- Community convention for soap qualities, in continuous use in hobby lye calculators since c. 2005: hardness = lauric + myristic + palmitic + stearic; cleansing = lauric + myristic; conditioning = oleic + linoleic + linolenic + ricinoleic; bubbly lather = lauric + myristic + ricinoleic; creamy lather = palmitic + stearic + ricinoleic. Recommended bands: hardness 29–54, cleansing 12–22, conditioning 44–69, bubbly 14–46, creamy 16–48. — A convention, not a measurement. It ignores superfat, water, cure and additives, and treats every fatty acid in a group as equal.
- McDaniel, Robert S. Essentially Soap. Krause Publications, 2000. INS = saponification value (mg KOH/g) − iodine value; recommended range 136–165, ideal 160.
- Empirical default. Fresh cold-process soap batter has a density close to water, ≈ 0.95–1.0 g/mL; the community rule "in³ × 0.4 = oz of oils" implies about 0.69 g/mL of oils, which is ≈ 1.05 g/mL of batter at 38 % water and 5 % superfat. Calibrate by weighing a filled mold once. — Density varies with whipping, fragrance, temperature and how full the mold is poured. Treat the default as a starting point and calibrate.
How to read the results
Lye is what you weigh out, after purity. Superfat is applied to the lye, not the oils: all the oils go in, a few percent of them never meet a hydroxide. Water is computed from the lye as weighed. If you replace water with milk, beer or aloe, the plain water shown is what is left after the liquid's own water is counted, and the batch total still includes the whole liquid.
Citric acid forms sodium citrate in the pot and eats lye doing it: 0.62 g of NaOH per gram. Leave that out and the superfat quietly rises by about four points for every 1 % citric — a batch asking for 5 % lands nearer 9 %. The exact figure follows from the blend, because it is the extra lye as a fraction of what the fats need. The calculator adds it back and shows the step.
Mold sizing starts from the mold's volume and the batter's density, then splits the batch mass into oils, lye, water, additives and fragrance in this recipe's own proportions. The "× 0.4" rule of thumb assumes full water and 5 % superfat; it drifts as soon as your recipe does not.
Safety: sodium and potassium hydroxide are caustic. Weigh lye on a scale that reads to the gram, add lye to water and never water to lye, wear eye protection and gloves, and verify any recipe you did not calculate yourself.
Common questions
Why do you show water three ways?
Because they are three descriptions of one quantity, and the most common first-batch confusion is not realising that. "Water as 38 % of oils", "a 33 % lye solution" and "2 : 1 water to lye" each pin down the same gram figure once the lye is known. Change any one and the other two update. Lye concentration is the better control: it does not drift when you change the oils.
Do your numbers match SoapCalc?
The saponification arithmetic is identical (NaOH = oil × SAP × 40.0/56.1 × (1 − superfat)). Where results differ, it is the oil values: we keep the published range for each oil and calculate with a representative value, and every oil page names the document the value came from. Open the "Explain every number" drawer to see exactly what was used, and the oils reference to compare.
I replaced the water with milk and another calculator said the liquid required was negative. What happened?
Milk is about 88 % water, so 300 g of milk carries 264 g of water. If the recipe only calls for 250 g of water, a calculator that subtracts gets a negative number. This one tells you the overshoot instead, and counts the milk's fat toward the effective superfat.
What is a master batch, and how do I use one here?
A master batch is lye solution mixed ahead of time at a known strength, usually 50 % ("1 : 1"). Set the water method to water : lye and enter 1 to get the recipe at that strength, then weigh the solution as lye + water combined. A full master-batch helper (stock strength in, solution and top-up water out) is in the formula library and comes to this page next.
Which lye concentration should a beginner use?
33 %. It traces at a manageable pace for cold process, gels predictably, and shrinks less during cure than "full water" at 38 % of oils, which is roughly a 27 % solution for a typical bar recipe. Go stronger (35–40 %) for designs that need slow trace or for soaps prone to soda ash; go weaker only for hot process or very high-stearic recipes.
Why does the total batch not match my own arithmetic?
It should, to the gram: batch = oils + lye as weighed + plain water + every additive at its full mass (a milk's water included) + fragrance. Some calculators leave custom liquids out of the total. Open the explain drawer and the "Total batch" step shows the sum.
Goes well with
All toolsKnow when the workbench lands
Saved recipes, versions and a batch log are what comes next. Leave an address and you will hear when they are ready, plus a short note whenever something ships. No newsletter, nothing sold, one click to stop.