We earn a commission if you buy through links on this page, at no extra cost to you. Picks are based on dye chemistry, fibre compatibility, manufacturer instructions and 14 years of industrial dyeing experience.
Quick answer
The best permanent fabric dye is the one whose dye class matches your fibre. Use a fibre-reactive dye like Jacquard Procion MX for cotton, linen and rayon, a disperse dye like Jacquard iDye Poly or Rit DyeMore for polyester, and an acid dye for wool, silk and nylon. All-purpose Rit suits mixed fibres but fades sooner.
Our top picks at a glance
Jacquard Procion MX Fiber Reactive Dye, Jet Black
Fibre-reactive dye forms a chemical bond with cotton, so it is the most wash-fast option you can use at home.
Buy on AmazonJacquard iDye Poly Polyester Dye, Black
A true disperse dye that dissolves into polyester at a simmer, the only way polyester takes lasting colour.
Buy on AmazonJacquard Acid Dye, Navy Blue (1/2 oz)
Acid dye bonds to the amino groups in protein fibres and nylon for bright, lasting shades.
Buy on AmazonDyeing clothes black? See our best black dye for clothes and best black dye for polyester guides.
Permanent fabric dye comparison
| Product | Dye class | Best for | Fix method | |
|---|---|---|---|---|
| Fibre-reactive | Cotton, linen, rayon, bamboo | Soda ash, warm water | Buy on Amazon | |
| Disperse | Polyester, acetate | Simmer on the stove | Buy on Amazon | |
| Disperse (liquid) | Polyester, acrylic, nylon blends | Near-boiling stovetop bath | Buy on Amazon | |
| Acid | Wool, silk, nylon | Vinegar or citric acid plus heat | Buy on Amazon | |
| All-purpose (mixed classes) | Cotton-rich blends, quick projects | Hot water, salt or vinegar | Buy on Amazon | |
| Fixative (not a dye) | Reducing bleed after dyeing | Soak after rinsing | Buy on Amazon |
Fix methods summarise the manufacturers' published instructions. Always follow the label for your exact product.
What makes a fabric dye permanent?
No dye is permanent on every fabric. Permanence depends on how the dye class holds the fibre. A reactive dye bonds chemically to cotton's hydroxyl groups. Polyester has no such sites, so a disperse dye dissolves into the hot fibre and is locked in as it cools. Wool, silk and nylon hold acid dye by strong ionic attraction to their amino groups.
All-purpose dyes such as standard Rit blend several dye types so one bottle colours many fibres. None of them is matched to your fabric, so the colour is held more loosely and fades sooner. Our guide to dyeing cotton with reactive dye covers the chemistry in more depth.
| Fibre | Dye class to use | Example product | Typical wash fastness for this dye class |
|---|---|---|---|
| Cotton, linen, rayon, modal, bamboo | Fibre-reactive | Jacquard Procion MX | Very good |
| Polyester, acetate | Disperse | Jacquard iDye Poly, Rit DyeMore | Good to very good after proper rinsing |
| Wool, silk, alpaca | Acid | Jacquard Acid Dye | Good |
| Nylon, spandex blends | Acid (or disperse for light shades) | Jacquard Acid Dye, Rit DyeMore | Moderate to good, by dye type |
| Mixed or unknown blends | All-purpose (direct + acid mix) | Rit All-Purpose | Moderate, better with a fixative |
| Polyester-cotton blends | Disperse and reactive, two baths | iDye Poly, then Procion MX | Good when both fibres are dyed |
Fastness labels describe what each dye class typically achieves when applied correctly. They are not test results for these specific products.
Why cotton dye bleeds even when it is fixed
From my dye-house notes
Even in industrial dyeing, only around 60–90% of reactive dye bonds to cotton. The rest reacts with water, sits loosely on the surface and comes out in the first washes. For deep shades we soap twice at 80°C, with hot washes at 70°C and 60°C, to bring wet rubbing up to grade 3. At home, the equivalent is a long, hot wash-off.
Expert tip from Kamrul Islam
Reactive dye needs alkali to fix, and the right range is about pH 10.5–11.5. If you skimp on soda ash, the dye never bonds properly and washes out. Measure the soda ash, do not guess. Our soda ash guide explains why.
The 6 best permanent fabric dyes reviewed
Jacquard Procion MX Fiber Reactive Dye, Jet Black
Fibre-reactive powder · cellulose fibres · fixes with soda ash
Procion MX is the cold-reactive dye family used for professional tie-dye and cotton dyeing. It fixes at roughly 30–40°C, so warm tap water is enough, and soda ash triggers the bond. Properly rinsed, the colour is about as permanent as home cotton dyeing gets, on linen, rayon and bamboo viscose too.
Pros
- Chemical bond gives very good wash fastness on cotton
- Works in warm water, no stovetop needed
- Huge colour range that mixes well
Cons
- Does nothing for polyester or acrylic
- Needs soda ash and careful wash-off
Skip it if skip it if your garment is mostly polyester or you want a one-bottle, no-measuring job.
Expert tip from Kamrul Islam
Keep the fabric moving for the first ten minutes. Uneven colour almost always starts before the soda ash goes in.
Jacquard iDye Poly Polyester Dye, Black
Disperse dye · polyester, acetate · stovetop simmer
iDye Poly is a genuine disperse dye, the only dye class that truly dyes polyester. The packet includes a colour intensifier, and you hold the bath at a simmer so the dye can move into the fibre. Because the colour sits inside the fibre, it resists washing well.
Pros
- Real disperse dye for lasting colour on polyester
- Also dyes acetate and some nylon
- Small packets suit single garments
Cons
- Needs a dedicated pot and stovetop heat
- Deep shades are harder at home than in a pressure machine
Skip it if skip it if your fabric is cotton, wool or silk, where it gives little or no colour.
Expert tip from Kamrul Islam
Polyester only accepts disperse dye above its glass transition point, roughly 70–80°C in water. Keep a steady simmer for the full label time.
Rit DyeMore Liquid Dye for Synthetics, Graphite
Liquid disperse dye · polyester, acrylic, nylon · stovetop
Rit DyeMore is Rit's ready-to-use liquid dye for synthetics. It works on polyester, acrylic, acetate and synthetic blends in a near-boiling stovetop bath, and is the easiest route to lasting colour on sportswear and polyester tops.
Pros
- Liquid is easy to measure and mix
- Made for polyester and polyester blends
- Widely available in many colours
Cons
- Washing machine dyeing will not get hot enough
- Expect lighter results on high-tech performance fabrics
Skip it if skip it if you have no stovetop pot to spare.
Expert tip from Kamrul Islam
Long boiling can relax spandex, so keep stretch garments to the shortest time that gives your shade. See our polyester and elastane guide.
Jacquard Acid Dye, Navy Blue (1/2 oz)
Acid dye powder · protein fibres and nylon · vinegar or citric acid
Jacquard Acid Dye is a concentrated powder for wool, silk, alpaca and nylon. White vinegar or citric acid in the hot bath lets the dye bond to the fibre's amino groups. Colours are bright and the bath often turns nearly clear when the job is done.
Pros
- Bright, saturated colour on wool and silk
- Strong bond on nylon
- Concentrated powder goes a long way
Cons
- Will not dye cotton or polyester
- Heat must rise slowly to avoid felting wool
Skip it if skip it if your garment is a cotton or polyester blend.
Expert tip from Kamrul Islam
Wool felts from sudden temperature change and agitation. Raise the bath slowly, stir gently, and let the wool cool in the bath before rinsing.
Rit All-Purpose Liquid Fabric Dye, Black (8 oz)
All-purpose liquid · cotton, linen, wool, silk, nylon · washer or stovetop
Rit All-Purpose mixes direct and acid dye types so one bottle colours cotton, linen, rayon, wool, silk and nylon. That flexibility costs permanence: the colour is held more loosely, so it bleeds more and fades sooner. Rit points high-synthetic blends to DyeMore instead.
Pros
- Works on many natural fibres and nylon
- Liquid, no mixing powders
- Can be used in a washing machine or sink
Cons
- Least permanent option here
- Weak on polyester-rich fabric
Skip it if skip it if the colour must survive years of hot washing.
Expert tip from Kamrul Islam
On cotton, add salt and run the bath as hot as the fabric allows, then finish with a fixative. It noticeably cuts how much colour comes out in the next wash.
Rit ColorStay Dye Fixative
Dye fixative · used after dyeing · cotton and natural fibres
Rit ColorStay is not a dye. It is a fixative you use after dyeing and rinsing to help the colour hold and reduce bleeding. It is most useful with all-purpose dye on natural fibres, where the dye has no chemical bond.
Pros
- Reduces bleeding from all-purpose dyes
- Simple soak after rinsing
- Helps protect other laundry
Cons
- Cannot fix the wrong dye on the wrong fibre
- Adds an extra step
Skip it if skip it if you used a disperse dye on polyester, where it is not needed.
Expert tip from Kamrul Islam
Rinse until the water runs nearly clear first. A fixative only holds dye already in the fibre, not loose surface dye.
How to make fabric dye permanent at home
- Check the care label. Choose the dye class from the table above. Blends need the dye for the main fibre, or two baths.
- Scour first. Wash in hot water with plain detergent and no softener. Finishes and oils cause patchy colour.
- Weigh and measure. Dry fabric weight sets how much dye, salt, soda ash or acid you need. Black needs more dye.
- Hold the right temperature. Warm for Procion MX, a simmer for iDye Poly and DyeMore, just below a simmer for acid dye. Keep the fabric moving.
- Give it the full time. Pulling fabric out early is the most common reason home-dyed colour washes out.
- Wash off thoroughly. Rinse cold, then wash hot with detergent until the water runs clear. Use a fixative after all-purpose dye.
Expert tip from Kamrul Islam
Bleeding is almost never fading. It is unfixed dye that was not washed out, and in the dye house the fix for dark shades is more soaping. Our guide on rinsing dyed fabric without bleeding walks through it.
Buyer's guide: choosing a permanent clothes dye
Fibre content comes first. A cotton dye barely tints polyester, and a polyester dye leaves cotton almost white. For a 50/50 blend, use two dyes or accept a lighter, heathered result.
Heat you can supply. Reactive dye works in warm water. Disperse and acid dyes need a stovetop pot kept only for dyeing; a washing machine will not get polyester hot enough.
Shade depth. Black, navy and other deep shades need more dye and much more wash-off. If permanent black is the goal, see our black dye for clothes picks.
Aftercare. Cool, inside-out washes and less direct sun drying extend colour life on any fibre. Chlorine bleach shortens it.
Frequently asked questions
What is the most permanent fabric dye?
For cotton and other plant fibres, fibre-reactive dye such as Procion MX is the most permanent because it forms a chemical bond with the fibre. For polyester, disperse dye is the most permanent, and for wool, silk and nylon, acid dye is.
Is Rit dye permanent?
Rit All-Purpose dye is semi-permanent in practice: it bonds less strongly than reactive or acid dye and fades gradually with washing. Using Rit ColorStay fixative and washing in cool water helps it last longer.
What is the best permanent fabric dye for polyester?
Use a disperse dye such as Jacquard iDye Poly or Rit DyeMore in a simmering stovetop bath. Regular all-purpose or cotton dyes will not permanently colour polyester.
What is the best permanent dye for cotton?
Fibre-reactive dye such as Jacquard Procion MX, fixed with soda ash in warm water. Rinse and hot-wash well afterwards so loose dye does not bleed.
Does a dye fixative make fabric dye permanent?
A fixative like Rit ColorStay reduces bleeding and helps colour last, especially with all-purpose dye on natural fibres. It cannot make the wrong dye stick to the wrong fibre.
Why does my dyed fabric keep bleeding?
Usually unfixed surface dye from a short wash-off. Wash it hot with detergent until the water runs clear, then use a fixative after all-purpose dye.
Can you permanently dye a cotton-polyester blend?
Yes, but you need two dyes: a disperse dye for the polyester and a reactive dye for the cotton, used in separate baths. One dye alone gives a lighter, heathered shade.
Our verdict
Our verdict
For most people dyeing cotton clothes, Jacquard Procion MX is the best permanent fabric dye: it bonds chemically to cotton and works in warm water. Use iDye Poly or Rit DyeMore for polyester, Jacquard Acid Dye for wool, silk and nylon, and add Rit ColorStay whenever you use all-purpose Rit.
Buy on Amazon







