This hanging plastic bag holder is a long, soft tube worked in a warm beige cotton with a filet diamond lattice running all the way around it. Rows of small square holes form diagonal lines that cross to make a field of diamonds, so the piece looks light and lacy while staying sturdy enough to hold a full stash of grocery bags.
Both ends are finished with a dense chocolate-brown cuff. The loading end stays fully open, and the dispensing end curls slightly inward to form a narrower lip, so bags pull out one at a time instead of tumbling free. Two small beige tabs loop around wooden rings, and those rings hang from a pair of wall hooks, so the tube rests horizontally against the wall.
The pattern uses US crochet terms. The finished holder measures about 16 in (40.6 cm) long and 16 in (40.6 cm) around, which is about 5.1 in (13.0 cm) across when filled.
Construction is simple: you work the beige body in joined rounds from a foundation chain, following a short 8-round filet chart. Then you add a brown single crochet cuff to each end, make two small tabs, and sew them on.
Finished Size and Construction
- Finished size: about 16 in (40.6 cm) long x 16 in (40.6 cm) circumference
- Filled diameter: about 5.1 in (13.0 cm)
- Skill level: Intermediate (filet in the round, simple decreases)
- Terminology: US crochet terms
- Yarn weight: worsted / #4 medium, cotton or cotton blend
- Hook: 4.5 mm (US 7)
- Number of pieces: 1 main tube plus 2 small hanging tabs
- Layout: single tube hung horizontally from 2 tabs and 2 wooden rings
- Body size before border: 14 in (35.6 cm) long x 16 in (40.6 cm) around
- Border depth: 1 in (2.5 cm) at each end
- Dispensing opening: 48 sts, about 12 in (30.5 cm) around, or 3.8 in (9.7 cm) across
Materials
Choose a smooth worsted-weight cotton or cotton blend. Cotton holds its shape, shows the filet holes clearly, and does not stretch out when the tube is packed with bags. The quantities below assume a yarn of about 85 m per 50 g (1.7 m per gram).
- Color A, beige: 120 g, about 204 m (223 yd)
- Color B, chocolate brown: 35 g, about 60 m (66 yd)
Both quantities include a margin of about 15-20% for your gauge swatch and small differences in tension.
Tools:
- 4.5 mm (US 7) crochet hook
- Tapestry needle
- 2 stitch markers
- 2 wooden rings, about 2 in (5.1 cm) across
- 2 wall hooks
- Measuring tape
- Rust-proof pins and a towel for blocking
Abbreviations (US Terms)
- ch = chain
- sl st = slip stitch
- sc = single crochet
- dc = double crochet
- sc2tog = single crochet 2 together
- st(s) = stitch(es)
- rnd(s) = round(s)
- sp = space
Filet cells used in this pattern:
Every round has 32 cells, and every cell is 2 sts wide.
- Post: the first st of each cell, always 1 dc. In the first cell of a round, the ch-3 counts as the post.
- Block (B): post dc, then 1 dc in the next st or ch-1 sp.
- Mesh (M): post dc, then ch 1 and skip the next st or ch-1 sp.
Every post dc goes into the post dc of the cell below. Because of this, each round always has 64 sts, counting each ch-1 as 1 st.
Gauge and Checkpoints
Gauge in dc (Color A): 16 sts and 8 rnds = 4 in (10.2 cm).
Gauge in sc (Color B): 16 sts and 20 rnds = 4 in (10.2 cm).
Before you start the tube, make a test swatch: ch 22, then work 10 rows of dc on 20 sts. Use the middle 16 sts and 8 rows to measure. Your swatch should be 4 in (10.2 cm) square.
Checkpoints:
- After Rnd 2: lay the tube flat. It should measure 8 in (20.3 cm) across, which is half of 16 in (40.6 cm) around.
- After Rnd 10 (first chart repeat): the body is 5 in (12.7 cm) long, and each diamond is 4 in (10.2 cm) wide x 4 in (10.2 cm) tall.
- After Rnd 28: the body is 14 in (35.6 cm) long.
- After both cuffs: the tube is about 16 in (40.6 cm) long.
Too big? Go down 0.5 mm in hook size and swatch again. Too small? Go up 0.5 mm. Fix gauge before you begin. A tube that is 1 in (2.5 cm) too wide around will feel loose, and a narrow one will be hard to stuff.

Body (Color A)
With Color A, ch 64. Join with a sl st to the first ch, making sure the chain is not twisted. Place a marker in the foundation edge so you can find it later.
Rnd 1: Ch 3 (counts as dc), dc in each ch around, then join with a sl st to the top of the ch-3. (64 dc)
Rnd 2: Ch 3, dc in each st around, then join. (64 dc)
The joins stack up into a slight seam line. That is normal. This line becomes the back of the holder, facing the wall.
Diamond Lattice Chart (Rnds 3-26)
Work the chart 3 times in total: Rnds 3-10, 11-18, and 19-26. Each chart round has 4 repeats of 8 cells. Read every round from right to left (the tube is not turned).
Start each round with ch 3 (the post of cell 1). Work the fill for cell 1, then work the remaining 31 cells as given, and join to the top of the ch-3.
| Chart round | Cells 1-8 | Per round |
|---|---|---|
| 1 | M B B B B B B B | 4 M, 28 B |
| 2 | B M B B B B B M | 8 M, 24 B |
| 3 | B B M B B B M B | 8 M, 24 B |
| 4 | B B B M B M B B | 8 M, 24 B |
| 5 | B B B B M B B B | 4 M, 28 B |
| 6 | B B B M B M B B | 8 M, 24 B |
| 7 | B B M B B B M B | 8 M, 24 B |
| 8 | B M B B B B B M | 8 M, 24 B |
Stitch counts, every chart round: 64 sts.
- Chart rounds 1 and 5 have 60 dc and 4 ch-1 sps.
- All other chart rounds have 56 dc and 8 ch-1 sps.
How the lattice forms: In chart rounds 1-5, the holes move from cell 1 up and to the left toward cell 5. At the same time, the hole from cell 8 moves backward toward cell 5. The two lines meet at cell 5, which is the middle point of the diamond. In chart rounds 5-8 the lines separate again. Chart round 8 has its holes in cells 2 and 8. They lead straight into chart round 1 of the next repeat, where holes from the neighboring repeats meet at cell 1. The result is a continuous lattice of diamonds, each 8 cells wide and 8 rounds tall.
Rnd 27: Ch 3, dc in each st and each ch-1 sp around, then join. (64 dc)
Rnd 28: Ch 3, dc in each st around, then join. (64 dc) Fasten off.
The body is now 28 rnds, which is 14 in (35.6 cm) long. It has 1 in (2.5 cm) of solid dc at each end and 12 in (30.5 cm) of lattice in between.
Hanging Tabs (make 2, Color A)
Ch 7.
Row 1: Sc in the 2nd ch from the hook and in each ch across. (6 sc)
Rows 2-14: Ch 1, turn, sc in each st across. (6 sc)
Each tab measures 1.5 in (3.8 cm) wide x 2.8 in (7.1 cm) long. Fasten off and leave a 12 in (30.5 cm) tail for sewing.
Fold each tab around a wooden ring so the short ends meet. Whipstitch through both layers just below the ring to close the loop.
Border (Color B)
The cuffs are the border on this piece. Each one is worked in sc, at 4 sts and 5 rnds per inch (2.5 cm). You do not need to turn the rounds.
End A, Loading End
Hold the tube with the foundation edge at the top. Join Color B in any free loop of the foundation chain.
Rnd 1: Ch 1, sc in each free loop around, then join with a sl st to the first sc. (64 sc)
Rnds 2-5: Ch 1, sc in each st around, then join. (64 sc)
Fasten off. This cuff is 5 rnds, which is 1 in (2.5 cm) deep.
End B, Dispensing End
Join Color B in any st of Rnd 28.
Rnd 1: Ch 1, sc in each st around, then join. (64 sc)
Rnds 2-4: Ch 1, sc in each st around, then join. (64 sc)
Rnd 5 (decrease): Ch 1, work (sc in each of the next 6 sts, sc2tog) 8 times, then join. This is (8 x 6 sc) + (8 x 1 sc2tog) = 48 + 8 = 56 sts.
Rnd 6 (decrease): Ch 1, work (sc in each of the next 5 sts, sc2tog) 8 times, then join. This is (8 x 5 sc) + (8 x 1 sc2tog) = 40 + 8 = 48 sts.
Fasten off. Rnds 1-4 add 0.8 in (2.0 cm) of straight length. Rnds 5 and 6 curve in to make a lip about 0.4 in (1.0 cm) deep, so End B is also about 1 in (2.5 cm) deep in total.
Why the math works: The body has 64 sts around, and each cuff starts with 64 sc, 1 sc for each body st. So both cuffs stay exactly 16 in (40.6 cm) around and will not ruffle or pull in. At End B, the 8 decreases per round are spread evenly, 1 for every 8 sts, then 1 for every 7 sts. This turns the edge inward smoothly with no pointed corners. The opening ends at 48 sts, which is 12 in (30.5 cm) around. That is wide enough for your hand but snug enough to hold bags back.
Attaching the Tabs
Lay the tube flat with the round seam at the center back, facing the wall. Sew the bottom edge of each tab to the top line of the body using the long tail. Place each tab so its center is 2 in (5.1 cm) in from the end of the beige body. The tabs should be 10 in (25.4 cm) apart, center to center. Sew through 2 rows of the tab so the bag weight is spread across the seam. Weave in all ends.
Final Blocking
- Soak the holder in cool water with a little wool wash or mild soap for 15 minutes.
- Press out the water gently. Do not wring. Roll the holder in a towel to remove more moisture.
- Stuff the tube with a rolled towel, or slide it over a cardboard tube about 5 in (12.7 cm) across.
- Use your fingers to open the mesh holes and straighten the diagonal lines of the diamonds.
- Check that the length is 16 in (40.6 cm) and the circumference is 16 in (40.6 cm).
- Let it dry completely on the form, turning it once so it dries evenly.
Final Quality-Control Checklist
- Every chart round has 64 sts.
- The diamonds are 4 in (10.2 cm) wide and 4 in (10.2 cm) tall, and the diagonal lines meet cleanly.
- The body is 14 in (35.6 cm) long before the cuffs.
- End A has 64 sc and is 1 in (2.5 cm) deep.
- End B ends at 48 sts with an even inward lip.
- The tabs are 1.5 in (3.8 cm) wide and centered 10 in (25.4 cm) apart.
- The round seam faces the wall.
- All ends are woven in securely.
Troubleshooting
The diagonal lines drift or break. Most likely a post dc went into a ch-1 sp instead of the post below. Count cells from the ch-3 and re-work the round.
The tube twists into a spiral. The foundation chain was twisted when you joined it. Unfortunately you need to restart, so check the chain carefully on your next try.
The holes look too small. Pull up a slightly taller loop on each ch-1, or block the holder over a firm form.
The cuffs ruffle or flare. Your sc is looser than your dc. Go down 0.5 mm in hook size for the brown rounds only.
The cuffs pull in. Go up 0.5 mm in hook size, or check that Rnd 1 really has 64 sc.
Bags fall out too easily. Add one more round, (sc 4, sc2tog) 8 times, for 40 sts.
The tabs stretch over time. Sew them through more rows, or line each tab with a strip of felt.
Care
Hand wash in cool water and dry flat or on a rolled towel. Reshape while damp. Do not tumble dry, because cotton can shrink and change the size of the mesh.

Final Notes
Everything in this pattern follows from one gauge: 16 dc = 4 in (10.2 cm). That makes 64 sts = 16 in (40.6 cm) around. Each 8-cell diamond is 4 in (10.2 cm) wide, so 4 diamonds fit exactly around the tube.
At 8 rnds = 4 in (10.2 cm), the 28 body rnds make 14 in (35.6 cm). The two 1 in (2.5 cm) brown cuffs bring the finished holder to about 16 in (40.6 cm) long.
Check your gauge, count your 64 sts at each checkpoint, and the holder will turn out right.
Happy crocheting!