Recipes
← Marinated Eggs

Century Eggs & Salted Duck Eggs

I’ve eaten both. I’m not a fan of either.

That’s not squeamishness — I’ll eat basically anything and I’ve had the chance to prove it in more than thirty countries. If you came here for a Westerner being theatrical about a dark egg, close the tab, I’m not doing that. They’re food, they’re perfectly good food, and they just don’t do it for me. The ammonia note in a pidan reads as off to my palate no matter how many times I tell it otherwise. That’s a preference, not a verdict.

So why do they get a page — a longer one than the eggs I actually make?

Because they are the most chemically interesting thing in this entire section, and it isn’t close. Everything else here is an egg boiled and then soaked in something. These are eggs cooked by pH instead of by heat, that brown without a stove, that grow mineral crystals shaped like pine needles for reasons nobody understood for five hundred years. Understanding them is worth more than liking them.

Century eggs in their preserving coating, one cracked open to show the dark interior

An egg cooked by pH instead of heat. No horse urine was involved, and it is not a thousand years old.

First, kill the horse urine thing

Century eggs are not soaked in horse urine. They never were. It’s not a “traditionally, but not anymore” situation. It’s just false.

The rebuttal is chemical and it’s airtight: horse urine sits at about pH 7.5–7.9 — basically neutral. The century egg cure works because it’s strongly alkaline, pH 9 to 12. Urine physically cannot do the job. It’s not a matter of taste or tradition; the reaction doesn’t run.

The myth almost certainly comes from the ammonia smell, which is real and which I’ll explain below — and it’s not helped by the fact that the Thai and Lao names are literally “horse urine egg” (ไข่เยี่ยวม้า, khai yiao ma). A nickname is not an ingredient list.

And they aren’t a thousand years old, or a hundred. More on that at the end. Actual cure time: about a month.

Right. Mythology handled. It gets better from here.

The real chemistry: an egg cooked by pH

Take raw duck eggs. Coat them in, or immerse them in, a strongly alkaline medium. Wait weeks to months. They solidify without ever being heated. The yolk goes opaque greenish-black and creamy to semi-solid. The white becomes a translucent amber-brown jelly.

Harold McGee’s one-sentence version is still the best in English: “They’re protected from spoilage, and transformed: they solidify without being heated, the yolk turning opaquely greenish-black and the ‘white’ a transparent brown.”

Where the alkali comes from is the part that made me sit up. The traditional cure is wood ash, quicklime, soda ash, and salt, and the reactions Hou 1981 writes out are:

CaO + H2O          → Ca(OH)2
Ca(OH)2 + Na2CO3   → 2NaOH + CaCO3
K2O + H2O          → 2KOH            (K2O from plant ash)

Quicklime plus water gives slaked lime. Slaked lime plus soda ash gives caustic soda. The active agent is NaOH generated in situ, with potash from the plant ash on top. The tradition is running causticization — the same reaction as industrial lye manufacture — in a mud-sealed jar, out of a lime pit and a wood fire, five hundred years before anyone wrote the equation down.

The numbers. Measured after pickling: albumen pH 10.81–11.24, yolk 9.69–10.46; the pickling solution itself needs pH > 13.9 for complete gelation. And there’s a hard floor — below 1.6% NaOH the protein does not coagulate at all. Not a weak pidan. Nothing.

What the alkali does to protein, in two stages. The distinction matters:

  1. Denaturation and gelation. Hydroxide strips protons off protein side chains. Every protein ends up carrying a big net negative charge, and charge repulsion unfolds them. Then salt and metal cations — Mg²⁺, Zn²⁺, Cu²⁺ — screen that repulsion, letting the unfolded chains aggregate into a gel. Which means the metal salts in the recipe are not colorants. They’re gelation agents. That reframed the whole ingredient list for me.
  2. Hydrolysis, and flavor. Continued alkali attack cuts proteins into polypeptides and finally amino acids. Big, bland molecules become small, intensely flavored fragments — ammonia, amines, sulfur compounds.

That second stage is the honest answer to “why does it smell like that,” and it’s not a comfortable one: the flavor and the smell are the same event. There’s no version where you keep one and lose the other, because they’re the same reaction running. Hou’s own nutrition table nails it — cystine collapses from 379 mg to 68 mg per 100 g, down 82%. Alkali destroys sulfur amino acids, and that destruction is the sulfide note. So when I say the ammonia reads as off to me, what I’m objecting to is the thing that makes the food the food. Fair enough. Not the egg’s fault.

And the amber color is Maillard browning without heat. Maillard normally needs a hot pan, but it’s strongly base-catalyzed, and alkaline hydrolysis liberates exactly what it needs — free amino groups and reducing sugars. So it proceeds at ambient temperature over weeks, producing melanoidins: that translucent tea-brown jelly. A century egg is a cold-cooked egg that browns without a stove.

Here’s the corroboration I like best. Hou’s nutrition table shows carbohydrate dropping from 10.3 g to 2.2 g per 100 g through the cure. Where did the sugar go? The Maillard reaction ate it. The nutrition table is accidental evidence for the browning mechanism, and nobody put it there for that reason.

(There are real costs, too: B1 falls 87%, from 0.15 to 0.02 mg — alkali is hard on thiamine. And the actual health issue with pidan isn’t lead, it’s sodium: about 2,250 mg per 100 g of the white, roughly 150% of a day’s RDA.)

For the deep cut: there’s a paper in ACS Central Science that uses the century egg as a model system in soft-matter physics, modeling the proteins as patchy-particle colloids. A 500-year-old preserved egg doing service in modern physics. I find that delightful.

Pine flower crystals: the internet is wrong, and the folk method is wronger and better

One of the century egg’s Chinese names is 松花蛋 — “pine flower egg” — for the white, fibrous, needle-and-branch patterns that form near the surface of the albumen gel. They look like pine needles pressed in amber. They’re a quality grade: eggs showing good songhua sell above plain pidan.

English Wikipedia, and essentially every English food blog, says these are “amino acid crystals.”

They aren’t.

Chinese food science says the amino-acid story is the superseded early view. 刘少伟, a professor of food safety, in 澎湃新闻: “科学家发现’松花’晶体的化学成分主要为氢氧化镁水化物” — the chemical composition of songhua crystals is primarily magnesium hydroxide hydrate, Mg(OH)₂. Mechanism: under strong alkali, metal ions (chiefly Mg²⁺) combine with alkali-degraded protein fragments, and the resulting fibrous Mg(OH)₂ hydrate crystals accumulate between the layers of the albumen gel — which is why the pattern is layered and dendritic rather than scattered at random. The sources are explicit that this replaced the older theory: “早期认为’松花’是氨基酸盐的结晶,但经过科学实验分析…”

There’s a quantitative threshold, and it’s a great detail: visible songhua needs Mg²⁺ ≥ ~90 ppm in the albumen gel; below ~80 ppm it won’t form at all.

Mark that second-hand. The ppm figures come from Chinese science communication; I did not reach the underlying primary paper. Reported, not verified.

And give the other side. The 2022 lead-free pidan paper describes songhua differently — as “alkali mediated degradation of egg proteins into small peptides, which reacts with metal ions and form a stable metal ion-peptides complex.” A metal ion–peptide complex, not pure Mg(OH)₂. The two accounts aren’t identical, but they’re compatible in spirit: both metal-ion-driven, both need magnesium. And both flatly contradict the “amino acid crystals” story.

So the honest line, and the one I’ll stand behind: the crystals are magnesium-driven, not amino acids precipitating on their own.

Two footnotes. The modern lead-free formulation deliberately doses 0.08% MgCl₂ — that’s the songhua supply, added on purpose, now that we know what makes it. And the industry can’t fully agree the crystals are even a feature: there’s a 2004 peer-reviewed paper on making spots-free pidan. One producer’s grade mark is another’s defect.

The pine needles

And now the best thing in this entire section.

Hou’s 1981 paper records a 1963 folk method. Verbatim:

“If a floral design in the egg white is desired, pine twigs with needles should be added during the boiling of water and discarded after boiling.”

Read that again. To make the pine-needle pattern, add pine needles. Then throw them away.

This is sympathetic magic — the oldest logic humans have, like cures like — and it is chemically irrelevant. The twigs do nothing. They’re removed before the eggs ever go in, and the crystals form from Mg²⁺ that was already in the water and the cure. Boil with pine, with oak, with nothing, and you get identical songhua.

But it isn’t a story about people being stupid. The pattern was real. They were reliably making an effect they could see, grade, price, and sell, and they had a name for it — pine flower — a good name, an accurate name, one that describes exactly what it looks like. What they didn’t have was the why. So they reached for the only explanation available, which was resemblance, and reasoned backwards from the name to the cause.

The tradition named the effect four hundred years before it could explain it, and the name was right. The explanation was wrong and the observation was perfect. That’s most of the history of craft — you can be an expert at making something happen and completely mistaken about what you’re doing. I’ve done it myself in my own shop. It’s just usually not this beautifully documented.

Lead: the part everybody gets backwards

English Wikipedia frames lead in century eggs as something “some unscrupulous producers” did, and pins it to a 2013 scandal.

That framing is wrong about the history, and getting it right matters — because the true version is neither a whitewash nor an outrage. It’s a food-safety success story, and those are rare enough that we should name them when they happen.

Lead oxide was a normal, specified, published ingredient. Not a secret. Not a shortcut. Not marginal. Hou 1981 — an official Chinese nutrition-institute paper, published in a United Nations University journal — gives it as a line item in the standard formulas:

  • Immersion fluid: “6.5 to 8 catties of sodium carbonate, 15 to 35 catties of lime, 3 to 7 catties of table salt, and 0.2 to 0.5 catty of lead oxide per ~100 catties of water.
  • Simplified procedure: “5 per cent sodium hydroxide, 4 per cent table salt, 2 per cent tea leaf dust, and 0.2 per cent lead oxide.
  • And on grading: soft/semi-solid-yolk pidan “contains a small amount of lead oxide”; hard-yolk pidan “lead oxide is omitted.”

That last bullet is the uncomfortable one. The prized soft yolk was the leaded one.

Why it worked, because it did work: lead(II) oxide regulates the cure. Heavy-metal ions penetrate early and promote alkali entry, then react with sulfide ions to form insoluble compounds that plug the shell pores — throttling further alkali penetration and preventing runaway degradation into a bitter, over-liquefied mess. Hou puts it plainly: lead oxide “influences the coagulation process as well as osmosis, and thus it influences the ripening.” It made a slow, temperamental, weeks-long process fast, reliable, and forgiving. That’s the uncomfortable truth: lead was deliberate process chemistry, and the best-textured century eggs were the leaded kind. Getting rid of it was a genuine technical problem, not a matter of will.

And then they got rid of it. With dates:

WhenWhat
2013CCTV exposé. Three Jiangxi factories; 30 shut for inspection, 3 arrests. ⚠ Note precisely: this one was about industrial copper sulphate contaminated with heavy metals, not lead oxide as such. The English web conflates the two.
~0.5 mg/kgThe earlier threshold below which a pidan could be labelled 無鉛, “lead-free.” A labelling threshold, not zero.
2015-12-01GB/T 9694-2014《皮蛋》 takes effect. Production switches to copper sulphate and zinc sulphate as food additives, and lead-containing substances are banned from the process entirely.
2022GB 2762-2022 sets lead in eggs and egg products at 0.2 mg/kg, tightened from earlier limits.

⚠ GB 2762-2025 was published 2025-09-02 and takes effect 2026-09-02. I have not confirmed the egg lead limit in that revision. Don’t quote a “current number” from me without checking it.

So: over roughly thirty years, an industry identified a real problem in its own standard practice, researched substitutes, wrote a national standard banning the substance from the process, and tightened the contaminant limit on top. A century egg bought today from a regulated producer is not a lead problem. That’s a better story than either “ancient mystery food” or “toxic foreign delicacy,” and it has the advantage of being true.

⚠ One caveat, because “we fixed it” shouldn’t mean “consequence-free”: zinc is the main replacement, zinc is essential, but excess zinc causes copper deficiency. Substitutions have costs.

The frontier has moved past lead entirely — it’s now trying to lose the lye. The 2022 paper replaces NaOH with incinerated eggshell powder (CaO → Ca(OH)₂) plus alkaline electrolyzed water, which means the eggs supply their own alkali. After five hundred years of wood ash and lime pits, the elegant answer turns out to be: burn the shells.

Salted duck eggs: a broken emulsion, on purpose

Different tradition, different lever. No alkali here — just salt, doing something completely different. Two methods, both from Hou 1981:

Mud/ash coating (裹泥法)Brine (盐水法)
Method12.5 catties dry yellow mud + 10 catties salt + 10 catties water per 1,000 eggs, made into a paste, packed around each eggEggs into salt water, boiled and cooled, sealed
Time~1 month~25 days
Salt gradientslower, gentlerfaster, more even
Kitdirt, ash, salta jar and salt
Downsidemessy, must be scraped offeggs must stay submerged

The mud isn’t decoration. It’s a reservoir that holds salt in contact with the shell and buffers against drying, so salt migrates slowly and evenly. Cheap. Uses dirt. Add charcoal ash and you get the familiar black-coated eggs.

⚠ On Hou’s brine: he says “35 per cent salt water.” Saturated NaCl is about 26% w/w at room temperature, so 35% is above saturation and can’t be a w/w figure. It’s presumably 35 parts salt per 100 parts water — saturated brine with undissolved salt on the bottom. Don’t reproduce “35% brine” without that caveat. In practice it means as salty as water will get. The traditional test is adding salt until an egg floats — a density assay for saturation, and a lab instrument made of an egg.

Why duck eggs? Three reasons, all mechanical, none romantic:

  1. Shell porosity. Duck shells are larger and more porous than chicken. Salt penetrates more efficiently; the technique simply works better.
  2. Fat. This is the real one. Hou’s table: fresh duck egg 9.8 g fat/100 g, salted duck egg 16.6 g. The fat is the entire point — it’s what becomes the prized oil. You cannot make a proper salted egg yolk from a chicken egg, because the fat isn’t there.
  3. Ducks and rice. Duck husbandry is integrated with wet-rice agriculture across southern China, so duck eggs are the eggs that exist in surplus where this food developed. ⚠ My own inference — structurally obvious, but it wasn’t in my sources.

What salt does to the yolk is the elegant part:

  1. Osmosis. Salt goes shell → albumen → yolk. Water comes out.
  2. Denaturation. Salt denatures the yolk’s lipoproteins. A yolk is normally an emulsion — fat held in suspension by protein emulsifiers. Salt breaks that emulsion.
  3. Granulation. Under SEM, salted yolks “consist of spherical granules and embedded flattened porosities.” The proteins pull together into discrete granules. That is the sandy/沙 texture — the most prized quality descriptor there is for these.
  4. Oil exudation. The freed lipids, no longer emulsified, migrate into the gaps between granules and pool. Cook it and they run. That’s the orange oil.
  5. Color. Bright orange-red — because dehydration and protein aggregation concentrate the carotenoids that were always there, and the freed oil carries them. The color isn’t created. It’s revealed.

So: the salted egg yolk is a broken emulsion. The sandy grain, the running oil, the deep orange aren’t five achievements — they’re one event: salt destroying the yolk’s ability to hold its own fat in suspension. Same physics as a split hollandaise, held for a month and then celebrated. It’s the only thing in this section I find genuinely charming rather than merely interesting.

The white is a byproduct. Ferociously salty (ash 7.5 g/100 g versus 1.2 in a fresh egg — that’s the salt, visible as mineral residue), rubbery, mostly discarded or used as seasoning. The economics of the whole tradition are: you are curing an egg to obtain one yolk. There’s now commercial research on salting yolks directly with maltodextrin, skipping the egg part, because the market only wants the yolks. Which tells you everything.

Where they go. The salted yolk sits at the center of lotus-seed-paste mooncakes at Mid-Autumn, where it represents the full moon — round, golden — and does real culinary work besides: a saline, fatty core cutting an intensely sweet paste. Double yolks mean a premium cake. Same egg goes into savory zongzi at Dragon Boat. And 咸蛋黄 gets crumbed over fried crab, prawns, and pumpkin in 金沙 “golden sand” dishes — named for exactly the granular texture in step 3 above. The name is the microstructure.

Worth a line: century eggs are an everyday food. The salted duck egg is a festival food — it’s in the mooncake and the zongzi, attached to the two biggest food holidays of the year.

高邮 (Gaoyou), Jiangsu is the famous origin, celebrated for double yolks. Widely repeated; I didn’t verify it against a primary or scholarly source. Take it as reputation, not fact.

And this is the one you can actually make at home. Century eggs need lye at concentrations and timescales I’m not going to recommend to anyone reading a website. Salted duck eggs need salt, water, a jar, and 25 days. If you try one thing off this page, try that one: Salted Duck Eggs. And if you want a way into pidan that isn’t eating one plain — which, honestly, is how I’d rather meet it — Century Egg Congee is the dish that made me understand why anybody bothers.

How old is it, really

Not a century. Not a millennium. Not even a year.

SourceCure time
宋詡, 15045–7 days
戴羲, 16331 month sealed
Blunt & Wang, 19185 months
Hou 1981, coating15 d summer / 20 d autumn / 30 d winter
Hou 1981, immersion30 days
Hou C.-Y. et al., 202239 days (25 pickle + 14 ripen)

Range: about a week to five months. Typical: a month. And there’s no “it used to take longer” story either — the oldest record has the shortest time.

Not one Chinese name refers to age. 皮蛋 is “skin egg” (texture). 松花蛋 is “pine flower egg” (pattern). 变蛋 is “changed egg” (transformation). 灰包蛋 is “ash-wrapped egg” (process). “Century egg,” “thousand-year egg,” “millennium egg” are English inventions.NOT FOUND: any documented first use or coiner. The likely account — hyperbole from the dark, aged appearance — is reasoning, not evidence, and I’m not handing you an etymology I don’t have.

Every English name for this egg is a lie about its age, and no Chinese name ever mentioned age at all. The century egg was given its century by English.

The history is mis-sourced too. The English web’s “Wang Zizhen, Ming dynasty” attribution is a phantom — it traces to one uncited sentence, and no such person could be identified. The real earliest record is 宋詡 (Song Xu), 《竹嶼山房雜部》, 1504, which calls the egg 混沌子 — “chaos child,” after the primordial undifferentiated chaos of Chinese cosmology, because “黃白混為一處”, the yellow and white blend into one place. Ash, lime, and salt are already in that 1504 formula: the technology is complete at first attestation. The full unpacking is on the history page.

The earliest name on record for this egg is “chaos child.” The modern English name is a number that was never true. I know which one I’d have kept.

Sources & further reading

Comments (0)

  1. Loading…

Comments are held for moderation — nothing appears until approved.