How to test for lye-heavy soap

pH strips are the usual first answer, and for a home soapmaker they're the wrong tool. The numbers show why.

A bar that stings, a bar that crumbles, beads of liquid on the surface, or just the ordinary anxiety of the first batch: is there still lye in this? It's the right question to ask, and pH strips answer a different one.

Before anything else

If a bar is weeping clear or oily liquid, has visible white pockets, or was made in the last two days, don't touch it with bare hands and don't put it anywhere near your mouth. That liquid can be lye solution. Gloves, and set it aside. Everything below assumes a bar that is at least a few days old and dry to the touch; the lye safety page covers what to do if something caustic reaches skin, and our safety statement says what this site can and can't do for you.

Why pH testing can't settle this

Soap is the salt of a weak acid and a strong base, which makes it a buffer: it resists changes in pH by its nature. Every real bar of soap sits somewhere around pH 9 to 11. That is not a defect to be corrected. It is what soap is, and a bar at pH 7 has stopped being soap, as the liquid soap calculator explains at more length.

The problem is that a good bar and a lye-heavy bar both land in that range. The excess lye that makes a batch dangerous is a fraction of a percent of its weight (you'll see exactly how small below), and against a buffered system it moves pH only a little. So pH separates the two cases only when the excess is large, and only on a good meter. The usual tools:

  • pH strips. The dyes are attacked by the soap itself. Modern Soap Making's testing got readings ranging from pH 5 to pH 9 on a single soap, a spread wide enough to be worthless, and one that sometimes reads acidic for an alkaline product.
  • Phenolphthalein drops in water. Their color transition runs from about pH 8.2 to 9.8, which is entirely below where soap in water lives. Everything above 9.8 is the same shade of pink, so a pH 10 bar and a pH 13 bar look identical, as Modern Soap Making also points out. In neutralized alcohol it's a different test: soap barely breaks down there, so pink means free alkali. That is the classic lab check, described below.
  • A calibrated pH meter on a 1% solution is the best of the three. It can flag a strongly lye-heavy batch, but for the small excesses that make a bar zap it is a rough guide at best, and most of what it reports is the pH of soap, which you already knew.
The measurement that would answer it

What matters isn't pH, it's free alkali: how much hydroxide is present that never became soap. The industry test for that is a free alkali titration (ISO 684 is one standard method): dissolve a known weight of soap in neutralized alcohol and titrate against a standard acid, with phenolphthalein as the indicator. It is a real lab procedure with real reagents, and it is why commercial soap has a free-alkali specification while home soapmakers have folklore. The zap test is the crude, free proxy for the same thing. It detects hydroxide directly, on your tongue, rather than inferring it from a buffered number.

The zap test, and the disagreement about it

Touch soap to your tongue; if there's free alkali you get a distinct sensation like the terminals of a nine-volt battery. It is the standard hobby test because it works: the tongue detects hydroxide at concentrations no strip can resolve.

Two of the best sources on soapmaking disagree about whether you should do it. classicbells teaches it, with the technique below. Modern Soap Making says plainly: don't put lye on your tongue. Both positions are reasonable, and the difference between them is mostly about how much you trust a beginner to judge when a batch is safe to test at all. Our reading: it is a legitimate test on a bar that has passed the checks in the box above, and a bad idea on anything fresher or wetter.

If you do it:

  1. Wait three to five days after pouring. Most saponification is done within a day or two, faster in soap that gels; ungelled soap can take several days longer, and sources don't agree on one number. The extra days remove the ambiguity.
  2. Never lick the bar. Dampen a fingertip with water, wipe it once across the soap, and touch that fingertip lightly to the tip of your tongue. You are sampling a trace, not tasting it.
  3. Expect soap to taste of soap. Unpleasant is normal. What you're listening for is the electric tingle — sharp, immediate, and unmistakable. If you're wondering whether you felt it, you didn't.
  4. Test more than one spot, including a cut face and the middle of the loaf. Batches saponify unevenly; the outside of a loaf lags the middle, and a pocket of unmixed lye is local by definition.
  5. Rinse your mouth afterward either way.

A strong zap or anything that burns means stop. That batch is not a testing exercise any more; it's a disposal question.

How much lye is in a lye-heavy bar?

This turns out to be the number that makes the subject legible. Superfat is just lye not dosed; a negative superfat is lye dosed beyond what the oils can consume. Our classic bar at 1,000 g of oils needs 151.4 g of NaOH to saponify completely, so:

SuperfatNaOH dosedLye beyond what the oils can takeFree lye per 100 g of soapWhat that is
+5% 143.8 g -7.57 g — The default. 7.6 g of spare capacity, and that margin is what superfat is for.
+2% 148.3 g -3.03 g — Thin but intentional; some castile and salt-bar recipes sit here.
0% 151.4 g 0.00 g — Exactly balanced on paper, and only on paper.
-1% 152.9 g +1.51 g 0.105 g Will zap. Rebatchable.
-2% 154.4 g +3.03 g 0.209 g Zaps clearly. Rebatch or bin.
-5% 158.9 g +7.57 g 0.522 g Harsh enough to damage skin. Bin it.

NaOH for the classic bar (olive 35 / coconut 30 / palm 30 / castor 5) at 1,000 g of oils and a 33% lye solution, scaled from what that blend needs at 0% superfat. "Free lye" treats all the excess as remaining hydroxide, which slightly overstates it: some reacts with carbon dioxide over the cure and becomes carbonate instead.

So a bar that zaps at -1% superfat is carrying about 0.105 g of free lye per 100 g, a tenth of a gram, roughly a pinch. At -5% it's 0.522 g. Those are small numbers, and they are still the difference between soap and a mild chemical burn on wet skin, because the hydroxide doesn't have to be abundant to be present. Read the table the other way and you get the real argument for a 5% default: less the extra oil left in the bar than 7.6 g of margin for everything that can go wrong, which is the case the superfat guide makes from the other direction.

How a batch ends up over-lyed

Four causes, and they are not equally likely or equally severe.

1. The lye was weighed wrong

The common one, and the most recoverable, because the arithmetic is reversible: enter the weight you actually used in the superfat adjuster's second mode and it returns the superfat you really made, plus the oil to add if it's rebatchable. Small batches are the least forgiving here, for reasons the first-batch guide works out in grams.

2. The lye didn't dissolve, or didn't mix in

The cause behind most bars that zap in one spot and not others. Undissolved granules at the bottom of the jug, or batter poured before it truly emulsified, leave pockets that were never dosed the way the calculator thought. A lye solution should be clear, not cloudy, before it meets the oils. False trace is exactly the failure that gets a half-mixed batch into a mold, which the trace guide covers.

3. The wrong alkali

Rare, and by far the worst. This is the one to know about if you make liquid or shave soap and keep both hydroxides on the shelf.

Swapping KOH for NaOH is a disaster; swapping NaOH for KOH is a dud

Our liquid soap starter calls for 226.3 g of KOH at 90% purity. Weigh that same number out as sodium hydroxide and you have dosed 1.54× the NaOH those oils can consume, which is a superfat of -54%. That is not a bar to rebatch; it's a pot of caustic paste. The mistake in the other direction is almost harmless: the classic bar's 143.8 g of NaOH, weighed out as KOH instead, gives about 39% superfat: a soft, greasy, useless batch and nothing worse. One mix-up injures someone and the other wastes an afternoon, which is a good reason to store the two in different places and label both.

4. The oils weren't what the calculator thought

Every oil takes its own amount of lye, so substituting one without recalculating means the dose no longer matches the fat. It is a real cause of lye-heavy soap, but usually a smaller one than you might expect. Swapping a single oil that is 30% of the blend moves the superfat like this:

Recipe written forActually usedSuperfat you made
Palm kernel oil palm oil -1.4%
Fractionated coconut (MCT) 76° coconut oil -3.4%
Cocoa butter shea butter +2.9%
76° coconut oil babassu oil +3.5%
Palm oil palm kernel oil +11.0%

The classic bar with its 30% slot swapped: lye dosed for the written recipe at 5% nominal superfat, set against what the blend with the substitute oil needs at 0%. SAP values and their published ranges are in the oil properties chart.

Two of those five go the safe way, and the two that don't land at -1.4% and -3.4%: enough to make a harsh bar that zaps, not enough to make a dangerous one. A single wrong oil usually makes a different soap rather than an unsafe one. The exception is a recipe already written at 0% superfat, where there is no margin to spend, and the case for never doing that is made with the published SAP ranges in the superfat guide. The other exception is a deliberate swap between oils that aren't look-alikes: replacing coconut with olive and keeping the old lye weight goes properly lye-heavy, and the oil substitution calculator shows the figure for any swap.

What to do with a batch that zaps

  • Give it two more weeks first, if it's mild. A slight excess does fade: some of it reacts with carbon dioxide over the cure. If a faint zap is gone at four weeks, the bar is fine. If it's still there, it isn't going anywhere.
  • Rebatch with added oil. The real fix. Grate the soap, melt it with a little water in a slow cooker, and stir in the oil the batch is short of. The rebatch calculator computes how much from the lye weight you used, for whichever oil you have and however much of the batch you're saving. The result is rustic and perfectly good soap.
  • Bin anything strongly caustic. Below about -5% there is no sensible rescue and the ingredients are worth less than the risk. Wrap it, bin it, and rerun the numbers.
  • Don't gift or sell a bar you're unsure about. The person on the other end can't test it and didn't choose the risk.
You cannot fix a lye-heavy bar with acid

It's tempting to "neutralize" excess lye with citric acid or vinegar. Don't. You cannot titrate a solid uniformly: the acid reaches the surface and not the pocket that was the problem. Where it does react, it attacks the soap, splitting it back into fatty acids and leaving a curdled, partly ruined bar that may still zap in the middle. The only things that consume free lye are more oil and time. (Vinegar is no better on skin, for related reasons, which the safety page goes into.) Acids do have a legitimate place in a recipe (citric acid for a chelator, vinegar for sodium acetate), but they go in before the lye, with the lye increased to match; the acid additives calculator does that arithmetic.