This bag holder is a tall, airy tube that keeps loose plastic grocery bags tidy and ready to use. You stuff bags in through the top opening and pull them out one at a time from the gathered bottom. The open grid in the middle lets you see at a glance when you’re running low.
The design has a clean, coastal-kitchen look. Solid single crochet bands sit at the top and bottom, and the middle is a crisp grid of two-stitch posts and square windows. A slip-stitch drawstring ties in a bow at the base, and a slim hanging loop fits any hook or cabinet knob. The sample is shown in sky blue and mint green, but any smooth cotton works.
The pattern uses US crochet terms. The finished holder measures 6 in (15.2 cm) wide laid flat, which is 12 in (30.5 cm) around, and 18 in (45.7 cm) long, not counting the hanging loop.
Construction is simple. You chain a ring and work joined rounds from the top down: a solid top band, then alternating double crochet mesh rounds and single crochet bar rounds, then a solid bottom band with an eyelet round. Last, you add a rim round at the top, the hanging loop and the drawstring cord.
Finished Size and Construction
- Finished size: 6 in (15.2 cm) wide flat × 18 in (45.7 cm) long
- Circumference: 12 in (30.5 cm)
- Skill level: Easy
- Terminology: US crochet terms
- Yarn weight: Worsted (#4), cotton
- Hook: 5.0 mm (H-8)
- Number of pieces: 1 tube, plus a hanging loop worked onto it and a separate drawstring cord
- Layout: Single tube worked top-down in joined rounds
- Stitch count per round: 48 stitches (24 per flat side)
- Size before border: 6 in (15.2 cm) × 17.75 in (45.1 cm)
- Border depth: about 0.25 in (0.6 cm), one round of sc around the top rim
Materials
Yarn: Use a smooth worsted-weight 100% cotton or cotton blend. Cotton holds the tube’s shape, doesn’t stretch out under the weight of the bags, and can be washed. Avoid fuzzy or very loose-plied yarn, because it blurs the square windows.
Pick one color per holder:
- Option A, sky blue: 80 g / 125 m (137 yd)
- Option B, mint green: 80 g / 125 m (137 yd)
These quantities include a margin of roughly 25% for gauge differences, swatching and weaving in ends. The holder itself uses about 96 m (105 yd).
Tools:
- 5.0 mm (H-8) crochet hook
- 2 locking stitch markers
- Tapestry needle
- Scissors
- Measuring tape
- Spray bottle and a rolled towel for blocking
Abbreviations (US Terms)
- ch – chain
- sc – single crochet
- dc – double crochet
- sl st – slip stitch
- sk – skip
- st(s) – stitch(es)
- sp – space
- rep – repeat
- Rnd(s) – round(s)
Special stitch: back-bump slip stitch. Turn the chain over and find the small horizontal bump on the back of each chain. Insert the hook under that bump only, yarn over, and pull through the bump and the loop on the hook. This gives a smooth, rounded cord.
Note: At the start of a mesh round, ch 3 counts as the first dc. At the start of an sc round, ch 1 does not count as a stitch.
Gauge and Checkpoints
Gauge:
- Solid sc: 16 sc × 18 rnds = 4 in (10.2 cm)
- Grid pattern: one 4-st repeat (2 dc + 2 ch) = 1 in (2.5 cm) wide
- Grid height: 4 pattern pairs (8 rnds) = 3 in (7.6 cm) tall
Test first: Work Rnds 1–8, then 4 grid pairs (Rnds 9–16). Lay the tube flat and measure before you go further. This short section is your swatch, and you can keep going if it’s on gauge.
Measurement checkpoints:
- After Rnd 1: circumference 12 in (30.5 cm), or 6 in (15.2 cm) flat
- After Rnd 8: top band about 1.75 in (4.4 cm) deep
- After Rnd 16: grid section 3 in (7.6 cm) tall
- After Rnd 44: total length 15.25 in (38.7 cm)
- After Rnd 54: total length 17.75 in (45.1 cm)
- After the border: total length 18 in (45.7 cm)
If the tube is too big, go down to a 4.5 mm hook. If it’s too small, go up to a 5.5 mm hook. Don’t change the stitch count, because the 48 stitches must stay divisible by 4 for the grid to line up.

Pattern
Top Band
Foundation: Ch 48 loosely. Join with a sl st into the first ch to form a ring, making sure the chain is not twisted.
Rnd 1: Ch 1, sc in each ch around, join with sl st to first sc. (48 sc)
Rnds 2–8: Ch 1, sc in each st around, join. (48 sc each round)
Checkpoint: The band is about 1.75 in (4.4 cm) deep and 6 in (15.2 cm) wide flat.
Grid Section
The grid alternates two rounds. The mesh round makes posts 2 dc wide with a ch-2 window between them. The bar round fills the top of each window with 2 sc to form a solid horizontal bar.
Rnd 9 (mesh round): Ch 3 (counts as dc), dc in next st, ch 2, sk 2 sts, dc in each of next 2 sts, ch 2, sk 2 sts; rep from * around. Join with sl st to the top of the beginning ch-3.
(24 dc + 12 ch-2 sps = 48 sts; 12 windows)*
Rnd 10 (bar round): Ch 1, sc in same st as join, sc in next dc, 2 sc in ch-2 sp, sc in each of next 2 dc, 2 sc in next ch-2 sp; rep from * around, join.
(24 sc over dc + 24 sc in spaces = 48 sc)*
Rnds 11–44: Rep Rnds 9–10 seventeen more times, for 18 grid pairs in total.
Each mesh round starts directly above a dc post, so the posts stack straight up in 12 even columns, 6 on each flat side.
Checkpoint: The grid section is 13.5 in (34.3 cm) tall, and the total length is 15.25 in (38.7 cm). Each window should look roughly square.
Bottom Band
Rnds 45–52: Ch 1, sc in each st around, join. (48 sc each round)
Rnd 53 (eyelet round): Ch 4 (counts as dc + ch 1), sk next st, dc in next st, ch 1, sk next st; rep from * around. Join with sl st to the 3rd ch of the beginning ch-4.
(24 dc + 24 ch-1 sps = 48 sts; 24 eyelets)*
Rnd 54: Ch 1, sc in same st as join, sc in next ch-1 sp, sc in next dc, sc in next ch-1 sp; rep from * around, join.
(24 sc in dc + 24 sc in spaces = 48 sc)*
Fasten off and weave in the end.
Checkpoint: The bottom band is about 2.5 in (6.4 cm) deep, and the total length is 17.75 in (45.1 cm).
Border
The top edge is still the bare foundation chain. One round of sc worked into it firms up the rim, matches the bottom edge, and gives the hanging loop a stable base.
Border gauge: same as the body, 16 sc = 4 in (10.2 cm).
Border Rnd: Hold the tube upside down so the foundation chain is on top. Join yarn in any free loop of the foundation chain, near the round seam. Ch 1, sc in each free loop around, join with sl st to first sc. (48 sc)
Counts per side: With the tube flattened, there are 24 sc on the front and 24 sc on the back. 24 + 24 = 48. A tube has no corners, so nothing is added at the fold lines.
Why the math works: The foundation has exactly 48 chains, and you work exactly 1 sc into each one. The rim therefore matches Rnd 1 (48 sts), the body (48 sts) and Rnd 54 (48 sts). At 4 sc per inch, 48 sts = 12 in (30.5 cm) around, or 6 in (15.2 cm) flat. Because no stitches are added, the rim cannot flare or ruffle.
Don’t fasten off yet if you’d like to work the hanging loop with the same strand. Otherwise, fasten off.
Hanging Loop
- Flatten the tube with the round seams at the center back.
- Counting from the border join, place marker A in st 46 and marker B in st 4. There are 6 sts between them, so the loop legs sit 1.5 in (3.8 cm) apart.
- Join yarn at marker A and ch 32 (about 8 in or 20.3 cm). Sl st into the st at marker B.
- Turn, and sc in each ch back along the chain. (32 sc)
- Sl st into the st at marker A and fasten off.
The loop rises about 3 in (7.6 cm) above the rim.
Drawstring Cord
Cord: Ch 90, or until the chain measures 24 in (61.0 cm). Work a back-bump sl st into the 2nd ch from the hook and into each ch across. (89 sl sts) Fasten off, leaving 2 in (5.1 cm) tails, and tie an overhand knot at each end. Trim the tails close to the knots.
Threading: Start at the center front. Weave the cord over and under through all 24 eyelets of Rnd 53 so that both ends come out of neighboring eyelets at the front. Pull to gather the bottom to an opening about 1.5 in (3.8 cm) across, then tie a bow.
Final Blocking
- Untie the bow and loosen the cord so the bottom lies open.
- Mist the whole tube evenly with water until it’s damp but not dripping.
- Roll a hand towel to about 12 in (30.5 cm) around and slide it inside the tube.
- Gently straighten each post column so it runs vertically, and nudge the windows square.
- Pat the tube to 6 in (15.2 cm) flat width and 18 in (45.7 cm) length.
- Leave it to dry fully, usually 12–24 hours. Then remove the towel and re-tie the bow.
Final Quality-Control Checklist
- [ ] Every round has 48 stitches.
- [ ] There are 12 post columns, 6 per flat side, and all of them run straight up.
- [ ] There are 18 grid pairs and 12 windows per mesh round.
- [ ] The top band has 8 sc rounds plus the border round.
- [ ] The bottom band has 8 sc rounds, the eyelet round and 1 final sc round.
- [ ] Rnd 53 has 24 eyelets.
- [ ] The tube measures 6 in (15.2 cm) flat and 18 in (45.7 cm) long.
- [ ] The hanging loop is centered on the back, with its legs 1.5 in (3.8 cm) apart.
- [ ] The cord is 24 in (61.0 cm) long with knotted ends.
- [ ] All ends are woven in securely.
Troubleshooting
The columns lean or spiral. You probably worked the first dc of a mesh round into the joining sl st instead of the first sc. Always start in the same st as the join.
The windows are taller than they are wide. Your dc is tall compared with your sc. Work the dc a little more snugly, or try a 4.5 mm hook for the mesh rounds only.
The tube flares at the grid. The ch-2s are too loose. Keep the chains the same size as your stitches.
The stitch count is off in a bar round. Check that you put exactly 2 sc in each ch-2 sp, not 3.
The bottom won’t gather closed. Make sure the cord goes through all 24 eyelets, with no skipped spaces.
The loop sags. The sc row along the chain was missed or worked loosely. Rework it more firmly.
Care
Machine wash cool on a gentle cycle, or hand wash. Reshape while damp and lay flat or hang to dry. Avoid high heat in the dryer, which can shrink the cotton.

Final Notes
Everything in this holder follows from one measurement chain. At 16 sc = 4 in (10.2 cm), 48 stitches give a 12 in (30.5 cm) tube that is 6 in (15.2 cm) wide flat. The length builds in three stages:
- The top band adds 1.75 in (4.4 cm).
- The 18 grid pairs add 13.5 in (34.3 cm), for 15.25 in (38.7 cm) in total.
- The bottom band adds 2.5 in (6.4 cm), for 17.75 in (45.1 cm) in total.
The rim round then brings the holder to its finished 18 in (45.7 cm). Check gauge early, keep the count at 48, and let the grid line itself up.
Happy crocheting!