Materials & tools you'll need
100% white wool yarn (8 oz) · 3 lbs dried onion skins · Aluminum sulfate (2 tbsp) · Cream of tartar (1 tbsp) · Large pot for dyeing · Yarn needle for weaving in ends · Gloves, mask, and safety goggles
A quick safety note: you'll be working with hot water and dye chemicals throughout this project. Wear gloves, a mask, and safety goggles, and keep dye pots and equipment separate from anything used for food preparation afterward.
Step 1 — Scour the wool yarn
Before your yarn will take dye evenly, it needs to be completely free of any oils, dirt, or processing residue. Soak the white wool yarn in a pot of pH-neutral dish soap water for about 30 minutes, or until the water turns visibly murky. Rinse the yarn thoroughly under clean water until it runs clear, then let it dry fully before moving on. Skipping this step is one of the most common reasons natural dye comes out blotchy or pale.
Step 2 — Prepare the mordant solution
In a clean pot, combine 2 tablespoons of aluminum sulfate with 1 tablespoon of cream of tartar in water, stirring until both are fully dissolved. This mordant solution is what allows the wool fibers to bond properly with the onion skin dye later — without it, colors from natural dyes tend to wash out quickly and fade unevenly over time.
Step 3 — Mordant the yarn
Add your scoured, dry wool yarn to the mordant solution and let it soak for about 1 hour, keeping the pot at a gentle simmer rather than a rolling boil to protect the wool fibers. Once the hour is up, you can either dye the yarn immediately while it's still wet from the mordant bath, or let it dry and store it for dyeing later — mordanted yarn keeps well if you want to prep a batch ahead of time.
Step 4 — Simmer the onion skins to make the dye bath
Fill a large pot with water and add the 3 lbs of dried onion skins. Bring the mixture to a gentle simmer and let it cook for 1 to 1.5 hours, until the skins turn translucent and the water has taken on a deep amber-brown color. Once the color has fully developed, strain out the spent onion skins and set the liquid dye bath aside — this broth is what will color your yarn in the next step.
Step 5 — Dye the yarn in the onion skin broth
Return the strained onion skin dye broth to the pot and add your pre-mordanted yarn. Simmer the mixture gently for 45 minutes, turning the yarn occasionally so the color develops evenly throughout the skein. At this stage the yarn will take on a warm gold to amber tone — this is your base colorway before any modifiers are introduced.
Step 6 — Modify the color for army green and gold
To get both a gold and an army green result from the same dye batch, divide your freshly dyed yarn and treat each portion differently. Leave one portion as-is, or finish it in a wood ash water after-bath to brighten and deepen the warm gold tones. Dip the other portion into an iron water after-bath, which saddens the dye and pulls the warm gold toward a muted, earthy army green. Soak each portion in its after-bath for the remainder of the day, checking periodically until you're happy with the depth of color.
Step 7 — Rinse, wash, and finish
Rinse both portions of yarn thoroughly until the water runs clear, then wash with a gentle wool wash to remove any remaining residue from the mordant or modifier baths. Let the yarn dry fully out of direct sunlight. Once dry, weave in any loose ends with a yarn needle and block the finished skeins if desired. You'll be left with two complementary, naturally dyed colorways — a warm gold and a muted army green — both from the same batch of saved onion skins.
Frequently asked questions
How much dried onion skin do you need to dye 8 oz of yarn?
This project uses about 3 lbs of dried onion skins to dye 8 oz
of white wool yarn. Saving skins from cooking over time is an
easy way to collect enough for a batch without buying anything
extra.
Why mordant yarn before dyeing with onion skins?
Mordanting with aluminum sulfate and cream of tartar makes the
wool fibers receptive to the dye. Without it, the color from the
onion skins will bind unevenly and fade much faster after
washing.
What colors can you get from onion skin dye?
On its own, onion skin dye produces warm gold, amber, and rust
tones on wool. Adding a color-modifying after-bath shifts part
of the yarn toward a deeper army green, giving you two distinct
colorways from the same dye batch.
How do iron water and wood ash water change the final color?
Iron water saddens the dye, pulling the warm gold tones toward a
muted army green. Wood ash water is alkaline and tends to
brighten and deepen the yellow-gold side of the colorway
instead. Try both on separate small test skeins before
committing your full batch.
Enjoyed this tutorial?
Find 60+ free tutorials on YouTube. Grab a pattern from the Etsy shop, or go deeper with a community membership.
Free tutorials on YouTube → Shop on Etsy → Join the community →