People have been dyeing fabric and fibers with plants for thousands of years, and you can too! In fact, chances are that you have plenty of plant material in your garden, refrigerator, and pantry to do just that. Onions, blueberries, and spinach are just a few plants that you can use to create beautiful fabric dyes. Read on for more info!

Continue reading below
Our Featured Videos

dye, plant dye, plant dyes, popular plant dyes, plants to dye with, dyeing with plants, dye with onion skins, onion skin dye, onion skins, goldenrod dye, blueberry dye, cabbage leaf dye, DIY plant dye, natural dyeing, mordant, mordants, dye, dyes

If you’ve ever dyed fabric at home, chances are you probably used one of the packets you can buy at the pharmacy or local sewing shop. Instead of using these, which are packed with chemicals that leak into groundwater, you can use a variety of different plants. You probably wouldn’t look down at a spinach and blueberry salad and think “hey, I could dye a shirt with this stuff”, but you’d be surprised at how many plants can yield rich, beautiful dye colors with the help of simple mordants. When it comes to dyeing fabric or fiber, make sure that it’s thoroughly dampened before it goes into the dye bath, or it may dye unevenly.

What’s a Mordant?

Also known as a fixative, a mordant is a metallic or mineral compound that causes a chemical reaction with the plant dye. Sometimes it will intensify or enhance a color (or change it completely), but the main purpose of a mordant is to lock the dye into the fabric. You can dye without mordants, but the colour won’t be as rich, and will wash out very quickly. The most common mordants used are:

  • Alum
  • Ammonia
  • Baking Soda
  • Chrome
  • Copper
  • Cream of Tartar
  • Iron
  • Salt
  • Tin
  • Urine (yes, human)
  • Vinegar

Plants to Dye With

I’ll list these by colors of the rainbow rather than alphabetical order, along with the mordants used to brighten and/or affix the dye. Keep in mind that you don’t *have* to use a mordant to dye with: the colors will be softer, more like pastels, and won’t hold up under heavy washing, but it’s fun to experiment to see which hues you can coax from different plantstuffs.

The general rule of thumb is to toss your dye materials into a pot that’s large enough to later hold the fabric you’re planning to dye. ONLY use a stainless steel or glass pot for this, as copper or aluminum can affect the color outcome. Cover the plant matter with a generous amount of water, bring it to a boil, then reduce the heat and simmer it for about 40 minutes. Allow it to cool before dyeing! If you toss natural fibers like wool or cotton into hot water, you risk shrinking it.

sumac, staghorn sumac, dyeing with sumac, red dye, natural red dye


Sumac Berries

Those bright red berries aren’t just great for making lemonade—they can create a vibrant pink-red hue. Crush the berry cones or put them through a food processor, then simmer in a pot for about half an hour with some vinegar added to it. Add your pre-soaked fabric to the pot and simmer for another half hour.

Red Onions

Onion skins are ideal because they don’t need a mordant. The skins create their own tannins that’ll act as fixatives for you. Just fill a pot with red onion skins and water, boil, and simmer for about half an hour until the water is stained well. Add in your fabric, turn the heat off, and let everything sit for 1-2 days.

yellow onion, onion dye, onion skin dye, dyeing with onion skins

Orange and Yellow

Yellow Onion Skins

One of the most readily available bits of plant matter to work with, and one of the easiest to work with as well. Pre-mordant your fiber (i.e. soak it in a water bath with the mordant added to it first, and wring it out slightly before dyeing). Fill your pot with as many yellow onion skins as it will hold, add water, bring to a boil and simmer for about half an hour. Add your fabric and simmer for another 20 minutes, then remove from the heat and allow to soak overnight. Rinse under cold water.

For a bright yellow color, use alum as a mordant. For bright orange, use tin.

lettuce, lettuce dye, dyeing with lettuce


Green lettuce

There are so many different varieties of lettuce, and their leaves can create hues ranging from pale apple green to olive, so be sure to experiment with small batches, using different mordants. Iron will create a really wonderful green, but you can get widely differing results using tin, vinegar, blue vitriol, etc. You can also add other leafy greens like spinach, chard, purslane, dandelion greens, or sorrel for different variations in hues.

Related: Silkworms munch mulberries and dye to create naturally fluorescent silk



It’s an incredible waste of good fruit, but you can make a pale blue dye with blueberries that have been simmered in water and then strained out. To get a blue pigment, you’ll have to let the dye cool completely and then immerse your damp fabric in it. If you put the fabric in while the dye is hot, you’ll get a more purple-ish shade instead. To create a more intense blue, you can simmer blueberries, black beans, and purple cabbage together, strain it well, cool it, and then soak your stuff in it. If you just have purple cabbage on hand, use baking soda in the water to amp its blue tones.

pink berries, nature, dyeing, natural dye


Pink berries

If you feel like sacrificing a bunch of delicious fruit, simmer raspberries, strawberries, or cherries in water until the fruit flesh falls apart. They’ll create a variety of different hues depending on whether you use them alone, or combined together.

Pickled Beets

Have you ever handled raw beets? Then you’re familiar with the bright magenta juice that’ll stain your hands pink for days. Guess what? That will dye fabric as well. The thing with beets is that if you just boil the root veg and then steep your fabric in it, you’ll get a slightly reddish brown hue. It’s PICKLED beets that will dye fabric bright pink. If you don’t feel like going through all the hassle of pickling these foods yourselves, ask friends and family members to keep the brine after they’ve eaten their share of pickled beets. Pour all of that into a pot, and steep your fabric in it. The vinegar, salt, and sugar all work together to bind the pigment into your fabric or fiber.

Related: How to dye Easter eggs naturally with leaf imprints

cabbage, cabbage dye, purple cabbage dye, dyeing with cabbage


Purple cabbage

Chop the cabbage finely, toss into a large pot of water, and add a tablespoon of salt for every half cabbage you use. Bring this to a boil, then simmer for up to an hour. Strain it well, allow it to cool, and you’ll have a lovely purple dye: no mordant needed. If you add vinegar to this dye, you’ll get a lighter, pinker mauve shade. If you add ammonia to it, you’ll get blue. Experiment!



Also known as Cornflower, this flower grows along roadways, ditches, and in abandoned parks all around North America and many parts of Europe, China, and Australia. Its long taproot can be used as a coffee substitute after being roasted and dried, and when used with chrome or iron as mordant, will produce a rich, warm brown dye.



You’d think that blackberries would dye a fabric purple, but newp. In fact, since people generally prefer to eat these berries than to waste them as dye, it’s actually autumnal blackberry leaves that are used to create a beautiful gray dye, but only once they have darkened to purple. You can toss some berries that are past their prime into the water as well: it’ll just make the color richer. Use iron as a mordant.

Remember that these color results are based on the assumption that you’re using white or unbleached natural material such as cotton, linen, wool, etc. The hues you get will vary greatly depending on the base color you’re working with, and whether you do more than one dip.

If you’re interested in exploring more about these kinds of dyes, I’d recommend picking up a book or two as reference material, or even scouring through online resources and taking notes as you go along. Be sure to experiment! You may find a new combination that yields the color of your dreams.

Lead image of colored yarn via Deposit Photos, others via Deposit Photos, Unsplash and Wikimedia Creative Commons, and by the author