This hanging toilet paper holder stacks three round baskets on one long crocheted strap, which hangs from a natural wooden ring. Each basket has a flat round base, a short solid wall, and a band of lace fans that ends in a soft scalloped rim.
The sample uses one warm terracotta (rust) cotton. A single color keeps the look calm and lets the fan texture stand out. The holder works in a bathroom, a laundry room or a guest room. Use it for spare rolls, washcloths or small toiletries.
The pattern uses US crochet terms. Each basket is 5.75 in (14.6 cm) across the base and 3.75 in (9.5 cm) tall. That fits a standard roll about 4.5 in (11.4 cm) wide. The finished holder is about 24 in (61.0 cm) long from the top of the ring to the bottom of the lowest basket.
The construction is simple. First you crochet three identical baskets in joined rounds. Then you crochet one long strap in rows. The strap folds over the ring, and each half is sewn down the side of all three baskets.
Finished Size and Construction
- Finished size: about 24 in (61.0 cm) long, including the ring
- Skill level: Easy-intermediate
- Terminology: US crochet terms
- Yarn weight: Worsted (#4) cotton
- Hook: 4.5 mm (US 7)
- Number of pieces: 4 crocheted pieces (3 baskets, 1 strap) plus 1 wooden ring
- Layout: 3 baskets stacked vertically (1 column x 3 tiers), 1.5 in (3.8 cm) apart
- Piece size: each basket is 5.75 in (14.6 cm) across the base x 3.75 in (9.5 cm) tall; the strap is 48.5 in x 1 in (123.2 cm x 2.5 cm)
- Size before border: the basket wall is 3.5 in (8.9 cm) tall after Round 17
- Border depth: 0.25 in (0.6 cm) scalloped edging (Round 18)
Materials
Choose a firm, smooth worsted-weight cotton or cotton blend. Cotton holds the basket shape and stretches less than acrylic under the weight of the rolls.
- Terracotta (rust) cotton: 200 g, about 320 m (350 yd)
- 3 baskets: about 42 g each, 126 g total
- Strap: about 22 g
- 4.5 mm (US 7) crochet hook
- Wooden ring, 2.75 in (7.0 cm) outer diameter
- 4 locking stitch markers
- Tapestry needle
- Scissors and measuring tape
- Pins for assembly
These quantities include a margin of about 50 g for gauge differences and the test basket. If your yarn has a different yardage, buy by meters, not by grams.
Abbreviations (US Terms)
- ch – chain
- sl st – slip stitch
- sc – single crochet
- hdc – half double crochet
- dc – double crochet
- BLO – back loop only
- sk – skip
- sp – space
- st(s) – stitch(es)
- rep – repeat
Special stitch – Shell: 7 dc worked into the same stitch.
Special stitch – Fan: 9 dc worked into the same ch-5 space.
The beginning ch 3 of a dc round always counts as the first dc.
Gauge and Checkpoints
Gauge: 16 sc and 18 rounds = 4 in (10.2 cm) in sc. The strap uses the same stitch rate: 16 hdc = 4 in (10.2 cm).
Make one full basket before you start the others. It is your real gauge test, and it shows you whether a roll fits.
Measurement checkpoints:
- After Round 3: the base is 2.9 in (7.4 cm) across.
- After Round 6: the base is 5.75 in (14.6 cm) across and lies flat.
- After Round 14: the solid wall is 1.75 in (4.4 cm) tall, measured from the fold line.
- After Round 17: the wall is 3.5 in (8.9 cm) tall.
- After Round 18: the wall is 3.75 in (9.5 cm) tall, and the rim is about 6.5 in (16.5 cm) across.
If the base is too big or ruffles, change to a 4 mm hook. If it is too small or cups, change to a 5 mm hook. Check the base again before you work the walls. Every later count depends on Round 6 having 72 sts at the right size.

Basket (Make 3)
Base
Round 1: Make a magic ring. Ch 3, 11 dc in ring. Join with sl st to top of ch-3. (12 dc)
Round 2: Ch 3, dc in same st, 2 dc in each st around. Join. (24 dc)
Round 3: Ch 3, 2 dc in next st, *dc in next st, 2 dc in next st; rep from * around. Join. (36 dc)
Checkpoint: 2.9 in (7.4 cm) across.
Round 4: Ch 3, dc in next st, 2 dc in next st, *dc in next 2 sts, 2 dc in next st; rep from * around. Join. (48 dc)
Round 5: Ch 3, dc in next 2 sts, 2 dc in next st, *dc in next 3 sts, 2 dc in next st; rep from * around. Join. (60 dc)
Round 6: Ch 3, dc in next 3 sts, 2 dc in next st, *dc in next 4 sts, 2 dc in next st; rep from * around. Join. (72 dc)
Checkpoint: 5.75 in (14.6 cm) across. The base should lie flat.
Solid Wall
Round 7 (turning round): Ch 1, sc in BLO of each st around. Join with sl st to first sc. (72 sc: 72 worked 1-per-existing-stitch + 0 added)
This round makes the crisp fold where the base turns up into the wall.
Rounds 8–14: Ch 1, sc in each st around. Join. (72 sc in each round)
Checkpoint: the wall is 1.75 in (4.4 cm) tall. Do not fasten off.
In Round 14, place a marker in st 1 and another in st 37. They are directly opposite each other, 36 sts apart, and they mark where the strap will be sewn.
Fan Band
Round 15 (shells): Ch 1, sc in first st, *sk 2 sts, Shell in next st, sk 2 sts, sc in next st; rep from * 10 more times, sk 2 sts, Shell in next st, sk 2 sts. Join to first sc. (12 shells and 12 sc = 96 sts)
Each repeat uses exactly 6 wall sts, so 72 / 6 = 12 shells. The sc between the shells land on sts 1, 7, 13 and so on. That puts one sc right at each strap marker (sts 1 and 37).
Round 16 (arches): Sl st in next 4 dc to reach the center (4th) dc of the first shell. Ch 1, sc in same st, *ch 5, sc in center dc of next shell; rep from * 10 more times, ch 5. Join to first sc. (12 sc and 12 ch-5 sps = 72 sts)
Each ch-5 arch spans one valley between two shells. It leaves the open “eye” you see under each upper fan.
Round 17 (fans): Sl st into first ch-5 sp. Ch 3, 8 dc in same sp, sc in next sc, *Fan in next ch-5 sp, sc in next sc; rep from * 10 more times. Join to top of ch-3. (12 fans and 12 sc = 120 sts)
The upper fans sit between the lower shells, which gives the layered fan look. Checkpoint: the wall is 3.5 in (8.9 cm) tall.
Continue with Round 18 in the Border section, then make the remaining baskets.
Make All Pieces
All pieces use the same terracotta yarn.
- Baskets: 3, about 42 g each (126 g total)
- Strap: 1, about 22 g
Text layout grid (front view):
( ring )
/ \
/ \
[ BASKET 1 ] top tier
| | 1.5 in gap
[ BASKET 2 ] middle tier
| | 1.5 in gap
[ BASKET 3 ] bottom tier
Strap (Make 1)
Foundation: Ch 196.
Row 1: Hdc in 3rd ch from hook and in each ch across. Turn. (194 hdc)
Row 2: Ch 2 (does not count as a st), hdc in each st across. Turn. (194 hdc)
Row 3: Ch 1, sc in each st across. Fasten off. (194 sc)
Checkpoint: the strap is 48.5 in (123.2 cm) long and 1 in (2.5 cm) wide. A cotton strap may relax slightly under load, so do not stretch it while you measure.
Place stitch markers along Row 3, counting stitches from one end:
- Sts 1–15: Basket 3
- Sts 16–21: gap
- Sts 22–36: Basket 2
- Sts 37–42: gap
- Sts 43–57: Basket 1
- Sts 58–93: hanger, 9 in (22.9 cm)
- Sts 94–101: ring wrap
- Sts 102–137: hanger, 9 in (22.9 cm)
- Sts 138–152: Basket 1
- Sts 153–158: gap
- Sts 159–173: Basket 2
- Sts 174–179: gap
- Sts 180–194: Basket 3
Each side uses 97 sts: 4 (ring) + 36 (hanger) + 15 + 6 + 15 + 6 + 15 = 97, and 97 x 2 = 194.
Joining
Finish Round 18 (see Border) on all three baskets before joining.
Step 1 – Ring: Fold the strap in half over the wooden ring so sts 94–101 wrap the ring. Use a length of yarn to sew a few firm stitches through the strap just below the ring on each side, so the strap cannot slide.
Step 2 – Basket 1: Lay the strap on the outside of the basket at the st 1 marker. Strap st 57 sits at the rim, and strap st 43 sits at the fold line (Round 7). Whipstitch both long edges of the strap to the wall, easing 8 strap sts evenly along Rounds 7–14. The remaining 7 strap sts cover the fan band. Tack them firmly into the sc of Round 16 and the sl st of Round 18. Repeat on the opposite side at the st 37 marker, using strap sts 138–152.
Step 3 – Baskets 2 and 3: Repeat with sts 22–36 and 159–173 for Basket 2. Then use sts 1–15 and 180–194 for Basket 3. Leave the 6-st gaps unsewn.
Tension: Sew snugly, but do not pull the wall in. The basket should stay round, and the strap should lie flat with no twist.
Checkpoint: Hang the piece. The gaps between baskets should be 1.5 in (3.8 cm), and the total length from the top of the ring to the bottom of the lowest basket should be about 24 in (61.0 cm).
Border
The border is the scalloped edging worked around each basket rim.
Border gauge: 12 edging sts per scallop. Each scallop spans about 1.7 in (4.3 cm) of rim.
Round 18 (scallop edging): Ch 1, sc in same st as join and in next 3 dc, 3 sc in next dc (center dc of fan), sc in next 4 dc, sl st in next sc, *sc in next 4 dc, 3 sc in next dc, sc in next 4 dc, sl st in next sc; rep from * 10 more times. Join to first sc. Fasten off and weave in ends. (144 sts: 120 worked 1-per-existing-stitch + 24 added)
Counts per side: The strap markers divide the rim into a front half and a back half. Each half has 6 scallops = 72 sts, and 72 + 72 = 144.
Why the math works: Each fan has 9 dc, plus 1 sc after it, for 10 sts. The edging works 1 st into each of those 10 sts, and the 3-sc group at the fan center adds 2 extra sts: 10 + 2 = 12 per scallop. With 12 fans, 12 x 12 = 144. The extra sts at each fan center let the rim curve into a scallop without cupping.
Final Blocking
- Mist each basket lightly with water until it is damp, not soaked.
- Slide a toilet roll, or a can of similar size, inside each basket.
- Shape the base flat and round, 5.75 in (14.6 cm) across.
- Pull each scallop gently upward and outward so the fans open.
- Pin the strap flat on a towel without stretching it, then mist it.
- Let everything dry fully, at least 12 hours, before hanging.
Final Quality-Control Checklist
- Each base has 72 sts and is 5.75 in (14.6 cm) across.
- Each wall has 8 sc rounds and a clean fold line.
- Each basket has 12 lower shells and 12 upper fans.
- Each rim has 144 sts and 12 even scallops.
- The strap has 194 sts and is 48.5 in (123.2 cm) long.
- The strap seams sit directly opposite each other on every basket.
- The gaps between baskets are an even 1.5 in (3.8 cm).
- All ends are woven in securely.
Troubleshooting
Base ruffles: Your tension is loose. Use a smaller hook, or redo Rounds 4–6 more firmly.
Base cups up early: Use a larger hook for the base only.
Shells are uneven: Recount Round 14. You need exactly 72 sts.
Fans lean or twist: Make sure each fan goes into a ch-5 space, not around the sc.
Baskets tilt when hung: The strap seams are not opposite each other. Move one side so it sits exactly 36 sts from the other.
Strap stretches too much: Use a firmer cotton, or add one more sc row along the strap and sew it slightly tighter.
Care
Hand wash in cool water with mild soap. Lay flat to dry, reshaping each basket around a roll, and do not hang the holder while it is wet, because the strap will stretch.

Final Notes
The whole design follows one measurement chain. A 72-st base at 5.75 in (14.6 cm) gives a 72-st wall. That wall divides into 12 shells, 12 arches, 12 fans and finally 12 scallops of 12 sts each. The 194-st strap gives each side 97 sts: 4 for the ring, 36 for the hanger, 15 for each basket and 6 for each gap. Check the base, the wall height and the strap length, and everything else will fall into place.
Happy crocheting!