How to dye fabric with plants


I get many questions about my process, so I decided to write a blog post to make it accessible for everybody.
My way of dyeing is by no means the ultimate right way, it’s just a process I developed over time, based on research and experience.
I want to describe my process step by step, give some important advice and share an approach for beginner dyers, which is a simplified procedure for a first ever experiment with plant dyes.

I dye fibres differently, depending on if it’s a cellulose or protein fibre. Protein fibres are fibres coming from animals, like wool or silk. Cellulose fibres are plant fibres, like cotton, hemp, flax and much more.

Pin it!

WOOL and other protein fibres

For dyeing wool, I usually have a very simple process, as I only use wool for weaving wall hangings and bags or pouches. I can’t knit, so I’m not making garments that need to last many washing cycles. My wool doesn’t have to be very washfast then, it should be lightfast though, which has worked well so far.

Protein fibres usually dye better than cellulose fibres, that’s why I don’t use any extra mordants. Except for two cases - I’m dyeing with beetroot or berries. These dyes don’t bond with wool very well, so I help them by dissolving a bit of alum crystal (a common alum crystal deodorant you can get at every drugstore) in the dye bath, as they soak.

For all other dyes, all I do is heat up the plants in a sufficient amount of water (water should cover the plants) and let it cool down overnight. When dyeing with bigger plants, I don’t strain them, when I’m dyeing with smaller leaves or berries that can get tangled between the threads, I strain them before I add wool. Together with wool, I add some additional water, if there’s not enough to cover the skein, heat it all up again and let cool overnight. Voila.

There’s really nothing easier. Let it dry and put it on a shelf, you can rinse it after a few days if you want, but I like having a thick dye film on my wool, so I usually don’t do that. One thing you should keep in mind is that wool breaks and loses shine if put from cold to hot or hot to cold. Always put wool in cold water and heat up slowly, after the water is hot, let it cool down in the pot overnight. Don’t use alkaline dyes over 9pH, as they destroy the protein fibre.

COTTON and other cellulose fibres

My cotton and linen dyeing process is much more complicated. I’m dyeing fibres for clothes, pouches, pillows and other washable goods, which means my fabrics should be not only lightfast but also washfast (cold wash, by hand, using a pH neutral soap! I’ll get back to that.).

The first thing I do is cleaning the fibres. Organic cotton is supposed to be additions free, but I’ve read a few articles about extra layers of substances added in the process, so I get rid of them before I start dyeing. I scour the fabric by simmering it for 2 hours in water with the addition of soda ash. Scouring means as much as “cleaning”. I add 2 tablespoons of soda ash for every 500g of fibres. In my experience, it’s important to stir your fabric every 15 minutes, otherwise it will get stained. You can also put a piece of old fabric on the bottom of the pot to avoid or minimise staining.

After scouring, allow the fabric to cool down, rinse it thoroughly and let it dry. You can machine wash your fabric with soda ash at a high temperature before scouring, I don’t do that because of excessive water wastage. If you don’t have soda ash, there’s an easy way to make it yourself (again - this is based entirely on other articles I found online, I’m not an expert and can’t tell you for sure if it’s true, it’s just the way I do that) by putting baking soda in a baking form and into your oven, baking at 250C for 2 hours.

The second step is mordanting your fabric. I used to work with soya milk, but gave it up for two reasons. Firstly - it didn’t work well for me, my fabrics were not washfast and I did not notice any big difference in lightfastness or intensity of colour. Secondly - I don’t want to use goods that take a lot of time and water to grow and can be used as nutrition, too, I rather use natural substances that don’t need such an intense work to obtain. You can read more about it in the previous blog post, on which I collaborated with a talented natural dyer, Meg.

I use alum acetate for mordanting cellulose fibres. You can buy it online, I found it in an outdoor-equipment online shop, as a substance to impregnate tents. I use Jenny Dean’s recipe - for every 100g of fibres, dissolve 2 tablespoons of alum acetate in boiling water and add to cold water. Add wetted fibres, heat up and simmer for an hour. Let the fibres cool overnight, rinse and let dry. Remember to be very cautious when weighing aluminium acetate, which is a very fine powder. Use gloves and mask. You can use the mordant of your choice, remember though, that metallic mordants do not attach to cellulose fabric until they react with tannins. If you’re interested in learning about different methods, I suggest reading this article.

When dyeing, I mostly use tannin-rich plants, like leaves, tree bark or some flowers. This year I used goldenrod, weeping willow leaves, nettles, sumac leaves, alder cones, rhododendron leaves and ferns. They bond with fibres and alum really well and are more light- and washfast than berries, beans, beetroots or cabbage.

Depending on the dyestuff I either extract the pigment in a few hours or in a few days. Read more about it below in “Tips” section. When you put your fibres in the ready dye bath, heat it up once more and let it cool down overnight. Take out your fabric, don’t rinse it yet, just squeeze it gently and let it dry.

After dyeing, I cure my fabric for a few days to a few weeks. After this period I either perform post-mordanting the same way as before dyeing and/or overdye it with the same plant again for a richer colour. After the whole process is finished, I rinse the fabric under cold water, let it dry and sew beautiful textiles goods with my plant dyed fibres.



At this point, I’d like to add a few tips for beginners. After enough experimenting, you’ll get to this point yourself, but I can spare you some unnecessary disappointment.

  1. When working with sensitive dye stuff like flowers, watch the temperature of your dye bath. I never get my dye bath to boil, as it can destroy the colour and make it all brown and sadden the shade. Let the water heat up enough to steam but not boil, turn off the heat and wait for an hour or two. Don’t boil it after you add fibres either, this way you’ll make sure you’re getting the richest and brightest colour possible.

  2. The best way to extract colour from willow leaves, tree bark or alder cones is to wait. Soak it in water for a day, heat it up, let it cool down. Heat it up the day after and you’ll see some brownish colour developing slowly. Let it cool down, repeat the action again and all of the sudden your water will turn dark red. Being patient is the key in natural dyeing.

  3. Don’t expect particular colour. I never got the same shade twice, because there are too many factors influencing the process - I’ll write about it another time if you’re interested. My willow leaves dye bath produced burgundy red in 2016 and sunshine yellow in 2017. Red leaves mix I collected once made a pretty red dye bath, when I took the fibres out, though, they dyed completely green. Enjoy the process and don’t be disappointed!

  4. Be resourceful with water. As I wouldn’t recommend reusing water after scouring or mordanting, you can easily use the water from your dye bath to either water your plants or make some nicely tinted paper (I do both of these things, no plants died so far, and the paper turned out pretty!).

  5. Be careful with washing. Plant colours are very sensitive and can be shifted with different pH. Always use pH neutral soap. Hand wash your fabric in cold water and eco-friendly soap or powder with no detergent. Don’t dry them in direct sunlight.


Now a small exercise for everybody who always wanted to try natural dyeing but never found the courage or time. It will only take half an hour and it’s so easy!

  • Prepare three big glass jars and a small amount of natural white wool divided into 3 mini skeins (around 20g each).

  • Try to collect two avocado skins, all the onion peels from your kitchen and save some freshly ground coffee beans.

  • Cover onion peels with water in a small saucepan and bring it to boil, put one mini skein into one of the jars and cover it with onion peels liquid, close the lid. Cut avocado skins into smaller pieces, cover with water in a small saucepan, boil until the skins are soft and cover the second mini skein with avocado skin liquid. Place the third mini skein in the third jar, brew fresh coffee using coffee filters to separate the grounds and pour over the skein, add enough warm water to fill the jar.

  • Now put all three jars onto your kitchen windowsill. It’s best if they get some direct sun on them during the day but it’s not a must. Wait for two days and…

  • ...take out your fibres, rinse them under cold water and hang up to dry. Done!

    I hope you will enjoy your first dyeing project! From now on you can start experimenting with more demanding dye stuff, fibres and dyeing techniques, like shibori, ikat, ombre etc.

If you decide to give it a go, let me know how it went. It’s a quick and not very time-consuming exercise but it gives beautiful results and is totally worth trying! Tag me on Instagram or send me a message, I would love to see your outcome.


If you have any additional questions or there’s something you’d like to add, you have more knowledge of or you do differently, let me know in comments below. I’m always happy to get your feedback!


Botanical dyeing tutorial in 5 easy steps.jpg

Please pin it if you enjoyed it.