Fabric Calculator
Calculate how much fabric you need for sewing projects including curtains, quilts, upholstery, tablecloths, and clothing patterns.
Quick Presets:
Enter your project dimensions above to calculate fabric needed
Or choose a quick preset to get started
How to Use This Calculator
Select Project Type
Choose your sewing project — curtains, quilt, tablecloth, clothing, upholstery, or enter custom dimensions.
Enter Finished Dimensions
Type the desired finished width and length of your project in inches. For curtains, enter the window dimensions.
Choose Fabric Width
Select your fabric bolt width. Standard quilting cotton is 44-45 inches, home décor fabric is 54 inches, and knits are often 60 inches.
Add Allowances
Enter seam allowance, hem allowance, and pattern repeat (if applicable) to account for all cutting needs.
How We Calculate
This fabric calculator determines yardage by first computing the effective width needed (including fullness for curtains), then calculating how many fabric-width panels are required to cover that width. Each panel is measured at the cut length, which includes the finished length plus hem allowances, seam allowances, and rounding up to accommodate pattern repeats.
The formula is: Total Fabric = (Cut Length Per Panel × Number of Panels Across Width × Number of Pieces) ÷ 36 inches per yard. Pattern repeat adjustment rounds each panel's cut length up to the nearest full repeat, ensuring pattern alignment across seams. This is the standard method used by professional workrooms and recommended by fabric retailers including Joann Fabrics, Mood Fabrics, and the Sewing Workshop.
For curtain projects, the fullness ratio multiplies the window width to create the gathered or pleated look. Standard curtain fullness is 1.5-2x the window width for rod pocket and tab tops, and 2-2.5x for pinch pleats and goblet headers.
Sources & References
- Joann Fabrics — Fabric Yardage Estimator Guide (joann.com)
- Mood Fabrics — How to Calculate Fabric Yardage (moodfabrics.com)
- Singer Sewing — Fabric Measurement & Cutting Basics (singer.com)
Data last verified:
Frequently Asked Questions
Measure your window width and multiply by the fullness ratio (1.5x for standard fullness, 2x for full, 2.5x for luxury pleats). Divide by fabric width to get number of panels. Add 8-12 inches to the finished drop for top and bottom hems. If using patterned fabric, round each panel up to the nearest pattern repeat. For a 60-inch window at 2x fullness with 84-inch drop using 54-inch fabric, you need 3 panels at roughly 96 inches each = 8 yards.
Fabric widths vary by type. Quilting cotton is typically 44-45 inches wide. Home décor and upholstery fabrics are usually 54 inches. Apparel knits and fleece are often 58-60 inches. Wide quilt backing is 108 inches. Some specialty fabrics like tulle may be 108 inches wide, while silk charmeuse can be as narrow as 36 inches. Always check the bolt width before purchasing.
Add one full pattern repeat per panel after the first. If your pattern repeat is 12 inches and you need 3 panels, add 24 inches (2 extra repeats) to ensure alignment. For large repeats over 18 inches, buy an additional half-yard as insurance. Directional prints (one-way designs) may require even more fabric since every piece must be cut in the same direction.
Standard seam allowances vary by project: 5/8 inch (1.6 cm) is standard for garments and most sewing patterns, 1/4 inch (0.6 cm) is standard for quilting, and 1/2 inch is common for home décor projects. French seams and flat-felled seams require a wider initial allowance (typically 5/8 inch trimmed to 1/4 inch). Always check your pattern instructions for the specified allowance.
Quilt fabric needs depend on the pattern, but a general rule: a queen-size quilt (90×100 inches) needs approximately 8-9 yards of 44-inch fabric for the top, 8 yards for the backing (or 3 yards of 108-inch wide backing), and separate yardage for binding (about 3/4 yard). Quilt patterns with many small pieces require more fabric due to cutting waste. Always buy 10-15% extra for quilts.
Measure each surface to be covered (seat, back, arms, cushions) and add 4-6 inches per side for pulling and stapling. Convert to a cutting layout based on your fabric width. A standard dining chair needs 1.5-2 yards of 54-inch fabric. A sofa cushion cover needs 2-3 yards. A full sofa reupholstery typically requires 12-20 yards depending on the style and size.
Fullness refers to the ratio of fabric width to finished width, creating gathers, pleats, or draping. For curtains, 1.5x fullness is standard for casual tab-tops, 2x for classic rod-pocket or ring-top curtains, and 2.5x for formal pinch-pleat drapes. Table skirts typically use 2-3x fullness. Garment gathers usually specify 1.5-2x. Always multiply your finished width by the fullness ratio before calculating fabric needed.
Yes, prewashing is recommended for most natural fiber fabrics (cotton, linen, rayon) because they can shrink 2-5% on first wash. Cotton quilting fabrics may shrink up to 3% in length and 1-2% in width. Always buy extra yardage to account for shrinkage — add 5% to your calculated total. Prewashing also removes sizing that can affect sewing performance. Dry-clean-only fabrics and most synthetic fabrics do not need prewashing.
One yard equals 0.9144 meters, and one meter equals 1.0936 yards. For quick conversion: multiply yards by 0.9 to get approximate meters, or multiply meters by 1.1 to get approximate yards. Most US fabric stores sell by the yard, while European and many international stores sell by the meter. When following a pattern from another country, always convert before purchasing.
This calculator includes a waste estimate based on the difference between the fabric purchased and the finished dimensions needed. As a general rule, expect 10-15% waste for simple rectangular projects (curtains, tablecloths) and 20-30% waste for garments with curved pattern pieces. Irregularly shaped upholstery projects can have 30-40% waste. Buying a little extra is always cheaper than running short mid-project.
ToolSite Team
We build free, accurate calculators.