A fabric specification sheet that lists only GSM and leaves out ends per inch and picks per inch is an incomplete spec — two fabrics can share the same GSM and behave completely differently in a garment because their EPI, PPI, and yarn count combine in different ratios to reach that weight. Fabric construction is the set of three interlocking numbers — ends per inch (EPI), picks per inch (PPI), and grams per square meter (GSM) — that together define density, cover, drape, strength, and cost before a single meter is woven. Getting the calculation wrong at the design stage means discovering the mismatch only after a full warp beam has already been prepared, at which point the fix costs real money and real time. This guide walks through what each parameter measures, how to calculate GSM from EPI, PPI, and yarn count before weaving, what cover factor means and why it matters more than density alone, and how to read a construction spec correctly so the numbers on paper match the fabric that actually comes off the loom. Mills validating construction specs before warp preparation can book a 30-minute demo to see how iFactory checks calculated GSM against loom-floor actuals in real time.
Fabric Construction Guide — EPI, PPI, and GSM Calculation
The three numbers that define woven fabric density and weight, the formulas that connect them, cover factor as the parameter density alone misses, and a worked calculation from yarn count to finished GSM.
EPI: warp ends packed into one inch of fabric width. PPI: weft picks packed into one inch of fabric length. GSM: total fabric weight per square meter, derived from EPI, PPI, and yarn count together — never from any one number alone. A construction quoted as "76x68" with count "40s x 40s" tells a weaver almost everything needed to calculate expected GSM before the first pick is thrown.
Ends Per Inch (EPI) — Warp Density
EPI counts the number of warp yarns packed side by side across one inch of fabric width. It is set at the warping and beaming stage, long before the fabric reaches the loom, and it directly controls fabric firmness in the lengthwise direction along with total warp yarn consumption per meter woven.
Picks Per Inch (PPI) — Weft Density
PPI counts the number of weft yarns packed into one inch of fabric length, set by the loom's take-up mechanism during weaving rather than at the warping stage. PPI is the easiest of the three parameters to adjust after initial setup, since it is a machine setting rather than a warp preparation decision.
Calculating GSM — The Formula That Ties Everything Together
GSM cannot be estimated from EPI and PPI alone — yarn count must be part of the calculation, because the same thread density in coarser yarn produces a heavier fabric than identical density in finer yarn. The standard calculation works through warp and weft weight per square meter separately, then adds them together.
Worked Example — From Construction Number to Finished GSM
Reading a real construction quote is easier once the formula above is applied to actual numbers. Consider a common shirting construction quoted as 76x68, 40s x 40s, in a 58-inch reed.
This range is typical for a balanced 40s x 40s shirting construction at this density — a mill quoting the same yarn count but a materially different resulting GSM likely has a density, shrinkage allowance, or finishing calculation error worth checking before the warp is beamed.
Cover Factor — The Parameter Density Alone Misses
Two fabrics can carry identical EPI and PPI numbers yet feel completely different in hand and drape if their yarn counts differ, because raw thread density does not by itself describe how tightly the fabric surface is actually covered. Cover factor solves this by relating thread density to yarn diameter, giving a single number that describes how "full" the woven surface actually is.
Warp Cover Factor
Calculated from EPI relative to the square root of warp yarn count — a higher warp cover factor means less visible gap between adjacent warp yarns, producing a more opaque, firmer-handling fabric face.
Weft Cover Factor
Calculated the same way using PPI and weft yarn count — controls opacity and firmness in the fabric's length direction, and works together with warp cover factor to set overall fabric cover.
Total Cover Factor
Combines warp and weft cover factor into a single fabric cover value. Fabrics above roughly 24–26 combined cover factor are effectively at maximum practical density for most standard weave structures — pushing density higher risks weaving faults rather than adding real fabric quality.
Common Construction Errors and Their Cost
Most construction-related losses trace back to a small set of recurring mistakes, each of which is preventable with a proper calculation check before the warp goes on the loom.
A GSM number alone cannot be reproduced consistently — the same target weight can be reached through many different EPI, PPI, and count combinations, each with different cost, drape, and strength. Always request the full construction, not GSM alone.
Loom-state fabric width and weight are not the finished fabric numbers. Skipping the finishing shrinkage allowance in a GSM calculation routinely produces a costing sheet that undershoots real finished weight by 3 to 8%.
Pushing EPI or PPI past the practical cover factor ceiling for a given yarn count increases reed friction and end breakage without meaningfully improving fabric quality — it simply raises the defect rate.
A large gap between warp and weft yarn count without a matching adjustment in EPI and PPI produces a warp-faced or weft-faced fabric that may not match the intended design brief, even when GSM lands on target.
Reading a Construction Spec Sheet Correctly
A properly written construction spec answers five questions at once, and a spec sheet missing any of them should be sent back for clarification before a costing decision is made on it.
Construction is the spec — GSM is just the summary number at the end of it.
Any two fabrics can share a GSM figure and still be completely different products in drape, strength, and cost. iFactory's fabric costing module carries EPI, PPI, yarn count, and cover factor through the full calculation and checks them against loom-floor actuals automatically, so a design brief and a finished roll always match.
Frequently Asked Questions
Why do two fabrics with the same GSM feel completely different in hand?
GSM is a total weight measurement and says nothing about how that weight is distributed between warp and weft, or how tightly the yarns are packed relative to their own diameter. A fabric built from coarser yarn at lower density can match the GSM of a fabric built from finer yarn at higher density, yet the first will feel bulkier and looser while the second feels tighter and smoother. This is exactly why cover factor exists as a separate calculation — it captures the packing tightness that GSM alone cannot describe. When sourcing fabric on GSM alone, always request the full EPI, PPI, and yarn count construction as well, since GSM matching without construction matching does not guarantee a comparable fabric hand or drape. Book a demo to see full construction data tracked alongside GSM for every fabric batch.
How much does finishing typically change a fabric's weight and dimensions from the loom state?
Finishing processes — washing, calendering, sanforizing, and heat-setting depending on fiber type — routinely shrink fabric width by 3 to 6% and can add or remove 2 to 5% of weight depending on whether a finish deposits chemical add-on or removes size and impurities during scouring. A GSM calculation performed only on loom-state fabric without a finishing allowance will not match the finished product a customer eventually measures, which is the single most common reason a costing sheet and an actual delivered fabric disagree on paper. Always specify whether a quoted GSM is loom-state or finished-state, and build the appropriate shrinkage and weight-change allowance into the calculation rather than assuming loom-state numbers carry through unchanged.
What is a safe maximum cover factor before weaving faults start increasing?
There is no single universal number since it depends on weave structure and yarn quality, but for plain weave cotton shirting, a combined cover factor above roughly 24 to 26 is where most mills start seeing a meaningful rise in reed marks, end breakage, and pick bunching. Twill and satin weaves can typically sustain a somewhat higher cover factor before faults appear because their longer floats reduce the number of interlacement points per unit area compared to plain weave. Pushing density past this practical ceiling to hit a target GSM rarely improves fabric quality — it usually just raises the defect rate and stop time on the loom, so the better fix is adjusting yarn count rather than pushing EPI or PPI further. Contact iFactory Support for cover factor benchmarks by weave structure.
Can PPI be changed after a warp is already beamed if the target GSM needs adjusting?
Yes — this is one of the most useful practical facts in fabric costing. PPI is a loom take-up setting adjusted during weaving, not a warp preparation decision, so a mill can raise or lower PPI on an already-beamed warp to fine-tune GSM within a reasonable range without redoing warp preparation. EPI cannot be adjusted this way since it is fixed once the warp is beamed at that specific end density. This asymmetry is why PPI is usually the parameter adjusted first when a sample comes back slightly off target GSM, while an EPI miss typically means the warp itself needs to be reprepared.
Why does the same construction number sometimes produce different GSM between two mills?
Loom tension settings, take-up mechanism calibration, humidity conditions on the shop floor, and finishing process parameters all vary between mills even when the quoted EPI, PPI, and yarn count are identical, and each of these variables shifts the actual yarn crimp and packing in the finished fabric. A construction number is a target specification, not a guaranteed outcome, which is why physically cutting and weighing a swatch remains the only fully reliable GSM check regardless of how carefully the theoretical calculation was performed. Mills sourcing the same construction from multiple suppliers should always request a physical swatch for weight verification rather than relying on the quoted construction number alone. Book a demo to see roll-level GSM verification tracked against target construction automatically.
Calculate it right before the warp goes on the beam — not after the roll comes off the loom.
iFactory ties EPI, PPI, yarn count, and cover factor together in one costing and quality view, checking calculated construction against real loom-floor output so a spec sheet and a finished fabric always agree. A 30-minute demo builds this against your current construction library.







