Denim Cove Hanging Toilet Paper Holder Crochet Pattern

The Denim Cove holder keeps six spare toilet paper rolls off the floor and in easy reach. It has two columns of three round baskets, each sewn onto a sturdy strap. The straps loop over a wooden dowel that hangs from a simple cord.

The baskets are worked in denim-blue cotton and topped with a cream rim. The rim has small eyelets, a row of picot knots and a rolled crab-stitch edge. The look is clean and coastal, and it works in almost any bathroom.

This pattern uses US crochet terms. The finished holder is 11.5 in (29.2 cm) wide and 14.5 in (36.8 cm) tall from the top of the strap loop to the bottom of the lowest basket. Each basket is 5 in (12.7 cm) across and 3.5 in (8.9 cm) tall.

To make it, you crochet six baskets in joined rounds: a flat base, then straight walls, then the cream rim. Next you crochet two flat straps in rows, fold the top of each into a loop, and sew three baskets onto each strap.

Finished Size and Construction

  • Finished size: 11.5 in (29.2 cm) wide × 14.5 in (36.8 cm) tall
  • Skill level: Easy–Intermediate
  • Terminology: US crochet terms
  • Yarn weight: Worsted (#4) cotton
  • Hook: 5 mm (H-8)
  • Number of pieces: 8 (6 baskets, 2 straps)
  • Layout: 2 columns × 3 baskets
  • Basket size: 5 in (12.7 cm) diameter × 3.5 in (8.9 cm) tall
  • Size before rim: 5 in (12.7 cm) diameter × 2.5 in (6.4 cm) wall height
  • Rim depth: 1 in (2.5 cm)
  • Strap: 1.6 in (4.1 cm) wide × 18 in (45.7 cm) long before folding

Materials

Use a smooth, firm worsted-weight cotton or cotton blend at about 190 m per 100 g. Cotton keeps the basket walls upright and handles bathroom humidity well. Avoid fluffy or very stretchy acrylic, because the baskets will sag.

  • Denim blue: 200 g (380 m)
  • Cream: 50 g (95 m)

These quantities include a safety margin of roughly 20%.

Tools:
– 5 mm (H-8) crochet hook
– Tapestry needle
– 4 stitch markers
– Scissors and a measuring tape
– Wooden dowel, 14 in (35.6 cm) long and 0.75 in (1.9 cm) thick
– Cotton cord, 24 in (61.0 cm), for hanging
– A toilet paper roll or a 5 in (12.7 cm) jar for blocking

Abbreviations (US Terms)

  • ch – chain
  • sl st – slip stitch
  • sc – single crochet
  • inc – 2 sc in the same stitch
  • BLO – back loop only
  • sp – space
  • sk – skip
  • rev sc – reverse single crochet (crab stitch)
  • st(s) – stitch(es)
  • RS / WS – right side / wrong side

Special stitches

  • Picot: ch 3, then sl st in the 3rd ch from the hook. This makes a small knot.
  • Reverse sc (rev sc): Working from left to right (right-handed), insert the hook into the next stitch to the right. Yarn over, pull up a loop, then yarn over and pull through both loops. This makes a rolled, rope-like edge.

Gauge and Checkpoints

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

That means 3.75 stitches and 4 rounds per inch, so each round is 0.25 in (0.6 cm) tall.

Make one complete basket before you start the others. Then check these measurements:

  • After Rnd 5 (30 sts): base is 2.5 in (6.4 cm) across.
  • After Rnd 10 (60 sts): base is 5 in (12.7 cm) across and lies flat.
  • After Rnd 20: wall is 2.5 in (6.4 cm) tall.
  • After the rim: basket is 3.5 in (8.9 cm) tall overall.

If your basket is too big, go down to a 4.5 mm hook. Large baskets look floppy and let rolls tip.

If your basket is too small, go up to a 5.5 mm hook. A standard roll is about 4.5 in (11.4 cm) across, so a base smaller than 4.75 in (12.1 cm) will be tight.

If the base cups, your tension is tight. If it ruffles, your tension is loose. Adjust the hook size rather than changing the stitch counts.

Handmade blue crochet basket with cream scalloped edging, hanging from a natural wood rod.

Basket (Make 6)

Work in joined rounds. At the end of each round, sl st to the first sc and ch 1. The ch 1 does not count as a stitch. Keep all joins in a straight line, because that line will be hidden under the strap.

Base

With blue, make a magic ring.

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

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

Rnd 3: sc 1, inc 6 times, join. (18 sts)

Rnd 4: sc 2, inc 6 times, join. (24 sts)

Rnd 5: sc 3, inc 6 times, join. (30 sts)

Checkpoint: 2.5 in (6.4 cm) across.

Rnd 6: sc 4, inc 6 times, join. (36 sts)

Rnd 7: sc 5, inc 6 times, join. (42 sts)

Rnd 8: sc 6, inc 6 times, join. (48 sts)

Rnd 9: sc 7, inc 6 times, join. (54 sts)

Rnd 10: sc 8, inc 6 times, join. (60 sts)

Checkpoint: 5 in (12.7 cm) across and flat.

To keep the base round instead of hexagonal, stagger the increases. On even rounds from Rnd 6 to Rnd 10, work half the plain sc first, then inc, sc across, and end with the remaining plain sc. The stitch counts stay the same.

Walls

Rnd 11: sc in BLO of each st, join. (60 sts)

The unused front loops make a crisp fold line, and the walls turn upward from here.

Rnds 12–20: sc in each st, join. (60 sts each round)

That gives 10 wall rounds in total (Rnds 11–20).

Checkpoint: wall is 2.5 in (6.4 cm) tall and 16 in (40.6 cm) around.

On the final sl st of Rnd 20, switch to cream. Cut the blue yarn and weave in the end.

Make All Pieces

Baskets: Make 6 baskets. Each uses about 22 g blue and 7 g cream.

Straps (make 2): With blue, ch 7.

Row 1: sc in the 2nd ch from the hook and in each ch across. (6 sts)

Rows 2–72: ch 1, turn, sc in each st across. (6 sts)

Checkpoint: 1.6 in (4.1 cm) wide and 18 in (45.7 cm) long. At 4 rows per inch, 72 rows equals 18 in. Fasten off and leave a 12 in (30.5 cm) tail.

Form the loop: Fold Rows 61–72 to the WS so that Row 72 lies on top of Row 49. Whipstitch Row 72 across to Row 49, then sew 4 rows up each side. The open fold at the top is the dowel loop.

From the top of the loop to the bottom end of the strap, you now have 60 rows, or 15 in (38.1 cm).

Layout grid (front view):

 [Loop]        [Loop]
 [Basket A1]   [Basket B1]
   strap          strap
 [Basket A2]   [Basket B2]
   strap          strap
 [Basket A3]   [Basket B3]

Joining

Each strap row is 0.25 in (0.6 cm) tall, and so is each basket round. That means one strap row lines up with one basket round, 1:1. The strap is 6 stitches wide, so it covers exactly 6 basket stitches: 3 on each side of the join seam.

Count the strap rows from the bottom (Row 1). Place the baskets like this:

  • Rows 1–2: fold under the bottom basket’s base.
  • Rows 3–16: bottom basket, covering wall Rnds 11–20 plus rim Rnds R1–R4 (14 rounds).
  • Rows 17–20: gap of 1 in (2.5 cm).
  • Rows 21–34: middle basket.
  • Rows 35–38: gap of 1 in (2.5 cm).
  • Rows 39–52: top basket.
  • Rows 53–60: 2 in (5.1 cm) of strap shows above the top basket.

Check the total: 2 + 14 + 4 + 14 + 4 + 14 + 8 = 60 rows.

To sew each basket: Pin the strap’s WS against the basket’s join seam, with the strap centered over it. Using blue yarn, whipstitch the left edge of the strap to the basket wall, one stitch per row, from the base fold up to Rnd R3. Repeat on the right edge. Leave the rev sc round free so the rolled edge stays unbroken.

For the bottom basket, fold Rows 1–2 under the base and sew them to Rnds 9–10.

Tension: Sew firmly but don’t pull until the wall puckers. Each stitch should just close the gap between the two layers.

Checkpoint: Each column should measure 14.5 in (36.8 cm) from the top of the loop to the bottom of the lowest basket.

Border: Cream Picot Rim

Every basket is finished with the same cream rim. It is worked in the round directly on top of Rnd 20.

Rim gauge: The 4 rim rounds add 1 in (2.5 cm) of height, about 0.25 in (0.6 cm) per round.

Rnd R1 (eyelets): With cream, ch 1. sc in the next 2 sts, ch 2, sk 1 20 times, then join.

Count: 40 sc worked one per stitch, plus 20 ch-2 spaces that replace the 20 skipped stitches. The ch-2 spaces leave small eyelets where the blue shows through.

Rnd R2 (picots): ch 1. sc in the next 2 sc, then (sc, picot) in the ch-2 sp 20 times, then join.

Count: 40 sc in sc, plus 20 sc in spaces, for 60 sc. You also have 20 picots, which are decorative and not counted as stitches.

Rnd R3: ch 1. Sc in each sc, skipping the picots and pushing them to the RS, then join. (60 sts)

The picots now stick out as a row of knots below the top edge.

Rnd R4: ch 1. Rev sc in each st, then join. (60 sts) Fasten off.

Why the math works: 60 divides evenly by 3, so the 3-stitch repeat fits exactly 20 times with no partial repeat. In Rnd R2, each repeat puts 2 sc on 2 sc and 1 sc into the space that replaced 1 skipped stitch. That keeps the count at 60, so the rim stays the same width as the wall and does not flare or pull in.

Final Blocking

  1. Weave in all the ends along the join seam, where the strap will hide them.
  2. Mist each basket lightly with water, or steam it from about 1 in (2.5 cm) away. Never press the iron onto the yarn.
  3. Put a toilet paper roll or a 5 in (12.7 cm) jar inside each basket to set the round shape.
  4. Pinch along the Rnd 11 fold to sharpen the edge between base and wall.
  5. Use your fingertips to turn each picot outward so they sit evenly.
  6. Lay the straps flat and pin them to 1.6 in (4.1 cm) wide.
  7. Let everything dry completely, then sew the baskets on as described in Joining.
  8. Slide the dowel through both loops so the straps sit 6.5 in (16.5 cm) apart, center to center. Tie the cord to both ends of the dowel.

Final Quality-Control Checklist

  • [ ] All 6 baskets are 5 in (12.7 cm) across and 3.5 in (8.9 cm) tall
  • [ ] Each rim has exactly 20 eyelets and 20 picots
  • [ ] All join seams are hidden behind the straps
  • [ ] Gaps between baskets are 1 in (2.5 cm)
  • [ ] Both columns are 14.5 in (36.8 cm) tall, and the baskets line up across the columns
  • [ ] Holder is 11.5 in (29.2 cm) wide
  • [ ] Each basket holds a roll without the wall bulging
  • [ ] All ends are woven in securely

Troubleshooting

The join seam slants. You are joining into the ch-1 instead of the first sc. Always join into the first real stitch.

The walls lean outward. Your BLO round was skipped or worked too loosely. Redo Rnd 11 more firmly.

The rim ruffles. You probably added an extra sc in a space. Recount Rnd R2: it should be 60 sc.

The picots point upward. Push them to the RS before working Rnd R3, and work only into the sc.

The baskets tilt forward. The strap was sewn only near the rim. Sew the full height, from Rnd 11 to Rnd R3.

The columns are different lengths. Count the strap rows again. Placement must follow the row numbers exactly.

Care

Hand wash in cool water, press out the water in a towel, and reshape the baskets over a roll to dry. Remove the dowel before washing.

Crocheted toilet paper holder in blue with cream trim holds white rolls on white subway tile wall.

Final Notes

The measurement chain is simple. The gauge of 15 sc and 16 rounds per 4 in (10.2 cm) gives a 60-stitch base that is 5 in (12.7 cm) across. Ten wall rounds add 2.5 in (6.4 cm) of height, and the 60-stitch rim adds 1 in (2.5 cm), for a basket 3.5 in (8.9 cm) tall. A 72-row strap folds to 15 in (38.1 cm) of hanging length. Because strap rows and basket rounds are both 0.25 in (0.6 cm) tall, the baskets line up with the straps row for row, and the finished holder measures 11.5 in × 14.5 in (29.2 cm × 36.8 cm).

Happy crocheting!

Leave a Comment