Mordant Calculator

Alum and tannin doses by weight of fiber (WOF), plus the water bath volume for each step. Cellulose fibers automatically get the tannin pre-mordant step; protein fibers don’t need it.

Mordant recipe for 100g of wool

  1. 1. Alum
    12 g (12% WOF)

Alum bath: 5 L water (5 L per 100 g fiber — more water is fine, it governs even coverage, not dose)

Default alum dose is 12% WOF (typical craft-practice range: 1020% WOF for protein fibers). This is a dose recipe — temperature and timing (ramp/hold/cure) also matter and aren’t covered here. See the reference chart for sources and process notes.

Dyeing with iron afterward? Calculate the iron modifier dose.

Frequently asked questions

What does WOF mean?
Weight of fiber — the dry weight of the yarn or fabric you're mordanting, before it gets wet. Mordant and modifier amounts are conventionally given as a percentage of this dry weight, not the wet weight.
Why does cotton need a tannin step that wool doesn't?
Protein fibers (wool, silk, alpaca, mohair) have amino-acid binding sites that bond well with aluminum directly. Cellulose fibers (cotton, linen, hemp, ramie) lack those sites, so a tannin pre-mordant is used first to give the fiber something for the alum to bond to — skipping it is possible but typically fades faster.
Do I have to use cream of tartar?
No — it's an optional helper for protein fibers that some dyers use to assist alum binding and keep wool or silk softer. Any color effect is dye-specific (it shifts some dyes' hue, it doesn't universally brighten), and it has no equivalent for cellulose fibers.
Why does the cellulose recipe include soda ash?
Soda ash isn't optional for the cellulose alum step — it's what allows aluminum to deposit onto tannin-treated cellulose fiber. An alum bath without it fixes poorly.
Where do these percentages come from?
See the sourced reference chart for citations. This tool covers dose only — temperature and timing (how hot, how long, how the fiber cures afterward) also affect the real-world result and aren't covered here.