This curtain panel brings back the classic pineapple lace of vintage doilies, stretched into tall, slim strips that let the light pour through. Each strip carries a column of seven pineapples: an open mesh cone, a band of rounded shells, and a fanned crown of leaves, all held inside a crisp solid frame.
The panel uses two colors. Two deep burgundy strips sit on the outside and one soft cream strip sits in the center, linked by short cream chain bars that leave narrow open “ladders” between them. A slim burgundy border ties the three strips into one panel. Make two panels for a classic pair, as shown hanging on the rod.
The pattern is written in US crochet terms. One finished panel measures 21.5 in x 63.15 in (54.6 cm x 160.4 cm) after blocking.
Construction is simple. Each strip is worked in rows from the bottom up as a filet-style lace, using solid blocks, open spaces, long open bars, and one row of shells per motif. Every strip gets one round of single crochet edging. The cream strip is edged last and joined to both burgundy strips as you go. Two border rounds finish the panel.
Finished Size and Construction
- Finished panel size: 21.5 in x 63.15 in (54.6 cm x 160.4 cm)
- Skill level: Intermediate
- Terminology: US crochet terms
- Yarn weight: Sport weight (#2) mercerized cotton
- Hook: 3.0 mm
- Number of pieces: 3 strips per panel (2 burgundy, 1 cream)
- Layout: 3 strips side by side, 1 row high: burgundy, cream, burgundy
- Strip size before edging: 6.25 in x 62.4 in (15.9 cm x 158.5 cm)
- Strip size after edging: 6.5 in x 62.65 in (16.5 cm x 159.1 cm)
- Gap between strips: 0.75 in (1.9 cm)
- Panel size before border: 21.0 in x 62.65 in (53.3 cm x 159.1 cm)
- Border depth: 0.25 in (0.6 cm) on each side
Materials
Choose a smooth, mercerized cotton in sport weight. Mercerized cotton shows lace stitches clearly, holds its shape in a sunny window, and resists fuzzing. Avoid acrylic, which tends to stretch when hung at this length.
Yarn for one panel:
- Burgundy: 200 g, about 620 m (678 yd), for two strips, their edging, and the border
- Cream: 100 g, about 310 m (339 yd), for one strip, its edging, and the join bars
Double these amounts for a pair of panels. All quantities include a margin of roughly 15 percent for gauge swatches and differences in tension.
Tools:
- 3.0 mm crochet hook
- Tapestry needle
- Locking stitch markers (at least 10)
- Tape measure
- Rust-proof pins and a large blocking surface (a bed covered with towels works well)
- Spray bottle
- 6 clip-style curtain rings per panel
Abbreviations (US Terms)
- ch – chain
- sc – single crochet
- dc – double crochet
- sl st – slip stitch
- sk – skip
- st(s) – stitch(es)
- sp – space
- RS – right side
Special cells (filet style): Every lace row is built from cells. Each cell is 3 sts wide and ends in a dc called a “post.”
- B (block): dc in next 2 sts, dc in next st. 3 sts.
- S (space): ch 2, sk 2 sts, dc in next st. 3 sts.
- Bar2: ch 5, sk 5 sts, dc in next st. Covers 2 cells, 6 sts.
- Bar3: ch 8, sk 8 sts, dc in next st. Covers 3 cells, 9 sts.
- Bar4: ch 11, sk 11 sts, dc in next st. Covers 4 cells, 12 sts.
Every chain counts as a stitch. When a cell sits over a space or bar, work the dc into the chain stitches below, one dc per chain.
Row frame: Every lace row begins with “ch 3 (counts as dc), dc in next 2 sts” and ends with “dc in last 2 sts” (the last dc goes into the top of the turning ch). This makes a 3-st solid edge column on each side. The third dc of the start is the first post. Every row has 3 + 30 + 2 = 35 sts.
Gauge and Checkpoints
Gauge: 28 dc and 10 rows = 5 in wide x 4 in tall (12.7 cm x 10.2 cm) after a light blocking. That is 5.6 sts per inch and 0.4 in (1.0 cm) per row.
Test with one strip before buying yarn for the full set. Work Row 1 and the first full motif, then lightly steam or pin it flat and measure.
Checkpoints:
- After Row 1: width 6.25 in (15.9 cm).
- After Row 23 (Row 1 + one motif): height 9.2 in (23.4 cm). One motif alone is 8.8 in (22.4 cm).
- After Row 89 (Row 1 + four motifs): height 35.6 in (90.4 cm).
- After Row 156: 6.25 in x 62.4 in (15.9 cm x 158.5 cm).
- After edging: 6.5 in x 62.65 in (16.5 cm x 159.1 cm).
If your strip is too wide or the motif is too tall, go down to a 2.75 mm hook. If it is too narrow or too short, go up to a 3.25 mm hook. If only the height is off, change how far you pull up each dc loop rather than changing the hook. A small difference grows fast over 156 rows, so fix it now.

Strip Pattern (make 2 burgundy, 1 cream)
Foundation
Row 1 (RS): Ch 37, dc in 4th ch from hook (the skipped 3 ch count as a dc) and in each ch across. Turn. (35 sts)
Pineapple Motif (Rows 2-23, repeated)
The motif is 22 rows. Each row below lists its 10 cells between the row frame. Every row ends with 35 sts.
Cone (motif rows 1-10):
- Rows 1-2: Bar4, B, B, Bar4. This is the solid cone tip.
- Rows 3-4: Bar3, B, S, S, B, Bar3.
- Rows 5-6: Bar2, B, S, S, S, S, B, Bar2.
- Rows 7-8: S, B, S, S, S, S, S, S, B, S.
- Rows 9-10: B, S, S, S, S, S, S, S, S, B.
The cone widens by one cell on each side every 2 rows. The B cells form the solid outline, the S cells form the open mesh inside, and the bars leave the airy background beside the frame.
Shell band (motif rows 11-14):
- Row 11: B in all 10 cells. (35 sts, all solid)
- Row 12: Work the row frame start, then (ch 5, sk 5 sts, dc in next st) 5 times, then the row frame end. This makes 5 arches, each 2 cells wide. (35 sts)
- Row 13: Work the row frame start, then (5 dc in next ch-5 sp, dc in next dc) 5 times, then the row frame end. This makes 5 rounded shells. (5 x 6 = 30 shell sts + 5 frame sts = 35 sts)
- Row 14: S in all 10 cells.
Crown (motif rows 15-22):
- Row 15: Bar4, B, B, Bar4. This is the center stem.
- Row 16: Bar3, B, B, B, B, Bar3.
- Row 17: Bar2, B, S, B, B, S, B, Bar2.
- Row 18: S, B, S, B, S, S, B, S, B, S.
- Rows 19-20: B, S, B, S, B, B, S, B, S, B.
- Row 21: S, B, S, B, S, S, B, S, B, S.
- Row 22: S in all 10 cells.
The B cells step outward from the stem, so the crown fans open like leaves. Row 22 leaves a clean open line under the next cone tip.
Rows 2-155: Work motif rows 1-22 a total of 7 times (7 x 22 = 154 rows). Place a marker at the end of each completed motif to keep count.
Top Row
Row 156: Work the row frame start, B in all 10 cells, then the row frame end. (35 sts) Fasten off.
Total rows: 1 + 154 + 1 = 156 rows, and 156 x 0.4 in = 62.4 in (158.5 cm).
Strip Edging
Work in the strip’s own color. With RS facing, join yarn in the top right corner st.
Edging Round: Work around all four sides as follows. Along the top and bottom, sc in each st. Along the long sides, work 2 sc in the side of each row (around the dc post or turning ch). Work 3 sc in each corner st. Join with sl st to first sc.
Counts per side (each includes both corner sts, which are the middle sc of each 3-sc group):
- Top and bottom: 35 existing sts worked 1 per st + 2 extra at the corners = 37 sts
- Long sides: 156 rows x 2 = 312 row-end sc + 2 corner sts + 2 corner-group sts = 316 sts
- Round total: 2 x 37 + 2 x 316 – 4 shared corners = 702 sts
Edge both burgundy strips this way and fasten off. Do not edge the cream strip yet.
Make All Pieces
For one panel:
- Burgundy: 2 strips, fully edged
- Cream: 1 strip, with its edging worked during joining
Layout (as seen from the RS):
| Burgundy | Cream | Burgundy |
| Strip 1 | Strip 2 | Strip 3 |
Lay the strips out with all foundation rows at the bottom so the pineapples point the same way.
Joining
The cream strip’s edging round joins it to both burgundy strips as you go. This creates the cream ladder bars.
Numbering the long sides: Count the 316 sts of each long side from the top corner st (position 1) to the bottom corner st (position 316). The join positions are 10, 19, 28, and every 9th st after that, up to 307. That makes 34 bars per seam. Mark every fourth join position on the burgundy strips to stay aligned.
Because 10 + 307 = 317 = 316 + 1, the join positions are symmetrical. They match whether you count from the top or the bottom, so the bars always land straight across.
Cream Edging Round with Join: Work the edging round exactly as written for the strips. Each time you complete the sc at a join position along a long side, ch 2, sl st into the matching position on the neighboring burgundy strip, ch 2, then continue the edging in the next st. Join to Strip 3 along the cream strip’s right side and to Strip 1 along its left side. Leave the 4 corner positions free.
The bar chains do not count as edging sts. The cream strip still has 37 sts on top and bottom, 316 on each long side, and 702 in total.
Tension: Keep the ch 2 + sl st + ch 2 bars relaxed but even. Every bar should span 0.75 in (1.9 cm). Bars that are too tight pull the strips into gathers, and bars that are too loose make the panel sag in the middle. Joins are 9 sc apart, which is 1.8 in (4.6 cm).
Size checkpoint: Lay the joined panel flat. It should measure 3 x 6.5 in + 2 x 0.75 in = 21.0 in wide by 62.65 in long (53.3 cm x 159.1 cm).
Border
Border gauge: Each sc round adds 1/8 in (0.3 cm) to every edge. Two rounds add 0.25 in (0.6 cm) per side.
Work in burgundy. Join yarn in the top right corner st of Strip 3.
Round 1: Work 3 sc in each of the 4 outer corner sts. Along the top and bottom, sc in each st of each strip. At each gap, sc in the inner corner st of one strip, ch 4 across the gap, then sc in the inner corner st of the next strip. Along the 2 outer long sides, sc in each st. Join with sl st.
- Top and bottom: base sts = 3 strips x 37 sts + 2 gaps x 4 ch = 111 + 8 = 119 sts. Round 1 count per side = 119 worked 1 per st + 2 extra at the corners = 121 sts.
- Long sides: 316 worked 1 per st + 2 extra at the corners = 318 sts.
- Round total: 2 x 121 + 2 x 318 – 4 = 874 sts
Round 2: Sc in each st around, working 3 sc in each corner st (the middle sc of each corner group). Join with sl st and fasten off.
- Top and bottom: 121 worked 1 per st + 2 extra at the corners = 123 sts
- Long sides: 318 worked 1 per st + 2 extra at the corners = 320 sts
- Round total: 2 x 123 + 2 x 320 – 4 = 882 sts
Why the math works: The top edge starts with exactly 3 strips x 37 sts per strip. The only extra stitches at the seams are the 8 bridge chains, which are shown separately. Each strip’s 37 already includes its own corners, so nothing is counted twice. Each round grows by only 2 sts per side at the corners, which keeps the corners square without ruffling the edges.
Final panel size: 21.0 + 0.5 = 21.5 in wide and 62.65 + 0.5 = 63.15 in long (54.6 cm x 160.4 cm).
Final Blocking
- Weave in all ends along the solid edge columns, not through the lace.
- Soak the panel in cool water with a drop of mild soap for 15 minutes.
- Press the water out gently in a towel. Do not wring.
- Lay the panel flat and pin the outer border to 21.5 in x 63.15 in (54.6 cm x 160.4 cm).
- Pin each ladder gap open to 0.75 in (1.9 cm), checking every few bars.
- Pin the shell scallops round, and open the mesh squares of each cone with your fingers.
- Let it dry completely, for at least 24 hours.
- Clip 6 rings along the top, one at each outer top corner of each strip.
Final Quality-Control Checklist
- Every strip has 35 sts per row and 156 rows.
- All seven pineapples on each strip point down, with the crown at the top.
- Strip edging counts are 37 / 316 / 37 / 316.
- Each seam has 34 cream bars, all straight across.
- Border Round 2 has 123 sts on the top and bottom and 320 on each long side.
- The panel measures 21.5 in x 63.15 in (54.6 cm x 160.4 cm).
- All ends are hidden in solid areas.
Troubleshooting
- Bars sag or twist: Chain more firmly, and check that the end dc of each bar lands in the post directly below.
- Strip width creeps up: Count to 35 every few rows. An extra dc in the frame is the usual cause.
- Shells cup: Work exactly 5 dc per arch. If the shells still cup, use a 3.25 mm hook for Row 13 only.
- Strips are different lengths: Measure each strip at the motif markers, and block to the shorter length before joining.
- Ladder bars slant: Recount the join positions. One strip is probably off by a stitch.
- Panel curls at the border: Loosen your border tension, or check for missing corner increases.
Care
Hand wash in cool water and dry flat, reshaping the gaps and shells. If needed, mercerized cotton can take a cool iron through a pressing cloth.

Final Notes
Here is the full measurement chain. 35 sts make a 6.25 in (15.9 cm) strip, and 156 rows make 62.4 in (158.5 cm). One edging round brings each strip to 6.5 in x 62.65 in (16.5 cm x 159.1 cm). Three strips plus two 0.75 in (1.9 cm) gaps make 21.0 in (53.3 cm). The 0.25 in (0.6 cm) border finishes the panel at 21.5 in x 63.15 in (54.6 cm x 160.4 cm). Check your gauge early and keep your counts steady, and your pineapples will line up beautifully in the window.
Happy crocheting!