The Best Fabric Dyes for 23 Fabrics

When choosing the best dye for your project, the most important thing to be aware of is the fiber content of the items you’re dyeing. This will help you choose the most reliable and permanent dye, as different types of dyes are formulated to work with different types of fibers. 

  • The best dye for cotton, linen, hemp, viscose, rayon, and bamboo is fiber-reactive dye.
  • The best dye for wool, silk, nylon, and Cordura is acid dye.
  • The best dye for synthetic fabrics including polyester and acrylic is disperse dye.

If you’re not sure what the composition of the item you’re dyeing is, you can burn-test a small swatch to determine what it might be. If you have any uncertainty at all about the content of your item, or even if you are sure but the exact shade you’re trying to achieve is important, I highly recommend dyeing a test swatch before you dye your whole item. It’s a lot easier to add color than it is to remove it.

submerging white fabric into blue dye
Submerging white fabric into blue dye. Photo credit: Pexels.

Skip to the best dyes for:

The best dye for cotton, linen, hemp, viscose, rayon, & bamboo

The best fabric dye for these fibers is fiber-reactive dye.

Cotton, Linen, Hemp, Viscose, Rayon, and Bamboo are all examples of cellulose fibers. Cellulose fibers are grown by plants, and fiber-reactive dyes are specifically formulated to bond with them. 

In comparison to an all-purpose dye like Rit or Dylon, fiber-reactive dyes will result in a more consistent and color-fast dye job. You do need more supplies to use fiber-reactive dyes though.


Fiber-reactive dyes require soda-ash to be used as a fixative, and in addition to gloves (which are always recommended when dealing with dyes or any kind of chemicals) – you’ll also need a mask and a dedicated set of dye-measuring teaspoons and mixing utensils, as these dyes come in powder form.

Fiber-reactive dyes don’t require heat or a stovetop to be successful, but if you’re dyeing a particularly dark or vibrant color, heat can be used to intensify the effect.


These dyes will also dye protein fibers (see the next section for more on this), but they’ll often “color-shift”. This means the color that results from using fiber-reactive dyes on protein fibers will be a few shades different than the result on a cellulose fiber. If you have some fiber-reactive dye that is the perfect shade for your wool or silk project, it’s a good idea to dye a small swatch first to ensure that the color is what you’re expecting.

The best dye for wool, silk, nylon, & Cordura

The best fabric dye for these fibers is acid dye.

Acid dye is designed to chemically bond with protein fibers. Protein fibers are from animals. In addition to wool and silk, your fingernails (and hair!) are also protein fibers, which is why it’s particularly important to wear gloves when working with these dyes.

For some complicated chemical reasons, nylon (and Cordura, which is a trademarked variety of nylon) accepts dye in almost the same way that protein fibers do, so acid dye is also the best dye for nylon and Cordura.


Acid dyes require heat to produce a wash-fast dye, so you’ll need a dedicated dye pot on your stovetop to use these dyes. Like fiber-reactive dyes, they come in powder form so you’ll need a dust mask to avoid accidentally inhaling the powder, and as mentioned it’s extremely important to wear gloves when working with acid dye. 


It’s worth noting that if you happen to be dyeing nylon and another protein fiber in the same dye bath, the nylon will absorb the dye more quickly than the other fibers. When I’m working with this kind of situation, my preferred method is to wait a minute or two (depending on the depth of color and intensity) before adding my nylon items to the dye bath instead of taking them out early. I find this method more reliable. 

Related: How to Dye Silk from Start to Finish (4 Ways) and How to Dye Silk Fabric with Natural Dyes (Step-by-Step)

The best dye for synthetic fabrics including polyester & acrylic

The best fabric dye for synthetic fabrics is disperse dye.

Synthetics are some of the trickiest fabrics to achieve a consistent dye result with, so trial and error is key.

Synthetic fibers vary greatly in their manufacturing, and they’re often treated to make them wrinkle, odor, or water resistant. These variations combined with potential treatments all contribute to the way a fabric might absorb dye, so it’s always worth testing to make sure you get the result you expect. Some synthetics will be very difficult to dye, for example, stain-resistant ones.


‘Disperse dye’ is the name of the dye most commonly used to dye synthetic fabrics after they’ve been manufactured. They’re commonly found in multipurpose dyes like Rit, Dylon, and iDye, but you can find them in their own formulas as well. The most readily available and consistent dye I’ve used is iDye Poly. These dyes are designed to work with synthetic fibers, but due to the large variety of synthetic fiber types, it can be difficult to guarantee a consistent result. When shopping, look for a dye that mentions that it’s formulated for synthetics, such as iDye Poly, for best results.


You can take steps to encourage good dye uptake by pre-washing your fabric with washing soda. It’s a degreaser that will mildly abrade the surface of the fibers so they can be penetrated by dye. You can also use heat to improve dye uptake, but be sure to follow the instructions on your dye packet.

Best dye for fabric blends

The best dye for fabric blends is usually the dye best suited to the fiber that makes up the majority of the blend. For example, if you’re dying a 60% cotton and 40% polyester t-shirt, a fiber-reactive dye is a good option (it suits cotton) – but there are some things to consider.


Depending on the blend, you may find that multiple dye baths are the key to success, but in some cases, this may be overkill. A stretch knit fabric that’s 98% cotton and 2% lycra (a synthetic), should be treated as a 100% cotton fabric with fiber reactive dyes, since that last 2% won’t be visible in the finished item.

However, if you’re hoping to dye a yarn that’s 50% cotton and 50% wool, you may find that neither fiber-reactive dye (suits cotton) nor acid dye (suits wool) yields a vibrant and consistent result. In this case, I’d recommend two separate dye baths to dye all of the fibers involved in that yarn. 

If you’re not interested in a long, drawn-out process and the exact shade is a bit less important, a multipurpose dye like Rit, Dylon, or iDye may work for you, because you won’t need multiple dye baths. The saying ‘Jack of all trades, master of none’ applies here. These dyes will color nearly anything they come into contact with adequately, but they’re generally less reliable and can sometimes be less wash-fast. This is very project dependent, but if you’re looking for a quick fix for a faded garment, they’re a useful option to consider.

Best dye for upholstery fabric

Most upholstery fabric is either synthetic or a blend, so follow the suggestions above for these categories.


When dyeing upholstery fabrics, washfastness becomes less important (I certainly don’t throw my couch’s slipcover in the washing machine on any kind of regular basis!). However, lightfastness becomes more important, especially if your furniture is near a window or exposed to sunlight. If you have time, test this by dyeing a swatch, cutting it in half, and leaving half on a sunny windowsill and the other half in a drawer for a month or so to see if it fades.

Upholstery fabric is also often treated with anti-stain or water-resistant coatings. If you’re upholstering a piece of furniture, it’s not usually recommended to pre-wash your fabric, but in the case of dyeing, you’ll most likely need to wash it with a scouring agent to remove this before you dye. If stain resistance is an issue, a 3M waterproofing spray will help keep it water-resistant once your dye job is complete!

Best dye for outdoor fabric (such as outdoor cushions)

Outdoor fabrics are normally designed to resist water and staining, and therefore they’ll resist dyeing! So they aren’t the easiest project to dye. These fabrics are most commonly polyester, so if this is the case, follow the suggestions in the ‘synthetic fabrics’ section above, including pre-washing with a scouring agent and using a hot dye bath for best results.


Due to the scouring and heat application, these fabrics are likely to lose some of their waterproof qualities during the dye process. This may not be important to you, but if it is, a waterproofing spray will only be a temporary fix in conditions where the fabric is consistently exposed to the elements.

Some colors do fade more quickly than others (reds are notorious for quick fading, though this is different across different dye formulations) so consider a blue color scheme for your outdoor cushions, and be prepared to re-dye them every year or two if they do fade.

Best dye for fleece fabric 

Polar fleece is a 100% polyester fabric, so follow the suggestions in the ‘synthetic fabrics’ section. Sweatshirting is also sometimes called fleece (this fabric is most common in sweatpants and sweatshirts – it looks like a knit fabric on the outside but it’s fuzzy and ‘fleecy’ on the inside) – this can contain a variety of different fibers so be sure to check your label and dye accordingly.


Fleece – the polar kind – is an extremely dense fabric, so the dye will take a while to penetrate fully. It also tends to have a lower melting point than other synthetic fabrics, so turning up the heat to get a more vibrant color is not recommended. Instead, maintain a lower heat but keep your item in the dye bath for longer, and be sure to agitate (swish, stir, squeeze, and then spread out the fabric in the dye pot) as you go to make sure the dye can fully penetrate the fibers.

Best fabric dye for jeans and denim

Traditionally, denim is made from 100% cotton, making fiber-reactive dye the best choice. However, jeans these days can be blended with materials like lycra and polyester to add stretch and durability. Check the label on your jeans and dye accordingly.


When dyeing jeans, it’s important to keep in mind that the topstitching thread will most likely absorb dye differently than the main fabric. If you’re dyeing cotton jeans that have a polyester topstitching thread with fiber-reactive dye, the thread won’t absorb the dye. This could be the look you’re going for! However, a polyester-blend denim stitched with polyester thread will result in all components dyeing. It’s likely that different base colors will yield slightly different results, though. 

Denim gets quite stiff when it’s wet, making it difficult to maneuver in a dye bath. Choose a larger dye tub than you think you need, and be sure to agitate constantly for an even result. If the dye bath isn’t agitated, dye can settle into the creases of the jeans and create darker lines throughout the denim.

Related: How to Dye Jeans Black – Complete Guide for Beginners

Best fabric dye for bleach stains

While it’s impossible to wash a bleach stain out, you can breathe a little bit of life back into a bleached garment by overdyeing it. Follow the dye instructions above for the composition of your garment.


Keep in mind that since the item you’re dyeing isn’t starting out an even color, you may not get an even result. If the bleach stains are a significantly lighter shade than the rest of your garment, it may be worth bleaching the entire garment purposefully to lighten it before you dye it. Proceed with caution if you choose to do this – bleach chemically eats away at fibers so prolonged exposure can be damaging. Be sure that the item you’re dyeing has been through the washing machine with detergent so it’s completely bleach-free before dyeing.

Depending on the look you’re going for, this might be a good opportunity to test out some tie-dyeing techniques as well. Since it can be difficult to get an even result on an item that is multiple shades to begin with, try a scrunch, tie, or shibori technique that is intentionally multicolored to hide the stain.

Best fabric dye for towels

Most towels are cotton, so a fiber-reactive dye will work best.


Towels are designed to absorb water (of course!) so be sure the towels you’re dyeing have room to swim freely in their dye bath.

Due to the density of the fabric, you’ll most likely need to use more dye than you expect to get a saturated result.

By far, the most difficult part of dyeing towels is the dye wash-out process. Since they hold on to water, it’s difficult to get the water running clear after the dye bath is done. This will happen eventually, and it’s important to wash out all of the excess dye (and send them through the washing machine afterward) before they go into your regular rotation. You don’t want a tie-dye surprise when you dry off after your shower!

Best fabric dye for shoes

Shoes are made from a variety of fibers, both inside and out, so unless you’ve dyed a test pair, the results are likely to be a bit of a surprise. In the case of canvas trainers (like Converse or Vans) – the upper is usually cotton and the sole can be natural rubber.

This is important because natural rubbers can sometimes (but not always!) absorb dyes for cotton. If you’d like to dye a pair of canvas trainers but retain the original color of the sole, be sure to block off the soles with waterproof tape (like duct tape) or paint on an artists’s masking solution to protect them.

From there, either carefully dip or use a foam brush to saturate the uppers in the dye solution best for the fiber content of your shoes (the fiber content tag is usually on the inside of the tongue). Allow the dye to sit for a few hours before washing it out.

If your dye requires heat to set (for example, if your shoes are polyester and you’re using a disperse dye like iDye Poly), you can carefully bag up your shoes and place them in your dryer’s drying rack (don’t tumble!) so that the dryer can provide heat to set the dye. I’ve heard of friends using a microwave to this effect as well, but proceed with caution if you use this technique!

Best dye for tie dye

Far and away, the best results for tie-dye will be achieved by choosing a cotton item to dye and using fiber-reactive dyes. Polyester and protein fibers can be tie-dyed, but these types of fibers require heat to set which, while possible, adds an extra layer of complexity and time urgency to the dyeing process.

Related: 18 Realistic Things to Tie-Dye at Home (+ Tips from a Pro)

Best black dye for different fabrics (synthetic and natural)

Black is one of the most difficult colors to achieve in a home dyeing environment. This is partly due to the intensity of the color required (a less intense black will turn out grey) and also because there are so many black dyes to choose from! Black dye usually has a base color – a blue or red base – which creates a cooler or warmer looking black.

These pigmentation differences are true across different types of dye, so if the exact shade is important to you, choose accordingly. When dyeing black (or any extremely intense shade), it’s very important to stick to the dye that is designed for your fabric composition.

Depending on the fiber content, there may also be additional steps you need to follow. For example, Rit and iDye synthetic dyes recommend a hot dye bath and the addition of extra dye, and Dharma Trading Company’s fiber-reactive black dye recommends soaking your dyed item in a fixative solution before washing out the excess dye. 


What to read next…

This article was written by Kat Waters and edited by Sara Maker.

Kat Waters (author)
Kat has been sewing since her feet could reach the pedals, starting with quilts she made with her mom and eventually graduating to garments. She now makes everything she wears, occasionally teaches classes, and shares her projects on social media. Highlights include her wedding dress, shoemaking, and a love for almost any fabric that comes in hot pink! Read more…


Referenced in April 2022.