How to Manage Fabric Composition Across Hundreds of Shopify Products
Stop typing fiber content product by product. Keep one record per fabric, link every style to it, and update products in bulk from that record. This turns hundreds of manual edits into one controlled list.
Why large catalogs drift
The same fabric appears in many styles, colours and seasons. When each product description is typed by hand, small differences appear: "Cotton 95% Elastane 5%", "95% cotton / 5% spandex", "Cotton blend". Each variation is a separate chance to publish something that does not match the label. Under the Textile Act, the fiber names and order on the label must follow the FTC rules, so the data you publish should be built from one controlled source.
The fabric master list
Create one table where each row is a fabric, not a product.
| Fabric ID | Fiber 1 | % | Fiber 2 | % | Fiber 3 | % | Supplier | Source document | Last checked |
|---|---|---|---|---|---|---|---|---|---|
| FAB-0012 | Cotton | 95 | Elastane | 5 | Supplier A | Spec sheet v3 | 2026-09-14 | ||
| FAB-0013 | Polyester | 100 | Supplier B | Lab report | 2026-08-02 |
Rules that keep it clean:
- One ID per fabric and per percentage mix. A 95/5 and a 92/8 are different fabrics.
- Use FTC generic fiber names in the master list, then derive customer-friendly wording from it.
- Always record the source document and the date you checked it.
Link products to fabrics
Add one reference to each style (a metafield or a column in your sheet) pointing to the fabric ID. Where a garment has more than one fabric (shell and lining, body and trim), keep one reference per component. See the metafields guide for a structure.
The update loop
- Export products as CSV.
- Look up each style's fabric ID in the master list.
- Generate the composition text from the master list, never by hand.
- Re-import the CSV or update through Shopify's bulk editor.
- Re-export and compare. Any row where the published text differs from the generated text is a mismatch.
Three checks that catch most problems
- Total check: fiber percentages in each fabric must sum to 100%.
- Name check: every fiber name must be in your approved list.
- Duplicate check: the same fabric ID must produce the same text wherever it appears.
When a supplier changes a fabric
Change the master record first, note the date, then regenerate every product that uses the fabric ID. Do not edit individual products. If the new mix differs from what is on printed labels in stock, hold the update until the physical labels match.
Common mistakes
- Storing the composition only inside the description, where it cannot be queried.
- Rounding percentages for marketing copy.
- Treating a marketing term ("soft touch", "performance blend") as a fiber name.
Frequently asked questions
Can Shopify store fabric composition as structured data? Yes, with metafields (or metaobjects for reusable fabric records).
Should the website text match the label exactly? The information must not be inconsistent with the label. Using one controlled source makes that much easier.
How many fibers should I list? List what the label lists. Rules for naming and for minor fibers are in the FTC checklist.
Related guides
Sources: FTC, Threading Your Way Through the Labeling Requirements ยท Shopify Help Center, Metafields and metaobjects
Not legal advice. Check requirements for your products and markets.