This hanging toilet paper holder keeps three spare rolls tidy and within reach. Three small baskets hang one above the other on two slim back straps. A short tab at the top loops through a wooden ring, so the whole holder hangs from one hook.
Each basket has a deep V dip at the front, so you can see and grab the roll without lifting it out. The holder is worked in one warm terracotta shade in firm single crochet. This gives a smooth, pebbly fabric that holds its shape without any stiffener.
The pattern uses US crochet terms. The finished holder is 5 in (12.7 cm) wide, 4.3 in (10.9 cm) deep and 18.5 in (47.0 cm) tall from the top of the tab to the bottom basket, not counting the ring.
Construction is simple. Each basket starts as a flat rectangular base, then the walls are worked in rounds. The last six rows are worked back and forth to shape the V, and one edging round finishes the rim. Two straps and a tab are made flat, then sewn to the backs of the baskets.
Finished Size and Construction
- Finished size: 5 in (12.7 cm) wide x 18.5 in (47.0 cm) tall x 4.3 in (10.9 cm) deep
- Skill level: Easy to intermediate
- Terminology: US crochet terms
- Yarn weight: Bulky (#5) cotton or cotton blend
- Hook: 5.5 mm (US I-9)
- Number of pieces: 6 (3 baskets, 2 straps, 1 hanging tab)
- Layout: 1 column of 3 baskets, with a 1.5 in (3.8 cm) gap between baskets
- Basket size: 5 in (12.7 cm) wide x 4.3 in (10.9 cm) deep x 4.3 in (10.9 cm) tall
- Basket height before edging: 4 in (10.2 cm)
- Edging depth: 1 round, about 0.3 in (0.8 cm)
Materials
Choose a firm, smooth bulky cotton or cotton blend. Cotton keeps the walls upright and copes well with a humid bathroom. Avoid fuzzy or very stretchy yarn, because the baskets will sag under the weight of the rolls.
- Terracotta (rust): about 200 g / 220 m (240 yd) of bulky cotton
This amount includes a margin of roughly 15 percent for your test basket and for sewing.
Tools:
- 5.5 mm (US I-9) crochet hook
- One wooden ring, 2 in (5.1 cm) across
- Tapestry needle
- 4 to 6 locking stitch markers
- Measuring tape
- Rustproof pins
- Optional: one plastic canvas rectangle per basket, 4.75 x 4 in (12.1 x 10.2 cm), to stiffen the base
Abbreviations (US Terms)
- ch – chain
- sc – single crochet
- sc2tog – single crochet 2 together: insert hook in next st, pull up a loop, insert hook in next st, pull up a loop, yarn over and pull through all 3 loops
- sc3tog – single crochet 3 together: pull up a loop in each of the next 3 sts, yarn over and pull through all 4 loops
- BLO – back loop only
- sl st – slip stitch
- st(s) – stitch(es)
- RS / WS – right side / wrong side
- Rnd – round
Gauge and Checkpoints
Gauge: 12 sc and 13 rows = 4 in (10.2 cm) in single crochet, worked firmly.
Make one complete basket before you start the others. It is a better test than a flat swatch, because the gauge of the walls decides whether a roll fits.
Checkpoints:
- After Row 14 of the base: 5 in (12.7 cm) wide x 4.3 in (10.9 cm) deep.
- After Rnd 8: the walls stand 2.2 in (5.6 cm) tall from the fold line.
- After Row 14 of the V shaping: the back wall is 4 in (10.2 cm) tall.
- After the edging: the back wall is 4.3 in (10.9 cm) tall.
If your basket is too big: go down one hook size, to 5 mm (US H-8). Loose walls will slump forward.
If your basket is too small: go up one hook size, to 6 mm (US J-10). Check that a standard roll, about 4.5 in (11.4 cm) across, fits inside the basket lying on its side.

Basket (make 3)
Base
Ch 16.
Row 1 (RS): Sc in 2nd ch from hook and in each ch across, turn. (15 sc)
Rows 2–14: Ch 1, sc in each st across, turn. (15 sc each row)
The base should now measure 5 in (12.7 cm) by 4.3 in (10.9 cm). Do not fasten off.
Wall Set-Up
Rnd 1 (RS): Ch 1, do not turn. Work around all four edges of the base, numbering the stitches as you go:
- Long edge 1 (front): sc in each of 15 sts. These are sts 1–15.
- Short edge: sc in each of 14 row ends. These are sts 16–29.
- Long edge 2 (back): sc in each of 15 foundation ch. These are sts 30–44.
- Short edge: sc in each of 14 row ends. These are sts 45–58.
Join with a sl st to the first sc. (58 sc)
Place a marker in sts 1, 15, 30 and 44 to mark the four corners. The first and last st of each long edge are the corner sts, and they are already counted in the 15.
Walls
Rnd 2: Ch 1, sc in BLO of each st around, join. (58 sc)
This round makes the crisp fold where the base turns up into the walls.
Rnds 3–8: Ch 1, sc in both loops of each st around, join. (58 sc each round)
Fasten off at the end of Rnd 8. The walls should be 2.2 in (5.6 cm) tall.
V Shaping
From here you work in rows over the back and sides, leaving the center front open. Each row loses one st at each end, so the opening widens into a V.
Row 9 (RS): With RS facing, join yarn in st 10 of the front. Ch 1, then sc in the same st and in each st around the side, back and other side to st 58. Sc in sts 1–6, turn. (55 sc)
Sts 7, 8 and 9 of the front stay unworked. They form the bottom of the V.
Row 10 (WS): Ch 1, sc2tog, sc in each st to the last 2 sts, sc2tog, turn. (53 sts)
Row 11: Repeat Row 10. (51 sts)
Row 12: Repeat Row 10. (49 sts)
Row 13: Repeat Row 10. (47 sts)
Row 14 (WS): Repeat Row 10. (45 sts)
Fasten off. Row 14 now covers 1 front corner st, 14 side sts, 15 back sts, 14 side sts and 1 front corner st: 1 + 14 + 15 + 14 + 1 = 45.
The back and sides should now measure 4 in (10.2 cm) tall. The V opening is about 4.3 in (10.9 cm) wide at the top.
Straps (make 2)
Ch 4.
Row 1: Sc in 2nd ch from hook and in each ch across, turn. (3 sc)
Rows 2–52: Ch 1, sc in each st across, turn. (3 sc each row)
Fasten off, leaving a 24 in (61.0 cm) tail for sewing. Each strap is 1 in (2.5 cm) wide and 16 in (40.6 cm) long.
Hanging Tab (make 1)
Ch 6.
Row 1: Sc in 2nd ch from hook and in each ch across, turn. (5 sc)
Rows 2–24: Ch 1, sc in each st across, turn. (5 sc each row)
Fasten off, leaving a 16 in (40.6 cm) tail. The tab is 1.7 in (4.3 cm) wide and 7.4 in (18.8 cm) long.
Make All Pieces
Make these pieces, all in terracotta:
- 3 baskets, edged as described in the Border section below
- 2 straps, 52 rows each
- 1 hanging tab, 24 rows
Layout, front view (top to bottom):
[ ring ]
[ tab ]
| S | [ Basket 1 ] | S | strap rows 1–14
| S | gap | S | strap rows 15–19
| S | [ Basket 2 ] | S | strap rows 20–33
| S | gap | S | strap rows 34–38
| S | [ Basket 3 ] | S | strap rows 39–52
S = strap, sewn behind each basket at the back corners.
Joining
Add the edging to all three baskets before you join them (see the Border section). An edged basket is 14 rows tall from the fold line: Rnds 2–8 (7), Rows 9–14 (6) and the edging (1).
Method: whipstitch with the yarn tail, working through the back wall only. Do not sew through to the front of the basket.
Stitch-to-stitch logic: the straps and baskets have the same row gauge, so match them 1 row to 1 round.
- Lay the three baskets face down in a column, back walls up.
- Place one strap over back sts 30–32, with its outer edge lined up with the corner at st 30. Place the second strap over back sts 42–44, lined up with the corner at st 44.
- Line up strap Row 1 with the edging round of Basket 1. Strap rows 1–14 cover Basket 1, row for row.
- Leave strap rows 15–19 free. This is the 1.5 in (3.8 cm) gap.
- Strap rows 20–33 cover Basket 2. Rows 34–38 form the second gap. Rows 39–52 cover Basket 3 and end at its fold line.
- Whipstitch both long edges of each strap to the basket, making 1 stitch per strap row end into the matching basket round.
Tab: slide the tab through the ring and fold it in half. Center both ends on back sts 35–39 of Basket 1. Let each end overlap 4 rows, or 1.2 in (3.0 cm), down the back wall, then whipstitch around all edges of the overlap. About 2.5 in (6.4 cm) of tab stays above the rim.
Tension: pull each whipstitch just snug. If you pull too hard, the back wall puckers. If you sew too loosely, the baskets tilt forward when loaded.
Size checkpoint: the strapped column should measure 16 in (40.6 cm) from the top rim of Basket 1 to the base fold of Basket 3. With the tab, it should measure 18.5 in (47.0 cm).
Border (Rim Edging)
The border is one round of sc around the top of each basket and down both slopes of the V.
Border gauge: the same 12 sc = 4 in (10.2 cm). Along the back and sides, that means 1 sc per st.
Rnd 15 (RS): With RS facing, join yarn in the front corner st on one side of the V (the end st of Row 14). Ch 1, then:
- Front corner: sc in the corner st. (1)
- First slope: work 8 sc down the slope: 1 sc in each of the 6 row ends, plus 1 extra sc in the row ends of Rows 13 and 11. (8)
- V point: sc3tog over front sts 7, 8 and 9 of Rnd 8. (1)
- Second slope: work 8 sc up the slope the same way, with the extra sc in the row ends of Rows 11 and 13. (8)
- Front corner: sc in the corner st. (1)
- Side: sc in each of 14 sts. (14)
- Back: sc in each of 15 sts. (15)
- Side: sc in each of 14 sts. (14)
Join with a sl st to the first sc. (62 sc) Fasten off and weave in the ends.
Why the math works: the back and sides get exactly one sc per existing st (14 + 15 + 14 = 43), so the rim stays straight. Each slope is about 2.6 in (6.6 cm) long on the diagonal. At 3 sc per inch, that needs 8 sc, so the V lies flat without ruffling or pulling. The sc3tog turns the three bottom sts into one, which forms the point of the V. Total: 1 + 8 + 1 + 8 + 1 + 43 = 62.
Final Blocking
- Lightly mist each basket with water until it is damp, not soaked.
- Put a roll of toilet paper, or a folded towel of the same size, into each basket.
- Pinch the four base corners and the fold line to sharpen them.
- Smooth the V slopes with your fingers so the edging lies flat and the point is centered.
- Lay the holder face down with the rolls inside, and pin the straps straight.
- Let it dry completely, for at least 24 hours.
- If you are using plastic canvas inserts, slip them in after drying.
Final Quality-Control Checklist
- Each basket measures 5 in (12.7 cm) wide, 4.3 in (10.9 cm) deep and 4.3 in (10.9 cm) tall.
- All three V points are centered and sit at the same height.
- Each rim has 62 sts.
- Each strap has 52 rows and is sewn with 1 stitch per row end.
- The gaps between baskets are an even 1.5 in (3.8 cm).
- The tab is centered on back sts 35–39 and sewn securely.
- No sewing shows on the front of the baskets.
- All ends are woven in for at least 2 in (5.1 cm).
Troubleshooting
The basket corners are rounded, not square: pinch the corners while blocking. Next time, work Rnd 2 strictly in the back loop only.
The V slopes ruffle: you have more than 8 sc per slope. Pull out the edging and work exactly 8.
The V slopes pull tight: you skipped the extra sc in Rows 11 and 13. Add them back.
The roll doesn’t fit: check your gauge. If you crochet tightly, a 6 mm (US J-10) hook will add room.
The baskets tilt forward: sew the strap edges more firmly, and make sure the straps catch the top of each basket.
The tab stretches: sew the full 4-row overlap on both ends, or use a stiffer yarn for the tab.
Care
Hand wash in cool water with mild soap. Reshape the holder and dry it flat with the baskets filled so the walls keep their shape.

Final Notes
The measurement chain is short. A gauge of 12 sc and 13 rows = 4 in (10.2 cm) gives a 5 x 4.3 in (12.7 x 10.9 cm) base. The 58-st walls rise to 4 in (10.2 cm), then to 4.3 in (10.9 cm) with the 62-st edging. Three baskets of 14 rows plus two 5-row gaps match the 52-row straps, which are 16 in (40.6 cm) long. The tab brings the total height to 18.5 in (47.0 cm). If the first basket measures correctly, the other two will match.
Happy crocheting!