This hanging grocery bag holder is a tall, gently tapered tube of fan lace. The shells are groups of five double crochets, stacked in offset rounds, and the gaps between them form small triangular windows. It looks light and decorative on the wall, but it holds a good bundle of plastic bags.
The sample is worked in soft coral cotton, and the same pattern works well in denim blue for a second holder. The style is relaxed farmhouse: solid cotton, an open texture, and a slim rounded shape that narrows at both ends.
The pattern uses US crochet terms. The finished holder is about 16 in (40.6 cm) tall from the bottom opening to the top rim, with a body circumference of 15 in (38.1 cm). The strap adds a loop about 3 in (7.6 cm) high, so the overall hanging length is about 19 in (48.3 cm).
The holder is made in one seamless piece. You start at the small bottom opening with a solid single crochet band, then increase in double crochet to widen the base. Next you work 16 rounds of offset shells. Two decrease rounds narrow the top, a single crochet rim firms the edge, and a short strap is worked directly off the rim and stitched to the opposite side.
Finished Size and Construction
- Finished size: about 16 in (40.6 cm) tall, 15 in (38.1 cm) body circumference
- Overall length with strap: about 19 in (48.3 cm)
- Skill level: Easy-intermediate
- Terminology: US
- Yarn weight: Worsted (#4) cotton
- Hook: 5 mm (H-8)
- Number of pieces: 1 (strap worked onto the rim)
- Layout: Single tube worked in joined rounds, bottom to top
- Bottom opening: 6 in (15.2 cm) circumference
- Top opening: 9 in (22.9 cm) circumference
- Height before rim and strap: about 15 3/8 in (39.1 cm)
- Rim depth: about 1/2 in (1.3 cm), 2 rounds of sc
Materials
Yarn: Choose a smooth worsted-weight yarn in 100% cotton or a cotton blend. Cotton keeps the shells crisp and stops the holder from stretching out of shape when it is full. Avoid very fuzzy or stretchy acrylic, which lets the bottom opening sag.
- Coral (main color): 150 g, about 275 m
- Denim Blue (optional second colorway): 150 g, about 275 m, if you want a matching pair
One holder uses about 120 g. The amounts above include extra for your gauge check and small tension differences.
Tools:
- 5 mm (H-8) crochet hook
- Locking stitch markers (at least 3)
- Tapestry needle
- Scissors
- Measuring tape
- Spray bottle and pins for blocking
Abbreviations (US Terms)
- ch – chain
- sl st – slip stitch
- sc – single crochet
- dc – double crochet
- dc2tog – double crochet 2 together
- st(s) – stitch(es)
- rnd(s) – round(s)
- rep – repeat
Special stitch – Shell: 5 dc in the same stitch. The center dc of a shell is its 3rd dc.
Note: The beginning ch-3 counts as a dc throughout. The beginning ch-1 never counts as a stitch.
Gauge and Checkpoints
Gauge:
- 16 sc and 18 rnds = 4 in (10.2 cm)
- In shell pattern, 2 repeats (12 sts) = 3 in (7.6 cm), and 4 shell rnds = 3 in (7.6 cm)
Use the bottom band and the base increases (Rnds 1–7) as your test piece. They take very little yarn and tell you everything you need to know.
Checkpoints:
- After Rnd 4: the band measures 6 in (15.2 cm) around and about 7/8 in (2.2 cm) tall.
- After Rnd 7: the base measures 15 in (38.1 cm) around, and total height is about 2 3/8 in (6.0 cm).
- After Rnd 23: the shell section adds 12 in (30.5 cm), for a total height of about 14 3/8 in (36.5 cm).
- After Rnd 25: total height is about 15 3/8 in (39.1 cm).
- After Rnd 27: total height is about 16 in (40.6 cm), and the top opening measures 9 in (22.9 cm) around.
If your piece is too big: go down to a 4.5 mm hook and start again. A loose bottom band lets bags fall out on their own.
If your piece is too small: go up to a 5.5 mm hook. A tight body makes bags hard to push in and pull out.
Don’t add or remove stitches to fix gauge. The shell pattern needs a multiple of 6 stitches, and the increases and decreases are built around counts of 24, 60 and 36.

Pattern
Bottom Band
Rnd 1: Ch 24, sl st to the first ch to form a ring without twisting. Ch 1, sc in each ch around, sl st to first sc. (24 sc)
Rnds 2–4: Ch 1, sc in each st around, sl st to first sc. (24 sc)
The band should be firm. It forms the hole the bags come out of, and it has to grip lightly so the next bag stays in place after you pull one out.
Base Increases
These three rounds widen the tube in a smooth cone, which gives the holder its rounded lower end.
Rnd 5: Ch 3, 2 dc in next st, dc in next st, 2 dc in next st; rep from * 10 more times, sl st to top of ch-3. (36 dc: 12 repeats of 3)
Rnd 6: Ch 3, dc in next st, 2 dc in next st, dc in next 2 sts, 2 dc in next st; rep from * 10 more times, sl st to top of ch-3. (48 dc: 12 repeats of 4)
Rnd 7: Ch 3, dc in next 2 sts, 2 dc in next st, dc in next 3 sts, 2 dc in next st; rep from * 10 more times, sl st to top of ch-3. (60 dc: 12 repeats of 5)
60 divides evenly by 6, so it sets up exactly 10 shell repeats.
Shell Body
The body alternates two kinds of round. Each shell sits on an sc from the round below, and each sc sits on the center dc of a shell below. This offset creates the stacked fans and the triangular openings between them.
Rnd 8 (first Shell A round): Ch 1, sc in same st as join, skip 2 sts, shell in next st, skip 2 sts, sc in next st; rep from * 8 more times, skip 2 sts, shell in next st, skip 2 sts, sl st to first sc. (10 shells + 10 sc = 60 sts)
Each repeat uses 6 sts of Rnd 7: 1 sc, 2 skipped, 1 shell base and 2 more skipped. 10 × 6 = 60.
Rnd 9 (Shell B): Ch 3, 2 dc in same sc (half shell made), sc in center dc of next shell, shell in next sc; rep from * 8 more times, sc in center dc of last shell, 2 dc in first sc (beside the ch-3), sl st to top of ch-3. (9 full shells + 1 split shell + 10 sc = 60 sts)
The split shell is the ch-3 and 2 dc at the start plus 2 dc at the end, so it counts as 5 sts. Its center is the beginning ch-3.
Rnd 10 (Shell A): Ch 1, sc in top of beginning ch-3 (center of the split shell), shell in next sc, sc in center dc of next shell; rep from * 8 more times, shell in next sc, sl st to first sc. (10 shells + 10 sc = 60 sts)
Rnds 11–23: Rep Rnds 9 and 10 alternately, ending with a Rnd 9 (Shell B). Every round has 60 sts.
You now have 16 shell rnds (Rnds 8–23). Place a marker in the join of Rnd 23 and check the After Rnd 23 measurement before going on.
Top Decreases
In Rnd 24, count every st of Rnd 23 as one stitch: each sc, each dc and the ch-3.
Rnd 24: Ch 3, dc in next 2 sts, dc2tog, dc in next 3 sts, dc2tog; rep from * 10 more times, sl st to top of ch-3. (48 sts: 60 worked − 12 decreases)
Rnd 25: Ch 3, dc in next st, dc2tog, dc in next 2 sts, dc2tog; rep from * 10 more times, sl st to top of ch-3. (36 sts: 48 worked − 12 decreases)
These two rounds mirror Rnds 6 and 7, so the top curves inward the same way the bottom curves out.
Rim and Strap
This section takes the place of a traditional border. It finishes the top edge, adds the hanging strap and firms up the bottom opening.
Rim gauge: 16 sc = 4 in (10.2 cm), so 36 sc = 9 in (22.9 cm) around.
Rnd 26: Ch 1, sc in each st around, sl st to first sc. (36 sc)
Rnd 27: Ch 1, sc in each st around, sl st to first sc. (36 sc)
Lay the holder flat with the Rnd 27 join at the left fold. Number the sts starting with the first sc of Rnd 27 as st 1. With the holder flat, the rim divides like this:
- Left fold strap base: sts 35, 36, 1, 2, 3 (5 sts, centered on st 1)
- Front rim: sts 4–16 (13 sts)
- Right fold strap base: sts 17–21 (5 sts, centered on st 19)
- Back rim: sts 22–34 (13 sts)
Total: 5 + 13 + 5 + 13 = 36. The two strap bases sit exactly 18 sts apart, which is half the rim, so the strap hangs straight without pulling to one side.
Strap Row 1: Fasten off the rim. Join yarn with a sl st in st 35. Ch 1, sc in sts 35, 36, 1, 2 and 3, turn. (5 sc)
Strap Rows 2–36: Ch 1, sc in each st across, turn. (5 sc)
The strap measures about 1 1/4 in (3.2 cm) wide and 8 in (20.3 cm) long (36 rows at 18 rows per 4 in). Fasten off, leaving a 12 in (30.5 cm) tail.
Bring the strap over the top opening without twisting it. Whipstitch the 5 sts of Row 36 to sts 17–21 of Rnd 27, one stitch to one stitch, and go through the same sts twice for strength. Laid flat, the rim is 4 1/2 in (11.4 cm) across, so the 8 in (20.3 cm) strap rises into a loop about 3 in (7.6 cm) high.
Bottom edge finish: Turn the holder upside down. Join yarn in any st of the foundation ch and sl st loosely in each ch around. (24 sl sts, 12 per side when flat) Fasten off. This keeps the bottom opening from stretching as you pull bags through.
Why the math works: The bottom grows from 24 to 60 sts in 12 even increase repeats. The top shrinks from 60 to 36 sts in 12 even decrease repeats. The shell body stays at exactly 60 sts (10 × 6), so the lace never drifts out of line. The rim divides into two strap bases of 5 sts and two rim sides of 13 sts, which adds back up to 36.
Weave in all ends inside the solid rounds rather than through the lace, where they would show.
Final Blocking
- Wet the holder fully in cool water and press out the excess. Do not wring it.
- Roll it in a towel to remove more water.
- Stuff it loosely with a rolled towel or a few plastic bags so it takes its finished tube shape.
- Ease the shells open with your fingers so the triangular openings are even all the way around.
- Pin or pinch the bottom band so it measures 6 in (15.2 cm) around.
- Lay the strap flat and straight.
- Let it dry completely on its side, turning it once.
- Check that the height is 16 in (40.6 cm) and the body circumference is 15 in (38.1 cm).
Final Quality-Control Checklist
- Bottom band: 24 sc, 6 in (15.2 cm) around, firm.
- Base increases: 12 even repeats, no corners or puckers.
- Shell body: 16 rnds, 10 shells in every round, all offset.
- Every sc sits on a shell center, and every shell sits on an sc.
- Top decreases: 48 then 36 sts, forming a smooth curve.
- Rim: 36 sc, 9 in (22.9 cm) around.
- Strap: 5 sts wide, 36 rows, not twisted, ends 18 sts apart.
- Bottom edge: 24 sl sts, and a bag still passes through the opening.
- All ends woven into solid rounds and trimmed.
Troubleshooting
Shells line up instead of offsetting. You worked a shell into a shell center. Check that every shell goes into an sc and every sc goes into a center dc.
The count drifts away from 60. The usual cause is a missed split shell in a Shell B round. Remember to finish each Shell B round with 2 dc in the first sc.
The base ruffles. Your dc tension is loose. Go down half a hook size for Rnds 5–7 only.
The base cups too tightly. Your dc tension is tight. Go up half a hook size for Rnds 5–7.
Bags fall out on their own. Add a second sl st round to the bottom edge, or redo the band with a smaller hook.
Bags won’t pull out. The band is too tight. Rework Rnds 1–4 with a larger hook.
The strap leans. Count again from st 1. The two strap bases must be 18 sts apart.
The holder stretches when full. Your yarn is too stretchy. Cotton holds its shape far better.
Care
Hand wash in cool water with mild soap, then dry flat or loosely stuffed to keep the shape. If the shells shift, reshape them while the holder is damp.

Final Notes
The measurements build on each other. A 24-st band gives a 6 in (15.2 cm) opening. Three increase rounds take it to 60 sts and 15 in (38.1 cm) around. Sixteen shell rounds add 12 in (30.5 cm). Two decrease rounds bring it to 36 sts, and the rim finishes at 9 in (22.9 cm) around and about 16 in (40.6 cm) tall. The 8 in (20.3 cm) strap forms a 3 in (7.6 cm) loop.
Check your gauge on the first seven rounds and every later measurement will follow. Make one in coral, add a second in denim blue, and hang them side by side.
Happy crocheting!