Sage Tulip Three-Tier Toilet Paper Holder Crochet Pattern

This hanging toilet paper holder stacks three round baskets in a vertical column. Each basket holds one standard roll, and the whole piece hangs from a wooden ring on a single hook. It saves floor space and looks soft and tidy on a bathroom wall.

The colors are sage green and white. Each basket has a flat green base and green walls with three bands of white puff stitches. The bands are staggered so they look like rows of small tulips. A white sc round and a white reverse sc round finish each rim with a neat corded edge. A tapered green hanger tab with a white band rises from the top basket and wraps around the ring.

This pattern uses US crochet terms. Each basket measures 5 in (12.7 cm) across and 4.25 in (10.8 cm) tall. The finished holder is about 21 in (53.3 cm) long, not counting the ring.

Construction is simple. You make three identical baskets from the base up in joined rounds. Then you make four short straps and one hanger tab flat in rows, and sew everything together.

Finished Size and Construction

  • Finished length: about 21 in (53.3 cm), not counting the ring
  • Skill level: Easy / Advanced Beginner
  • Terminology: US crochet terms
  • Yarn weight: Worsted (#4) cotton
  • Hook: 5 mm (US H-8)
  • Number of pieces: 8 (3 baskets, 4 straps, 1 hanger tab), plus 1 wooden ring
  • Layout: 1 column of 3 baskets, linked by 2 straps per gap, with the hanger tab on top
  • Basket size: 5 in (12.7 cm) diameter x 4.25 in (10.8 cm) tall
  • Wall height before rim: 3.75 in (9.5 cm)
  • Rim (border) depth: 2 rounds, about 0.25 in (0.6 cm)
  • Gap between baskets: 1.5 in (3.8 cm)

Materials

Choose a smooth worsted-weight cotton or cotton blend. Cotton holds its shape, handles bathroom humidity, and washes well. Avoid very soft, stretchy acrylic, because the baskets will sag.

  • Sage green (Color A): 180 g, about 306 m (335 yd)
  • White (Color B): 70 g, about 119 m (130 yd)

These amounts include about 15 percent extra for a gauge check and small differences in tension.

Tools:

  • 5 mm (US H-8) crochet hook
  • 1 wooden ring, 2.75 in (7.0 cm) outer diameter
  • 4 stitch markers
  • Tapestry needle
  • Scissors
  • Measuring tape
  • Pins

Abbreviations (US Terms)

  • ch – chain
  • sl st – slip stitch
  • sc – single crochet
  • sc2tog – single crochet 2 together
  • BLO – back loop only
  • rev sc – reverse single crochet (crab stitch)
  • st(s) – stitch(es)
  • rnd – round
  • rep – repeat

Special stitch – Puff: (Yo, insert hook in st, yo and pull up a loop to sc height) 3 times in the same st, leaving 7 loops on the hook. Yo and pull through all 7 loops, then ch 1 to close. The closing ch 1 is not counted, and the puff counts as 1 st. On the next round, work into the top of the puff, not into the closing ch.

Color changes: Change color on the last yo of the joining sl st. Carry the unused color loosely up the inside of the basket instead of cutting it.

Gauge and Checkpoints

Gauge: 15 sc and 16 rnds = 4 in (10.2 cm) in sc, worked in joined rounds.

Make one piece first to test your gauge. Work Rnds 1–10 of the first basket and measure the base before going further. This base is your gauge swatch.

Checkpoints:

  • After Rnd 10: the base is 5 in (12.7 cm) across, with 60 sts
  • After Rnd 13: the wall is 0.75 in (1.9 cm) tall
  • After Rnd 22: the wall is 3.75 in (9.5 cm) tall
  • After Rnd 24: the wall is 4 in (10.2 cm) tall, and the whole basket stands 4.25 in (10.8 cm)

If your base is too big: Change to a 4.5 mm hook. A loose basket will be floppy, and the roll will lean.

If your base is too small: Change to a 5.5 mm hook. A standard roll is about 4.25 in (10.8 cm) wide and needs room to slide in.

Don’t add or remove increase rounds to fix the size. The puff pattern depends on the 60-st count, so change the hook instead.

Crocheted pouch in soft green and cream hanging from a wooden ring handle with textured stitch detail.

Basket (Make 3)

Work in joined rounds. Start each rnd with ch 1 (does not count as a st) and join with a sl st to the first sc. Place a marker in the first st of each rnd.

Base

With Color A, make a magic ring.

Rnd 1: Ch 1, 6 sc in ring, join. (6 sts)

Rnd 2: 2 sc in each st around, join. (12 sts)

Rnd 3: (Sc 1, 2 sc in next st) 6 times, join. (18 sts)

Rnd 4: (Sc 2, 2 sc in next st) 6 times, join. (24 sts)

Rnd 5: (Sc 3, 2 sc in next st) 6 times, join. (30 sts)

Rnd 6: (Sc 4, 2 sc in next st) 6 times, join. (36 sts)

Rnd 7: (Sc 5, 2 sc in next st) 6 times, join. (42 sts)

Rnd 8: (Sc 6, 2 sc in next st) 6 times, join. (48 sts)

Rnd 9: (Sc 7, 2 sc in next st) 6 times, join. (54 sts)

Rnd 10: (Sc 8, 2 sc in next st) 6 times, join. (60 sts)

Checkpoint: the base should lie flat and measure 5 in (12.7 cm) across. If it ruffles, your increases are too loose. If it cups, they are too tight.

Wall

Rnd 11: Sc in BLO of each st around, join. (60 sts) This makes a ridge and turns the wall upward.

Rnds 12–13: Sc in each st around, join. (60 sts) Change to Color B at the end of Rnd 13.

Checkpoint: the wall is 0.75 in (1.9 cm) tall.

Tulip Bands

Rnd 14 (Color B): (Puff in next st, sc in next 3 sts) 15 times, join. Change to Color A. (60 sts: 15 puffs + 45 sc)

Rnds 15–16 (Color A): Sc in each st around, join. (60 sts) Change to Color B at the end of Rnd 16.

Rnd 17 (Color B): (Sc in next 2 sts, puff in next st, sc in next st) 15 times, join. Change to Color A. (60 sts: 15 puffs + 45 sc)

The puffs in Rnd 17 sit 2 sts to the left of the puffs in Rnd 14. This offset makes the staggered tulip pattern.

Rnds 18–19 (Color A): Sc in each st around, join. (60 sts) Change to Color B at the end of Rnd 19.

Rnd 20 (Color B): Rep Rnd 14. (60 sts: 15 puffs + 45 sc)

Rnds 21–22 (Color A): Sc in each st around, join. (60 sts) Change to Color B at the end of Rnd 22. Cut Color A, leaving a 6 in (15.2 cm) tail.

Checkpoint: the wall is 3.75 in (9.5 cm) tall. Each band (1 puff rnd + 2 sc rnds) adds about 1 in (2.5 cm).

Now work the rim (Rnds 23–24, see Border below) on each basket before joining.

Make All Pieces

Pieces and colors:

  • Baskets: 3, each in Color A and Color B
  • Straps: 4, Color A only
  • Hanger tab: 1, Color A with a Color B band

Strap (Make 4)

With Color A, ch 5.

Row 1: Sc in 2nd ch from hook and in each ch across, turn. (4 sts)

Rows 2–10: Ch 1, sc in each st across, turn. (4 sts)

Fasten off, leaving a 12 in (30.5 cm) tail for sewing. Each strap is about 1 in (2.5 cm) wide and 2.5 in (6.4 cm) long.

Hanger Tab (Make 1)

With Color A, ch 21.

Row 1: Sc in 2nd ch from hook and in each ch across, turn. (20 sts)

Rows 2–3: Ch 1, sc in each st across, turn. (20 sts) Change to Color B at the end of Row 3.

Rows 4–7 (Color B): Ch 1, sc in each st across, turn. (20 sts) Change to Color A at the end of Row 7.

Row 8 (Color A): Ch 1, sc in each st across, turn. (20 sts)

Row 9: Ch 1, sc2tog, sc to last 2 sts, sc2tog, turn. (18 sts)

Even rows 10–20: Ch 1, sc in each st across, turn. (Same count as the row before)

Odd rows 11–21: Rep Row 9. Counts: Row 11 (16 sts), Row 13 (14 sts), Row 15 (12 sts), Row 17 (10 sts), Row 19 (8 sts), Row 21 (6 sts).

Rows 22–33: Ch 1, sc in each st across, turn. (6 sts)

Fasten off, leaving a 16 in (40.6 cm) tail.

The tab is 5.3 in (13.5 cm) wide at the bottom. Rows 1–21 make a tapered section 5.25 in (13.3 cm) tall. Rows 22–33 add a 3 in (7.6 cm) strip for the ring loop.

Layout

          ( RING )
         /  TAB   \
     [   BASKET 1   ]
      |            |
    STRAP        STRAP
      |            |
     [   BASKET 2   ]
      |            |
    STRAP        STRAP
      |            |
     [   BASKET 3   ]

Joining

Whipstitch with Color A through both loops of each stitch. Sew stitch to stitch. Each strap is 4 sts wide, so it covers exactly 4 basket sts.

Mark strap positions. On each basket, number the 60 rim sts starting at the joining seam. Sts 1–20 are the back. The two sides are sts 24–27 and sts 54–57. Mark the same columns on Rnd 11 (the BLO ridge) of Baskets 1 and 2. Because the rounds are joined, the columns stack straight up.

Attach straps to the lower basket. Pin Rows 1–2 of one strap inside Basket 2’s rim at sts 24–27, with Row 1 level with Rnd 22. Sew around all four edges of the 2-row overlap. Repeat with a second strap at sts 54–57.

Attach straps to the upper basket. Pin Rows 9–10 of each strap to the outside of Basket 1, along the Rnd 11 ridge in the same columns. Sew around the overlap. This leaves 6 rows, or 1.5 in (3.8 cm), of strap showing between the baskets.

Repeat to join Basket 3 below Basket 2.

Tension: Pull each whipstitch snug but not tight, so the seam stays flat. If the basket wall puckers, loosen your stitches and resew.

Attach the hanger tab. Pin Rows 1–3 of the tab inside the back wall of Basket 1, centered over rim sts 1–20, with Row 1 level with Rnd 20. The white band (Rows 4–7) sits just above the rim. Whipstitch along all 20 sts of Row 1 and up both side edges of the overlap.

Attach the ring. Fold the 6-st strip (Rows 22–33) over the wooden ring toward the back. Sew Row 33 to the back of Row 21 through all 6 sts, then sew both side edges.

Checkpoint: hanging, the holder should measure about 21 in (53.3 cm) from the bottom of Basket 3 to the top of the tab loop.

Border (Rim Edging)

On this piece, the border is the white rim on each basket. Work it right after Rnd 22, before joining.

Border gauge: Same as the body, 15 sts = 4 in (10.2 cm). The rim is 16 in (40.6 cm) around.

Rnd 23 (Color B): Ch 1, sc in each st around, join. (60 sts)

Rnd 24 (Color B): Ch 1, rev sc in each st around (working left to right), join. (60 sts) Fasten off and weave in the ends.

Why the math works: The wall stops increasing after Rnd 10, so every round from Rnd 11 to Rnd 24 has 60 sts. The rim keeps that count, so it matches the base exactly and won’t flare or pull in. Each puff replaces 1 sc, so the puff rounds also keep 60 sts. That lets the 4-st repeat divide evenly: 60 ÷ 4 = 15 repeats.

Rev sc tends to be tight. If the rim pulls in, work Rnd 24 with a 5.5 mm hook.

Final Blocking

  1. Weave in any remaining tails on the inside of each basket.
  2. Mist each basket lightly with water until it’s damp but not wet.
  3. Slide a jar about 4.5 in (11.4 cm) across, or a roll wrapped in plastic, into each basket.
  4. Shape each rim into a round and press the base flat.
  5. Lay the straps and hanger tab flat and smooth them straight.
  6. Let everything dry fully, about 24 hours.
  7. Remove the jars or rolls and hang the holder.

Final Quality-Control Checklist

  • Each basket has 60 sts in every round from Rnd 10 to Rnd 24
  • Each basket measures 5 in (12.7 cm) across and 4.25 in (10.8 cm) tall
  • Each basket has 15 puffs in each of its 3 white bands
  • The middle band’s puffs are offset from the top and bottom bands
  • Every rim finishes with a smooth, corded rev sc edge
  • The straps are 4 sts wide and line up vertically on both sides
  • Each gap between baskets is 1.5 in (3.8 cm)
  • The hanger tab is centered on the back, and its white band shows above the rim
  • The ring loop is sewn securely through all 6 sts
  • All ends are woven in on the inside

Troubleshooting

Base ruffles: Your increases are too loose. Use a hook one size smaller for Rnds 1–10.

Base cups like a bowl: Your tension is too tight. Use a hook one size larger for the base only.

Puffs lean or look flat: Pull each loop up to the same height and close with a firm ch 1.

Puffs line up instead of staggering: Check that Rnd 17 starts with sc 2 before the first puff.

Basket tilts forward when hanging: The hanger tab is off center. Resew it over rim sts 1–20.

Straps twist: Pin both ends before sewing and keep each strap flat.

Wall sags with a roll inside: Your yarn may be too stretchy. Switch to 100 percent cotton or use a smaller hook.

Care

Hand wash in cool water with mild soap, then reshape each basket over a jar and let it air dry. Don’t tumble dry, because the cotton may shrink and the straps may stretch.

Green and white crocheted toilet paper holder with three pouches hanging on bathroom wall near window and plant.

Final Notes

Every measurement in this pattern builds on the one before it. The 10-round base reaches 60 sts and 5 in (12.7 cm) across. The wall keeps 60 sts for 14 rounds and rises to 4 in (10.2 cm). In each of the three 3-round tulip bands, the 4-st puff repeat fits 15 times per round. The 60-st rim matches the base, so it stays flat. The 4-st straps are sewn stitch to stitch and leave 1.5 in (3.8 cm) gaps. The 20-st hanger tab covers one third of the rim and tapers to a 6-st ring loop. The finished holder hangs about 21 in (53.3 cm) long.

Check your base first, and the rest will follow.

Happy crocheting!

Leave a Comment