How to Calculate Fabric for Box Cushions: Step-by-Step

Updated: May 26, 2026

What Is a Box Cushion?

A box cushion has a top panel, a bottom panel, and a boxing strip running around all four sides. The boxing strip gives the cushion a defined depth and straight sides — it “boxes” the cushion into shape.

This is the standard construction for:

  • Sofa and armchair seat cushions
  • Outdoor chair and bench cushions
  • Window seat cushions
  • Any cushion where depth and a tailored edge matter

The 6 Pieces of a Box Cushion

  1. Top panel (×1)
  2. Bottom panel (×1) — same size as top
  3. Long boxing strip (×2) — runs along the length sides
  4. Short boxing strip (×2) — runs along the width sides

For a cushion with a zipper, the bottom panel is cut as two pieces (or one boxing strip is split) — see below.


Step 1: Calculate Panel Dimensions

Panel cut width  = finished width  + (2 × seam allowance)
Panel cut length = finished length + (2 × seam allowance)
Cut 2 panels (top and bottom).

Standard seam allowance: ½” (0.5”). Add ½” to each side = 1” total per dimension.

Example: Cushion 24” wide × 24” long:

Panel cut = 24 + 1 = 25" wide × 25" long

Step 2: Calculate Boxing Strip Dimensions

Long boxing strip: cut width = finished length + 2s
                  cut height = finished thickness + 2s
                  (cut 2 of these)

Short boxing strip: cut width = finished width + 2s
                   cut height = finished thickness + 2s
                   (cut 2 of these)

Example: 24” × 24” cushion, 4” thick, ½” seam:

Long boxing:  25" wide × 5" tall  (cut 2)
Short boxing: 25" wide × 5" tall  (cut 2)

In this case, all boxing strips are the same because the cushion is square (W = L). For rectangular cushions, long and short boxing strips will have different widths.

Rectangular example: 20” × 48” bench cushion, 3” thick, ½” seam

Panel:        21" × 49"  (cut 2)
Long boxing:  49" × 4"   (cut 2) — runs along 48" length
Short boxing: 21" × 4"   (cut 2) — runs along 20" width

Step 3: Add a Zipper (Optional)

For a zipper closure, replace one long boxing strip with two overlapping pieces. The zipper is hidden inside the boxing strip.

Zipper boxing strip (×2):
  Cut width  = (finished length ÷ 2) + 1.5" overlap + 2s
  Cut height = finished thickness + 2s

Example: 48” bench cushion, zipper in back boxing, ½” seam:

Each zipper half = (48 ÷ 2) + 1.5 + 1 = 26.5" wide × 4" tall
(cut 2 of these instead of 1× 49" strip)

The total fabric used is nearly identical — the two half-strips together are only slightly more than one full strip.


Step 4: Lay Out on Fabric

With all piece dimensions calculated, arrange them on your fabric width to find the total running length needed.

Rule: Always stack sections

  1. Panel section: How many panels fit across the fabric width?

    • Panels across = ⌊ fabric width ÷ panel cut width ⌋
    • Running length for panels = ⌈ 2 ÷ panels across ⌉ × panel cut length
  2. Long boxing section: How many long strips fit across?

    • Running length = ⌈ 2 ÷ ⌊ fw ÷ long boxing width ⌋ ⌉ × boxing height
  3. Short boxing section: Same approach

    • Running length = ⌈ 2 ÷ ⌊ fw ÷ short boxing width ⌋ ⌉ × boxing height
  4. Total running length = sum of all sections

Layout example: 24”×24”×4” cushion, 54” fabric

PANELS:
  Panel cut = 25" × 25"
  Panels across 54": ⌊ 54 ÷ 25 ⌋ = 2  (both fit: 25+25=50 < 54)
  Panel running: 1 row × 25" = 25"

LONG BOXING:
  Long strip = 25" × 5"
  Strips across: ⌊ 54 ÷ 25 ⌋ = 2  (both fit)
  Long running: 1 row × 5" = 5"

SHORT BOXING:
  Short strip = 25" × 5"
  Strips across: ⌊ 54 ÷ 25 ⌋ = 2  (both fit)
  Short running: 1 row × 5" = 5"

TOTAL: 25 + 5 + 5 = 35" = 0.97 yards
Order: 1.25 yards (add 10% safety + rounding)

Layout example: 20”×48”×3” bench cushion, 54” fabric

PANELS:
  Panel cut = 21" × 49"
  Panels across 54": ⌊ 54 ÷ 21 ⌋ = 2
  Panel running: 1 row × 49" = 49"

LONG BOXING:
  Long strip = 49" × 4"
  Strips across 54": ⌊ 54 ÷ 49 ⌋ = 1  (49 < 54, but 49×2=98 > 54 — only 1 per row)
  Long running: 2 rows × 4" = 8"

SHORT BOXING:
  Short strip = 21" × 4"
  Strips across: ⌊ 54 ÷ 21 ⌋ = 2
  Short running: 1 row × 4" = 4"

TOTAL: 49 + 8 + 4 = 61" = 1.69 yards
Order: 2 yards

Step 5: Multiple Cushions

For n cushions, multiply the total widths per section by n before calculating rows:

Panels rows = ⌈ (2 × n) ÷ panels across ⌉
Long boxing rows = ⌈ (2 × n) ÷ long strips across ⌉
Short boxing rows = ⌈ (2 × n) ÷ short strips across ⌉

Example: 3× 24”×24”×4” cushions, 54” fabric:

Panels: ⌈ (2×3) ÷ 2 ⌉ = 3 rows × 25" = 75"
Long:   ⌈ (2×3) ÷ 2 ⌉ = 3 rows × 5"  = 15"
Short:  ⌈ (2×3) ÷ 2 ⌉ = 3 rows × 5"  = 15"
Total: 105" = 2.9 yards → order 3.25 yards

For a full sofa set including back cushions and pattern repeat allowance, see How Much Fabric for Sofa Cushions.


Use the Cushion Fabric Calculator to run all these steps automatically for your dimensions.

See also: Cushion Fabric Formulas and How to Add Piping to Cushions.

References & Sources

  1. [1] Sailrite — Box Cushion Construction Video and Guide (opens in new tab)
  2. [2] HGTV — How to Make a Box Cushion (opens in new tab)
  3. [3] Joann Fabrics — Cushion Making Tutorials (opens in new tab)