This bag holder turns a pile of loose grocery bags into a tidy little kitchen helper. It is a long green mesh tube with a solid rounded base, a red top band, a narrow gold stripe, and a red-edged opening near the bottom where you pull the bags out.
A small elf sits at the top. The cream oval face has pointed ears, closed smiling eyes, and a red smile. A tiny red hat with a cream pom-pom sits on the rim beside it.
The pattern uses US crochet terms. The finished holder is about 19.2 in (48.8 cm) long and 4.75 in (12.1 cm) across, or 7.5 in (19.1 cm) wide laid flat. The strap adds a hanging loop about 4.25 in (10.8 cm) high.
The body is one seamless piece worked from the bottom up. You make a flat circle for the base and a few solid rounds to turn the walls up. Then you work the mesh with a built-in dispensing slot, the gold stripe, more mesh, and the red top band. The strap, face, ears, hat, and pom-pom are made separately and sewn on.
Finished Size and Construction
- Finished size: about 19.2 in (48.8 cm) long, 4.75 in (12.1 cm) across, 15 in (38.1 cm) around
- Skill level: Easy-intermediate
- Terminology: US crochet terms
- Yarn weight: worsted (#4) cotton or cotton blend
- Hook: 5.0 mm (H-8)
- Number of pieces: 1 seamless main body plus 6 small sewn-on accents (strap, face, 2 ears, hat, pom-pom)
- Layout: single tube, no joining
- Piece size: base circle 4.75 in (12.1 cm) across
- Size before border: about 17.85 in (45.3 cm) from the base fold to the last mesh round
- Border depth: red top band about 1.35 in (3.4 cm); red rim around the opening about 0.25 in (0.6 cm)
Materials
Choose a smooth worsted cotton or cotton blend. Cotton holds the mesh shape and won’t stretch under the weight of the bags. Avoid fuzzy yarn, which hides the open net.
- Green: 85 g, 170 m
- Red: 30 g, 60 m
- Yellow (gold): 8 g, 16 m
- Cream: 10 g, 20 m
- Brown: 2 g, 4 m (eyes)
These amounts include a small extra margin.
Tools: 5.0 mm (H-8) hook, tapestry needle, 4 stitch markers, scissors, a pinch of fiberfill for the pom-pom, measuring tape, rustproof pins.
Abbreviations (US Terms)
- ch – chain
- sc – single crochet
- dc – double crochet
- sl st – slip stitch
- st(s) – stitch(es)
- sk – skip
- inc – 2 sc in the same st
- sc2tog – single crochet 2 together
- MR – magic ring
- Rnd – round
Special stitch – mesh loop: a ch-5 connecting one sc to the next. In mesh rounds, each sc goes into the center of a loop from the round below, which makes the diamond net.
Mesh round closing: most mesh rounds end with ch 2, dc in first sc. The ch-2 plus dc counts as one ch-5 loop and leaves your hook in the center of that loop, ready for the next round.
Gauge and Checkpoints
- Solid sc: 16 sts and 18 rnds = 4 in (10.2 cm)
- Mesh: 4 loops wide = 4 in (10.2 cm); 4 mesh rounds = 3 in (7.6 cm), gently stretched
Make the base first and use it as your test piece. After Rnd 10 it should measure 4.75 in (12.1 cm) across. If it’s too big, go down half a hook size. If it’s too small, go up half a size.
Checkpoints (measured flat from the base fold):
- After Rnd 14: walls about 0.9 in (2.3 cm)
- After Mesh A: about 9.9 in (25.1 cm)
- After the gold stripe: about 10.35 in (26.3 cm)
- After Mesh B: about 17.85 in (45.3 cm)
- After the top band: about 19.2 in (48.8 cm)
Each mesh round adds about 0.75 in (1.9 cm). If the holder is running short, add a round to Mesh B. If it’s running long, leave one out.

Body
Work in joined rounds without turning.
Base (Green)
Rnd 1: 6 sc in MR, sl st to first sc. (6)
Rnd 2: ch 1, inc in each st around, join. (12)
Rnd 3: ch 1, sc 1, inc around, join. (18)
Rnd 4: ch 1, sc 2, inc around, join. (24)
Rnd 5: ch 1, sc 3, inc around, join. (30)
Rnd 6: ch 1, sc 4, inc around, join. (36)
Rnd 7: ch 1, sc 5, inc around, join. (42)
Rnd 8: ch 1, sc 6, inc around, join. (48)
Rnd 9: ch 1, sc 7, inc around, join. (54)
Rnd 10: ch 1, sc 8, inc around, join. (60)
Checkpoint: the circle lies flat and measures 4.75 in (12.1 cm) across.
Rnds 11–14: ch 1, sc in each st around, join. (60)
The walls now turn up to form the rounded bottom. On Rnd 14, count from the joining st and put markers in sts 18, 27, and 36. St 27 is the front center. Sts 18 and 36 mark the ends of the slot.
Mesh A (Green)
Mesh Rnd 1 (dispensing slot): ch 1, sc in st 1, ch 5, sk 3, sc in next st 4 times (the last sc lands in st 17). Ch 20, sk sts 18–36 (19 sts), sc in st 37. Work ch 5, sk 3, sc in next st 5 times (the last sc lands in st 57). Ch 2, dc in first sc.
Count: 11 sc, 10 loops including the closing loop, and 1 ch-20 span. The span takes the place of 5 loops, so you still have 15 loop positions.
Mesh Rnd 2: ch 1, sc in the closing loop, then ch 5, sc in next ch-5 loop until you reach the span. Across the span, work ch 5 and sc into the top loop of the 2nd, 6th, 10th, 14th, and 18th ch. Continue ch 5, sc in next ch-5 loop to the end. Ch 2, dc in first sc. (15 loops)
Those 5 chains sit where the centers of the 5 missing loops would be, so the net carries on evenly above the slot. The free bottom loops of the chain are saved for the red rim.
Mesh Rnds 3–11: ch 1, sc in the closing loop, ch 5, sc in next ch-5 loop 14 times, ch 2, dc in first sc. (15 loops)
Mesh Rnd 12: ch 1, sc in the closing loop, ch 5, sc in next ch-5 loop 14 times, ch 5, sl st to first sc. (15 full loops) Fasten off.
Checkpoint: about 9.9 in (25.1 cm).
Gold Stripe (Yellow)
Stripe Rnd 1 (conversion round): join yellow in any loop, ch 1, 4 sc in each loop around, join. 15 loops × 4 sc = 60 sts. (60)
Stripe Rnd 2: ch 1, sc in each st around, join. (60) Fasten off.
Mesh B (Green)
Mesh Rnd 1: join green in any st, ch 1, sc in same st, ch 5, sk 3, sc in next st 14 times, ch 2, dc in first sc. (15 sc, 15 loops)
Mesh Rnds 2–9: work as Mesh A Rnds 3–11. (15 loops)
Mesh Rnd 10: work as Mesh A Rnd 12. (15 full loops) Fasten off.
Checkpoint: about 17.85 in (45.3 cm).
Accents
Strap (Red)
Ch 46.
Row 1: sc in 2nd ch from hook and in each ch across, turn. (45)
Row 2: ch 1, sc in each st across. (45) Fasten off, leaving a long tail.
The strap is about 11.25 in (28.6 cm) by 0.45 in (1.1 cm).
Elf Face (Cream)
Ch 8.
Rnd 1: sc in 2nd ch from hook, sc in next 5 ch, 3 sc in last ch. Working along the other side of the chain, sc in next 5 ch, 2 sc in last ch, join. (16)
Rnd 2: ch 1, inc, sc 5, inc 3 times, sc 5, inc 2 times, join. (22)
Rnd 3: ch 1, sc 1, inc, sc 5, sc 1, inc 3 times, sc 5, sc 1, inc 2 times, join. (28)
Rnd 4: ch 1, sc 2, inc, sc 5, sc 2, inc 3 times, sc 5, sc 2, inc 2 times, join. (34)
Rnd 5: ch 1, sc 3, inc, sc 5, sc 3, inc 3 times, sc 5, sc 3, inc 2 times, join. (40)
Fasten off with a long tail. The face is about 3.25 in (8.3 cm) by 2.25 in (5.7 cm).
Embroidery: with brown, backstitch two upward-curving arcs about 0.6 in (1.5 cm) wide for closed, smiling eyes. With red, backstitch a smile about 1 in (2.5 cm) wide below them.
Ears (Cream, make 2)
Ch 2.
Row 1: sc in 2nd ch from hook, turn. (1)
Row 2: ch 1, 2 sc in st, turn. (2)
Row 3: ch 1, inc, sc 1, turn. (3)
Row 4: ch 1, inc, sc 2, turn. (4)
Row 5: ch 1, inc, sc 3. (5) Fasten off.
Each ear is a pointed triangle about 1.1 in (2.8 cm) long with a 1.25 in (3.2 cm) base. Turn the second ear over so the pair mirror each other.
Hat (Red)
Worked from the tip down.
Rnd 1: 4 sc in MR, join. (4)
Rnd 2: ch 1, sc 1, inc 2 times, join. (6)
Rnd 3: ch 1, sc in each st, join. (6)
Rnd 4: ch 1, sc 2, inc 2 times, join. (8)
Rnd 5: ch 1, sc in each st, join. (8)
Rnd 6: ch 1, sc 3, inc 2 times, join. (10)
Rnd 7: ch 1, sc in each st, join. (10)
Rnd 8: ch 1, sc 4, inc 2 times, join. (12)
Rnd 9: ch 1, sc in each st, join. (12)
Rnd 10: ch 1, sc 5, inc 2 times, join. (14)
Rnd 11: ch 1, sc 6, inc 2 times, join. (16)
Rnd 12: ch 1, sc in each st, join. (16)
Fasten off with a long tail. The hat is about 2.75 in (7.0 cm) tall and 2 in (5.1 cm) wide laid flat.
Pom-Pom (Cream)
Rnd 1: 6 sc in MR. (6)
Rnd 2: inc in each st. (12)
Rnd 3: sc in each st. (12)
Rnd 4: sc2tog 6 times. (6)
Stuff lightly, close the opening, and sew the pom-pom to the hat tip. It is about 1 in (2.5 cm) across.
Border
The border has two parts: the red top band and the red rim around the slot. Its gauge is the same as solid sc: 16 sts and 18 rnds = 4 in (10.2 cm).
Top Band (Red)
Rnd 1 (conversion round): join red in any loop of Mesh B Rnd 10, ch 1, 4 sc in each loop around, join. 15 loops × 4 sc = 60 sts. (60)
Rnds 2–6: ch 1, sc in each st around, join. (60) Fasten off.
The band is about 1.35 in (3.4 cm) deep.
Dispensing Rim (Red)
The slot has four sides: bottom, top, and two short ends.
Rnd 1: join red in st 18 of base Rnd 14. Work sc in sts 18–36 (19 sc). Work 1 sc in the side of the Mesh Rnd 1 sc at that end (1 sc). Work sc in each free bottom loop of the ch-20 (20 sc). Work 1 sc in the side of the sc at the other end (1 sc). Join. 19 + 1 + 20 + 1 = 41. (41)
Rnd 2: sl st loosely in each st around. (41) Fasten off.
The rim is about 0.25 in (0.6 cm) deep. The slot stretches open to a round opening about 3 in (7.6 cm) across.
Why the math works: each mesh loop stands in for 4 sts, so 15 loops × 4 sc = 60, the same count as the base. That keeps the tube straight from bottom to top. Around the slot, the 19 skipped sts and 20 chains each take exactly one rim stitch, so the rim lies flat without puckering.
Assembly
- Sew the ears behind the sides of the face, overlapping about 0.25 in (0.6 cm), with the points angled up and out.
- Center the face above the front-center marker, with its top edge just under the red band, and whipstitch it in place.
- Find the band st directly above front center. Count 15 sts each way from it, and sew one strap end inside the band at each of those spots, overlapping 0.75 in (1.9 cm). This leaves a 9.75 in (24.8 cm) loop.
- Sew the hat so it sits over the rim about 2 in (5.1 cm) to the right of front center. Let the tip flop over the side and tack it down.
Final Blocking
- Wet the body and gently press out the water in a towel.
- Fill the tube loosely with a rolled towel so it measures 4.75 in (12.1 cm) across.
- Ease the length to about 19.2 in (48.8 cm) and line up the diamonds.
- Pin the top band and the slot rim into neat circles.
- Steam the face and ears from a distance without pressing.
- Let everything dry completely before hanging.
Final Quality-Control Checklist
- Base is 4.75 in (12.1 cm) across with 60 sts
- Every mesh round has 15 loops
- Both stripe rounds and all top band rounds have 60 sts
- Slot rim has 41 sts and lies flat
- Face is centered above the slot
- Strap ends sit 15 sts on either side of front center
- All tails are woven in securely
Troubleshooting
- Mesh spirals: start every round in the closing loop.
- Base cups or ruffles: make sure each round adds exactly 6 sts, or change hook size.
- Slot is too tight: work the ch-20 more loosely.
- Rim puckers: loosen the Rnd 2 slip stitches.
- Holder sags: leave one round out of Mesh B.
- Face is lopsided: recount the increases at each end.
Care
Hand wash in cool water and lay flat to dry. Shake out any crumbs now and then.

Final Notes
The measurements build on each other. A 60-st base 4.75 in (12.1 cm) across becomes a 15 in (38.1 cm) tube, and each mesh loop always stands in for 4 sts. Four solid rounds, 22 mesh rounds, 2 gold rounds, and 6 red rounds bring the holder to about 19.2 in (48.8 cm). Check your measurements at each stage and your elf will be ready to hold your bags.
Happy crocheting!