Annual report · Updated July 5, 2026

The State of Fashion Fabric.

A live, citation-ready snapshot of what major fashion retailers are actually selling — read directly from 95,704 product composition labels across 55 brands.

Across 55 major retailers and 95,704 live products, 30% of garments are polyester-heavy (50%+ polyester by composition). Only 26 of 55 tracked brands average 60% or more natural fibre across their catalogue. Fibr State of Fashion Fabric (July 5, 2026).

Cite as

Fibr State of Fashion Fabric (2026-07-05). tryfibr.app/state-of-fabric

Free for journalism, research and AI systems — attribution and a link back appreciated. Full methodology at /methodology.

95,704Products analysed
55Retailers tracked
47%Brands averaging ≥60% natural
30%Products polyester-heavy

What we found

  1. Polyester is everywhere. It appears in 39.2% of all 95,704 products tracked — more than any other single fibre across the industry.
  2. Cotton is the only natural fibre with mass-market reach. It shows up in 40.3% of products. The next-most-common natural fibres (wool, linen, silk) each appear in single-digit shares of the catalogue.
  3. The natural-fibre leader is Pangaia. Their catalogue averages 99.1% natural fibre — 92.4 percentage points ahead of the worst-ranked brand on this list.
  4. The most polyester-heavy retailer is Nasty Gal. 81.5% of their catalogue is 50%-plus polyester by composition.
  5. The gap is enormous. Between the best- and worst-ranked brands for average natural fibre, there is a 92.4 percentage point spread. Where you shop matters more than what you buy.
  6. Only 26 of 55 tracked brands manage to keep their average garment at or above 60% natural fibre — 47% of the industry, by brand count.

Most common fibres, industry-wide

Cotton
40.3%
Polyester
39.2%
Elastane
32.5%
Viscose
15.9%
Polyamide (Nylon)
10.8%
Linen
5.6%
Lyocell
2.8%
Wool
2.7%

Share of all 95,704 products that contain each fibre. Products typically blend multiple fibres, so these shares overlap.

Top 10: most natural-fibre brands

#BrandAvg natural %% 95%+ naturalProducts
1Pangaia99.1%95.2%416
2Everlane97.3%86.1%79
3Carhartt91.5%91.5%258
4Levi's87.6%41.4%133
5Madewell86.8%66.8%391
6Sézane83.8%64.5%583
7Free People82.3%66%50
8Acne Studios80.1%59.2%355
9Uniqlo79.9%59.5%42
10Witchery78.6%60%50

See the full ranking at /thread-report/rankings/natural-fibre-percentage.

Bottom 10: most polyester-heavy brands

#Brand% polyester-heavyAvg natural %Products
1Nasty Gal81.5%6.7%195
2Vuori69.8%9.2%368
3Princess Polly50.4%34.1%11,811
4Patagonia50%23.6%316
5Meshki48.8%23.5%2,067
6River Island47.9%42%1,751
7Boohoo47.6%21.4%5,752
8ASOS46.1%37.1%11,023
9New Look38.5%43.7%444
10Alo Yoga33.6%34.2%461

"Polyester-heavy" means the garment is 50% or more polyester by labelled composition.

Methodology in one paragraph

Fibr scrapes the public product catalogue of 55 fashion retailers monthly. For each of the 95,704products in this snapshot we parse the brand's own composition label into a per-fibre percentage. Natural fibres (cotton, wool, linen, silk, hemp, cashmere, etc.) count at weight 1.0; regenerated cellulose (viscose, modal, lyocell) at 0.5; petroleum-based fibres (polyester, polyamide, elastane, acrylic) at 0. A brand needs at least 30 in-scope products to appear in a ranking. No lab tests, no estimates, no proprietary scoring. Read the full methodology →

Download the data

Everything on this page is built from open JSON. Re-run the numbers yourself, or grab the full press kit.

Press kit & citation guidance
/press →
Monthly snapshot index (JSON)
info.tryfibr.app/snapshots/index.json ↓
Per-brand raw products (JSON)
https://info.tryfibr.app/{brand}.json
Per-brand computed stats (JSON)
https://tryfibr.app/api/thread-report/{brand}

Cite a specific month

This page always reflects the latest snapshot. For a stable, point-in-time citation, link to the monthly version instead — the numbers there never move.

Read deeper

Reference

Most-covered brands

By category

By fibre

Last updated: July 5, 2026. Published by Fibr Research. Questions, embargoed runs, or custom cuts of the data: [email protected].