{
  "id": "fabric",
  "version": "ffa9ef6c94d8",
  "status": "published",
  "name": "Fabric Width Calculator",
  "question": "How much fabric at a different width?",
  "summary": "A fabric calculator that converts the yardage a pattern asks for at one fabric width into the length you need at another width, rounded up to the next 1/8 yard or 0.1 m.",
  "category": "everyday-life",
  "subcategory": "clothing",
  "url": "https://www.acalculator.org/everyday-life/fabric-calculator",
  "markdown": "https://www.acalculator.org/everyday-life/fabric-calculator.md",
  "kind": "function",
  "method": "Length needed = pattern length × pattern fabric width ÷ your fabric width × (1 + allowance ÷ 100).",
  "assumptions": [
    "The same area of fabric works at the new width; a layout with large pieces may need more.",
    "Widths are usable widths, selvage to selvage.",
    "The length is rounded up to the next 1/8 yard (or 0.1 m), as fabric is usually cut."
  ],
  "inputs": {
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "type": "object",
    "properties": {
      "len": {
        "title": "Pattern asks for",
        "description": "The length of fabric the pattern lists for its fabric width.",
        "type": [
          "number",
          "string"
        ],
        "x-quantity": "length",
        "minimum": 0.009144,
        "maximum": 914.4
      },
      "from": {
        "title": "Pattern fabric width",
        "description": "The fabric width the pattern’s length is for, often 45 in.",
        "type": [
          "number",
          "string"
        ],
        "x-quantity": "length",
        "minimum": 0.0254,
        "maximum": 25.4
      },
      "to": {
        "title": "Your fabric width",
        "description": "The usable width of the fabric you will buy, often 54 in or 60 in.",
        "type": [
          "number",
          "string"
        ],
        "x-quantity": "length",
        "minimum": 0.0254,
        "maximum": 25.4
      },
      "extra": {
        "title": "Extra allowance",
        "description": "An extra percent for shrinkage, a one-way print, or matching a pattern. Leave empty for none.",
        "type": "number",
        "x-unit": "percent",
        "minimum": 0,
        "maximum": 100
      }
    }
  },
  "outputs": {
    "need": {
      "label": "Fabric needed",
      "description": "Pattern length × pattern width ÷ your width, plus the allowance, before rounding.",
      "format": "quantity",
      "unit": "yd"
    },
    "buy": {
      "label": "Buy",
      "description": "The length rounded up to the next 1/8 yard, and to the next 0.1 meter.",
      "format": "text"
    },
    "yards": {
      "label": "Yards to buy",
      "description": "Rounded up to the next 1/8 yard.",
      "format": "number"
    },
    "meters": {
      "label": "Meters to buy",
      "description": "Rounded up to the next 0.1 meter.",
      "format": "number"
    },
    "area": {
      "label": "Fabric area",
      "description": "Pattern length × pattern width: the area both lengths cover.",
      "format": "quantity",
      "unit": "yd2"
    }
  },
  "defaultAnswer": {
    "inputs": {
      "len": 2.7432,
      "from": 1.143,
      "to": 1.524
    },
    "outputs": {
      "need": 2.0574,
      "buy": "2 1/4 yd (2.1 m)",
      "yards": 2.25,
      "meters": 2.1,
      "area": 3.1354776
    },
    "text": "At 60 in wide you need 2.25 yd: buy 2 1/4 yd (2.1 m)."
  },
  "examples": [
    {
      "given": {
        "len": 2.7432,
        "from": 1.143,
        "to": 1.524
      },
      "expect": {
        "need": 2.0574,
        "buy": "2 1/4 yd (2.1 m)",
        "yards": 2.25,
        "meters": 2.1
      },
      "source": "NIST Handbook 44 (2026), Appendix C, General Tables of Units of Measurement (1 yard = 36 inches; 1 inch = 2.54 centimeters exactly), https://www.nist.gov/document/2026-nist-handbook-44-appendix-c (retrieved 2026-10-03); hand calculation in content.mdx: 3 × 45 ÷ 60 = 2.25 yd = 2.0574 m"
    },
    {
      "given": {
        "len": 1.8288,
        "from": 1.524,
        "to": 1.143,
        "extra": 10
      },
      "expect": {
        "yards": 3,
        "meters": 2.7,
        "buy": "3 yd (2.7 m)"
      },
      "source": "NIST Handbook 44 (2026), Appendix C, General Tables of Units of Measurement (1 yard = 36 inches; 1 inch = 2.54 centimeters exactly), https://www.nist.gov/document/2026-nist-handbook-44-appendix-c (retrieved 2026-10-03); hand calculation in content.mdx: 2 × 60 ÷ 45 = 2.6667 yd × 1.1 = 2.9333 yd, up to 3 yd; 2.682 m, up to 2.7 m"
    },
    {
      "given": {
        "len": 1.5,
        "from": 1.4,
        "to": 1.1
      },
      "expect": {
        "need": 1.9090909090909087,
        "meters": 2,
        "buy": "2 1/8 yd (2.0 m)"
      },
      "source": "NIST Handbook 44 (2026), Appendix C, General Tables of Units of Measurement (1 yard = 36 inches; 1 inch = 2.54 centimeters exactly), https://www.nist.gov/document/2026-nist-handbook-44-appendix-c (retrieved 2026-10-03); hand calculation in content.mdx: 1.5 × 140 ÷ 110 = 1.909 m, up to 2.0 m; 2.088 yd, up to 2 1/8 yd"
    }
  ],
  "sources": [
    "NIST Handbook 44 (2026), Appendix C, General Tables of Units of Measurement (1 yard = 36 inches; 1 inch = 2.54 centimeters exactly). https://www.nist.gov/document/2026-nist-handbook-44-appendix-c (retrieved 2026-10-03)"
  ],
  "related": [
    "yardage",
    "quilt-backing",
    "quilt-binding"
  ],
  "changelog": []
}
