This cheerful cactus keeps plastic grocery bags tidy. You push bags in from the bottom and pull them out one at a time through the cuffed opening. It hangs from a peg or hook and looks like a potted saguaro that has just bloomed.
The holder is worked in deep emerald green, with a coral-pink flower and a sunny yellow center near the top. Raised front-post ribs run the full length of the body. Two plump arms stick out at different heights to give it the classic cactus shape.
This pattern uses US crochet terms. The finished holder measures about 6 in (15.2 cm) wide laid flat and 18 in (45.7 cm) long, not counting the strap. With the arms, it measures about 10 in (25.4 cm) wide.
You work the body from the top down in joined rounds: first a domed top, then the ribbed tube, a gentle taper and a single crochet cuff. The arms, flower and hanging strap are made separately and sewn on before the cuff is worked.
Finished Size and Construction
- Finished size: 6 in (15.2 cm) wide flat × 18 in (45.7 cm) long; 10 in (25.4 cm) wide with arms
- Skill level: Intermediate (front post stitches, short rows)
- Terminology: US
- Yarn weight: Worsted (#4) cotton or cotton blend
- Hook: 5.0 mm (H-8)
- Number of pieces: One holder made of 5 parts: body, 2 arms, flower and strap
- Layout: Arms on the sides at different heights, flower on the upper front, strap at top center
- Body size before cuff: 6 in (15.2 cm) flat × 17 in (43.2 cm) long
- Cuff (border) depth: 1 in (2.5 cm)
Materials
Use cotton or a cotton-acrylic blend. It keeps the ribs crisp and won’t sag when the holder is full of bags. Avoid fuzzy or very soft yarns, because the ribs will blur.
- Emerald green: 150 g, about 270 m (295 yd)
- Coral pink: 5 g, about 9 m (10 yd)
- Yellow: 2 g, about 3 m (3 yd)
Tools:
- 5.0 mm (H-8) crochet hook
- Tapestry needle
- 4 locking stitch markers
- A small handful of polyester fiberfill
- Straight pins
- Measuring tape
These quantities include about 15% extra for swatching and differences in tension.
Abbreviations (US Terms)
- ch: chain
- sl st: slip stitch
- sc: single crochet
- hdc: half double crochet
- dc: double crochet
- hdc2tog: half double crochet 2 together
- BLO: back loop only
- MR: magic ring
- st(s): stitch(es)
- rep: repeat
Special stitch: FPdc (front post double crochet). Yarn over and insert the hook from front to back to front around the post of the stitch in the round below. Yarn over and pull up a loop, then (yarn over, pull through 2) twice. Always skip the stitch behind the FPdc. Each FPdc counts as 1 stitch.
Joining rounds: Unless the pattern says otherwise, join each round with a sl st to the first stitch, then ch 1. This ch 1 does not count as a stitch. Joined rounds keep the ribs straight up and down.
Gauge and Checkpoints
Gauge: 14 sts and 10 rounds = 4 in (10.2 cm) in the rib pattern (FPdc, hdc, hdc).
Use Rounds 1–10 of the body as your test piece. The dome works as the swatch, so you can keep going if it measures correctly.
- After Round 6: The circle is about 3.8 in (9.7 cm) across and cups slightly.
- After Round 10: The flattened tube is 6 in (15.2 cm) wide, half of its 12 in (30.5 cm) circumference.
- After Round 42: About 16.2 in (41.1 cm) from the top of the dome.
- After Round 44: About 17 in (43.2 cm).
- After the cuff: 18 in (45.7 cm).
Too big? Go down to a 4.5 mm hook. Too small? Go up to 5.5 mm. Change the hook, not the stitch counts. All the math depends on having 42 stitches around.

Body
Use emerald green. The body is worked from the closed top down.
Round 1: MR, ch 1, 7 hdc in ring, join. (7 sts)
Round 2: 2 hdc in each st around, join. (14 sts)
Round 3: *Hdc in next st, 2 hdc in next st; rep from * 6 more times, join. (21 sts)
Round 4: *Hdc in next 2 sts, 2 hdc in next st; rep from * 6 more times, join. (28 sts)
Round 5: *Hdc in next 3 sts, 2 hdc in next st; rep from * 6 more times, join. (35 sts)
Round 6: *Hdc in next 4 sts, 2 hdc in next st; rep from * 6 more times, join. (42 sts)
With only 7 increases per round, the circle cups into a gentle dome instead of lying flat. This gives the cactus its rounded top.
Round 7: Hdc in each st around, join. (42 sts)
This plain round turns the dome down into the tube. It also gives you posts for the first ribs.
Round 8 (rib set-up): *FPdc around next st, hdc in next 2 sts; rep from * 13 more times, join. (42 sts: 14 FPdc + 28 hdc)
Rounds 9–42: *FPdc around the FPdc below, hdc in next 2 sts; rep from * 13 more times, join. (42 sts each round)
The 14 ribs show as 7 on each side when the tube is flat. Rounds 7–42 are 36 rounds, which add 14.4 in (36.6 cm) of tube below the dome.
Round 43 (taper): *FPdc around the FPdc below, hdc2tog over next 2 sts; rep from * 13 more times, join. (28 sts: 14 FPdc + 14 hdc2tog)
This round reduces the count. Each of the 14 ribs gets 1 FPdc, and each hdc2tog uses up 2 hdc, so 14 + 14 = 28 sts. The ribs stay where they are; only the spaces between them get narrower.
Round 44: *FPdc around the FPdc below, hdc in next st; rep from * 13 more times, join. (28 sts)
Checkpoint: The body measures about 17 in (43.2 cm) from the top of the dome. Do not fasten off. Put the live loop on a locking marker and set the body aside.
Arms (Make 2)
Use emerald green. Each arm starts at the rounded tip.
Round 1: MR, ch 1, 6 sc in ring, join. (6 sts)
Round 2: 2 sc in each st around, join. (12 sts)
Round 3: *Sc in next st, 2 sc in next st; rep from * 5 more times, join. (18 sts)
Round 4: Hdc in each st around, join. (18 sts)
Round 5: *FPdc around next st, hdc in next 2 sts; rep from * 5 more times, join. (18 sts: 6 FPdc + 12 hdc)
Rounds 6–11: *FPdc around the FPdc below, hdc in next 2 sts; rep from * 5 more times, join. (18 sts each round)
The upright part of the arm now measures about 4.1 in (10.4 cm). Stuff it lightly.
Rows 12–15 (elbow short rows): Ch 1, turn, hdc in next 9 sts only, leaving the rest unworked. (9 sts each row)
These rows build up only one side of the tube, which bends it into an L.
Round 16: Ch 1. With the right side facing, hdc in the 9 sts of Row 15, then hdc in the 9 unworked sts of Round 11, join. (18 sts)
Rounds 17–19: Hdc in each st around, join. (18 sts)
Fasten off, leaving a 12 in (30.5 cm) tail for sewing. Stuff the bend lightly and use the tail to close any small gaps at the ends of the short rows. Flatten the open end into an oval about 2.6 in (6.6 cm) long. Each arm stands about 4.6 in (11.7 cm) tall, and the sideways part sticks out about 2 in (5.1 cm).
Flower
Round 1 (yellow): MR, ch 1, 5 sc in ring, pull the ring tight, join with pink. (5 sts)
Round 2 (pink): Ch 1, 2 sc in each st around, join. (10 sts)
Round 3: *(Hdc, 3 dc, hdc) in next st, sl st in next st; rep from * 4 more times, join. (5 petals)
Fasten off, leaving a 10 in (25.4 cm) tail. The flower is about 2.25 in (5.7 cm) across, with a small raised yellow center and 5 rounded petals.
Hanging Strap
Use emerald green.
Row 1: Ch 36, sc in 2nd ch from hook and in each ch across. (35 sc)
Row 2: Ch 1, turn, sl st in each st across. (35 sl sts)
The slip stitch row makes the strap firm and gives it a chain-like texture. The strap is about 8.75 in (22.2 cm) long. Fasten off, leaving long tails at both ends.
Assembly
- Flatten the body so 7 ribs face front and the round joins are at center back.
- Left arm: Pin the open end to the left side so its top edge is 7 in (17.8 cm) below the top of the dome, with the tip pointing up.
- Right arm: Pin it to the right side so its top edge is 5.5 in (14.0 cm) below the top, with the tip pointing up.
- Whipstitch all the way around each arm’s open end. Sew only through the outer wall of the body so the inside of the tube stays open.
- Flower: Center it over the 3rd and 4th ribs from the left, about 2 in (5.1 cm) below the top. Sew around the yellow center, then tack down each petal tip.
- Strap: Sew the ends to Round 4, about 1.5 in (3.8 cm) apart on either side of the center, so the strap forms an upside-down V.
Cuff (Border)
Put the live loop from Round 44 back on your hook.
Border gauge: 16 sc = 4 in (10.2 cm). Single crochet is narrower than the rib pattern, so the cuff pulls the opening in slightly.
Round 45: Ch 1, sc in BLO of each st around, join. (28 sts)
Rounds 46–47: Ch 1, sc in each st around, join. (28 sts)
Round 48: Sl st loosely in each st around. (28 sts)
Fasten off and weave in the end.
Why the math works: 28 sc at 4 sc per inch makes the opening 7 in (17.8 cm) around, or 3.5 in (8.9 cm) wide laid flat. That holds the bags in but leaves room to pull one out with two fingers. The BLO round makes a crisp ridge where the ribs end. The slip stitch round firms up the edge so it rolls slightly outward instead of stretching. The 4 cuff rounds add 1 in (2.5 cm), bringing the length to 18 in (45.7 cm).
Final Blocking
- Lightly mist the body with water.
- Slide a rolled towel inside the tube to hold it round.
- Straighten the ribs with your fingers so they run straight down from the dome to the cuff.
- Shape the dome by cupping it over your palm.
- Pin the cuff so it rolls evenly all the way around.
- Let it dry completely, then remove the towel.
- Reshape the stuffed arms by hand only. Do not use heat.
Final Quality-Control Checklist
- [ ] The body is 6 in (15.2 cm) wide flat and 18 in (45.7 cm) long
- [ ] All 14 ribs run straight and unbroken from Round 8 to Round 44
- [ ] Round 43 has 28 sts and kept every rib
- [ ] The cuff opening is 3.5 in (8.9 cm) wide flat
- [ ] The arms are at different heights, tips point up, and the seams are secure
- [ ] The flower is sewn down at the center and at each petal tip
- [ ] Both strap ends are firmly attached
- [ ] All yarn ends are woven in
Troubleshooting
Ribs lean or spiral: You are working in a spiral. Join every round and start each round in the same stitch.
Dome is flat or ruffled: Count the increases. Rounds 2–6 need exactly 7 each.
Ribs look faint: Work each FPdc around the post of the FPdc below, not into the top of a stitch.
Arm bend is too sharp: Work 2 short rows instead of 4.
Opening is too tight: Work Round 48 with a 5.5 mm hook.
Body stretches when full: Use a firmer cotton or a 4.5 mm hook.
Care
Hand wash in cool water and lay flat to dry, straightening the ribs while damp. Don’t tumble dry, or the arms may lose their shape.

Final Notes
All the measurements come from one number: 42 stitches at 14 stitches per 4 in (10.2 cm). That makes the tube 12 in (30.5 cm) around and 6 in (15.2 cm) wide flat. The dome and 36 tube rounds bring the body to 16.2 in (41.1 cm), and the taper brings it to 28 stitches and 17 in (43.2 cm). The 1 in (2.5 cm) cuff finishes the holder at 18 in (45.7 cm) long with a 7 in (17.8 cm) opening. If you match each checkpoint, your cactus will come out the right size.
Happy crocheting!