This two-tier hanging organizer pairs two oval baskets with an open diagonal lattice, connected by slim wooden dowels. The texture looks like macramé, but every part is basic crochet: single crochet, chains, and one round of crab stitch on the rim.
The sample uses one calm sage-green cotton cord, which suits a bathroom with natural wood and stone. The upper basket holds soap and skincare. The lower basket holds two standard toilet rolls side by side.
This pattern uses US crochet terms. Each basket measures about 12¼ in (31.1 cm) long, 4½ in (11.4 cm) deep, and 5¼ in (13.3 cm) tall. The assembled organizer is 14½ in (36.8 cm) tall, not counting the hanging strap.
Construction is simple. You crochet an oval base from a foundation chain, turn up the wall with a back-loop round, and work a solid band, five lattice rounds, a second solid band, and a crab-stitch border. You make two baskets and one strap, then lash the baskets to two dowels.
Finished Size and Construction
- Finished size (assembled): 12¼ in (31.1 cm) wide × 4½ in (11.4 cm) deep × 14½ in (36.8 cm) tall
- Skill level: Intermediate
- Terminology: US crochet terms
- Yarn weight: Bulky (5), 3 mm cotton cord
- Hook: 5 mm (H-8)
- Number of pieces: 3 crocheted pieces (2 baskets, 1 strap) and 2 wooden dowels
- Layout: 2 baskets stacked vertically, 4 in (10.2 cm) apart
- Piece size: each basket 12¼ × 4½ × 5¼ in (31.1 × 11.4 × 13.3 cm)
- Size before border: wall height 4¾ in (12.1 cm), rim circumference 29 in (73.7 cm)
- Border depth: ½ in (1.3 cm)
Materials
Yarn: Use a 3 mm cotton cord or bulky cotton of about 100 m per 100 g (109 yd per 3.5 oz). Cotton holds the basket shape and handles bathroom humidity well. Avoid acrylic, which makes the walls sag.
- Sage Green: 320 g, 320 m (350 yd)
This amount covers both baskets, the strap, and the lashing cord. It includes a margin of about 15%.
Tools:
- 5 mm (H-8) crochet hook
- 6 locking stitch markers
- 2 wooden dowels, ⅝ in (1.6 cm) diameter, each cut to 14½ in (36.8 cm)
- Fine sandpaper and optional clear wood sealer
- Tapestry needle
- Scissors and measuring tape
- Spray starch or a 1:1 mix of white glue and water (optional, for stiffening)
Abbreviations (US Terms)
- ch – chain
- sc – single crochet
- dc – double crochet
- sl st – slip stitch
- inc – 2 sc in the same stitch
- sk – skip
- BLO – back loop only
- st(s) – stitch(es)
- rnd(s) – round(s)
- PM – place marker
- rev sc – reverse single crochet (crab stitch)
Special stitch: rev sc (crab stitch). Work from left to right (right to left if you crochet left-handed). Insert the hook into the next stitch to the right, yarn over, and pull up a loop. Yarn over and pull through both loops. Each rev sc goes into 1 stitch, so the count does not change.
Gauge and Checkpoints
Gauge: 14 sc and 14 rnds = 4 in (10.2 cm) in sc worked in the round. One lattice rnd is about ½ in (1.3 cm) tall.
Make one complete base before you commit to two baskets. The base is your gauge swatch.
Checkpoints:
- After Rnd 1: the strip is about 8¼ in (21.0 cm) long.
- After Rnd 8 (base): 12¼ × 4½ in (31.1 × 11.4 cm), with 102 sts.
- After Rnd 12: the solid band is 1⅛ in (2.9 cm) tall.
- After Rnd 17: the wall is 3⅝ in (9.2 cm) tall.
- After Rnd 21: the wall is 4¾ in (12.1 cm) tall.
- After Rnd 23: the wall is 5¼ in (13.3 cm) tall.
Too big (more than ¼ in / 0.6 cm over at Rnd 8): go down to a 4.5 mm hook. Too small: go up to a 5.5 mm hook. Don’t change the stitch counts, because the lattice repeat depends on 102 sts.

Basket (Make 2)
Work in continuous spirals without joining. PM in the first st of each rnd and move it up as you go.
Oval Base
Ch 30.
Rnd 1: Sc in 2nd ch from hook and in next 27 ch, 3 sc in last ch. Rotate and work along the free loops of the foundation: sc in next 27 ch, 2 sc in last ch (the same ch as the first sc). (60 sts)
This gives two straight sides of 27 sts and two ends of 3 sts each: 27 + 27 + 3 + 3 = 60.
From here, every base rnd follows one formula. k is the number of plain sc before each inc.
Rnd 2 (k = 0): Inc, sc 27, inc 3 times, sc 27, inc 2 times. (66 sts)
Rnd 3 (k = 1): (Sc 1, inc), sc 27, (sc 1, inc) 3 times, sc 27, (sc 1, inc) 2 times. (72 sts)
Rnd 4 (k = 2): (Sc 2, inc), sc 27, (sc 2, inc) 3 times, sc 27, (sc 2, inc) 2 times. (78 sts)
Rnd 5 (k = 3): (Sc 3, inc), sc 27, (sc 3, inc) 3 times, sc 27, (sc 3, inc) 2 times. (84 sts)
Rnd 6 (k = 4): (Sc 4, inc), sc 27, (sc 4, inc) 3 times, sc 27, (sc 4, inc) 2 times. (90 sts)
Rnd 7 (k = 5): (Sc 5, inc), sc 27, (sc 5, inc) 3 times, sc 27, (sc 5, inc) 2 times. (96 sts)
Rnd 8 (k = 6): (Sc 6, inc), sc 27, (sc 6, inc) 3 times, sc 27, (sc 6, inc) 2 times. (102 sts)
Each rnd adds 6 sts, 3 at each curved end, so both ends grow as flat half-circles. In Rnd 8 the sts fall as 8 (end) + 27 (side) + 24 (end) + 27 (side) + 16 (end). That makes each curved end 24 sts (8 + 16 = 24) and each straight side 27 sts. Check: 24 + 27 + 24 + 27 = 102.
Checkpoint: the base lies flat and measures 12¼ × 4½ in (31.1 × 11.4 cm). If it ruffles, your tension loosened. If it cups, your tension tightened.
Lower Solid Band
Rnd 9: Sc in BLO of each st around. (102 sts) The unused front loops form the crisp ridge where the base meets the wall.
Rnds 10–12: Sc in each st around. (102 sts)
Checkpoint: the band is 1⅛ in (2.9 cm) tall and stands upright.
Lattice Section
The lattice is a chain-loop net. Each rnd’s sc sits in the centre of the loop below it, so the bars cross diagonally and leave diamond-shaped holes. The thick cord makes the bars look rounded and woven.
Rnd 13 (setup): Sc in first st, ch 5, sk 2, sc in next st. Repeat from * 32 more times, for 33 repeats. You have now used 1 + (33 × 3) = 100 sts. Ch 2, sk the last 2 sts, and dc in the first sc to close the 34th loop. (34 loops)
The ch 2 + dc equals a ch-5 loop and leaves your hook at the centre of that loop.
Rnds 14–16: Sc around the post of the dc just made, ch 5, sc in next ch-5 loop. Repeat from * 32 more times. Ch 2, dc in the first sc. (34 loops)
Rnd 17: Sc around the post of the dc just made, ch 5, sc in next ch-5 loop. Repeat from * 32 more times. Ch 5, sl st in the first sc. (34 loops) This final ch 5 closes the round with a full-size loop, ready for the conversion round.
Checkpoint: the wall is 3⅝ in (9.2 cm) tall. The lattice section alone is 2½ in (6.4 cm). Gently stretch it upward so the diamonds open evenly.
Upper Solid Band
Rnd 18 (conversion): Ch 1, work 3 sc in each ch-5 loop around. (102 sts)
This conversion places 3 sc in each of 34 loops (34 × 3 = 102). That returns you to exactly the count of Rnd 12, so the upper band matches the lower band.
Rnds 19–21: Sc in each st around. (102 sts)
At the end of Rnd 21, mark the sections by counting from the first st: 8 (end), 27 (side), 24 (end), 27 (side), 16 (end). PM at the start of each straight side. Choose one straight side as the back.
Checkpoint: the wall is 4¾ in (12.1 cm) tall and the rim measures 29 in (73.7 cm) around.
Make All Pieces
- Baskets: 2 in Sage Green, about 145 g / 145 m (159 yd) each
- Strap: 1 in Sage Green, about 5 g / 5 m (5.5 yd)
- Lashing cord: 8 lengths of 18 in (45.7 cm) each, cut from Sage Green
Strap: Ch 31. Sc in 2nd ch from hook and in each ch across. (30 sc) Fasten off and leave a 10 in (25.4 cm) tail. The strap measures about 8½ in (21.6 cm).
Layout (back view):
[ strap ]
+-----------------------+
| UPPER BASKET | 5¼ in (13.3 cm)
+--|-----------------|--+
| dowel dowel | 4 in (10.2 cm) gap
+--|-----------------|--+
| LOWER BASKET | 5¼ in (13.3 cm)
+--|-----------------|--+
Joining
The baskets are joined with dowels instead of seams. Each dowel runs the full 14½ in (36.8 cm) height along the outside of both back walls.
- Position: On each basket’s back side (27 sts), count 3 sts in from each end of the straight section. Each dowel sits over that st. The two dowels end up about 6 in (15.2 cm) apart.
- Lower basket: Stand the dowels against the back wall. Line up their bottom ends with the Rnd 9 ridge.
- Lash points: At each dowel, wrap one 18 in (45.7 cm) cord length 4 times around the dowel and through the solid band. Work into Rnds 10–11 for the lower band and Rnds 19–20 for the upper band. Tie a square knot on the inside of the basket. That gives 2 lash points per dowel per basket, 8 in total.
- Upper basket: Leave a 4 in (10.2 cm) gap above the lower basket’s rim. Line the upper basket’s rim up with the top ends of the dowels and lash it the same way.
- Strap: Sew both strap ends to the inside of the upper basket’s back band (Rnds 19–21), 1 in (2.5 cm) apart and centred.
Tension: Pull each lash snug enough that the dowel can’t slide, but not so tight that the band puckers. Snug every knot again after the first day of use.
Checkpoint: the assembled height is 5¼ + 4 + 5¼ = 14½ in (36.8 cm), and both rims are level.
Border
Work the border on each basket after Rnd 21 and before joining.
Border gauge: 14 rev sc = 4 in (10.2 cm). Crab stitch tends to tighten, so work it loosely. If the rim pulls in, use a 5.5 mm hook for the border only.
Rnd 22: Ch 1, sc in each st around. (102 sts: 27 per straight side, 24 per curved end)
Rnd 23: Ch 1, rev sc in each st around. (102 sts: 27 per straight side, 24 per curved end) Sl st to the first st and fasten off. Weave in the ends.
Why the math works: Both border rnds are worked 1 st into each st. There are no increases or decreases, so the rim stays at 29 in (73.7 cm) and the wall rises straight up instead of flaring. The per-side counts add up to the rim total: 27 + 24 + 27 + 24 = 102. Together the two rnds add ½ in (1.3 cm), bringing the basket to 5¼ in (13.3 cm).
Final Blocking
- Lightly mist each basket with water, or with starch if you want a firmer wall.
- Fill it with a towel-wrapped box or folded towels to about 12 × 4½ in (30.5 × 11.4 cm).
- Shape the curved ends into smooth half-circles and press the ridge crisp.
- Pull the lattice upward so the diamonds open evenly all the way around.
- Let it dry for 24 hours, away from direct heat.
- Sand the dowel ends and seal them if you like, then assemble.
Final Quality-Control Checklist
- [ ] Each base measures 12¼ × 4½ in (31.1 × 11.4 cm) and lies flat.
- [ ] Every solid rnd has 102 sts.
- [ ] Every lattice rnd has 34 loops.
- [ ] Each wall stands 5¼ in (13.3 cm) tall.
- [ ] Both baskets have matching rims of 29 in (73.7 cm).
- [ ] The dowels are about 6 in (15.2 cm) apart.
- [ ] The gap between baskets is 4 in (10.2 cm).
- [ ] All 8 lash knots are tight and tucked inside.
- [ ] The strap is centred and holds the weight without twisting.
Troubleshooting
The base ruffles. Your sts are too loose or you added extra incs. Recount against the formula and go down a hook size.
The base cups upward. You are missing incs or working too tightly. Check that each rnd adds exactly 6 sts.
The lattice is lopsided. Make sure every sc goes into the centre of a loop, never into a sc. Recount to 34 loops.
Rnd 18 isn’t 102 sts. Check that Rnd 17 ended with a full ch-5 loop, not ch 2 + dc.
The rim flares. The border is too loose. Redo Rnd 23 with a smaller hook.
The basket tilts when hung. Center the strap more carefully, or tighten the lash points on the lower side.
Care
Remove the baskets from the dowels and hand wash in cool water with mild soap. Reshape and dry flat over a towel-wrapped form, then re-lash.

Final Notes
The whole design comes down to one measurement chain. Gauge of 14 sc = 4 in (10.2 cm) gives a 102-st base of 12¼ × 4½ in (31.1 × 11.4 cm). Those 102 sts become 34 lattice loops and return to 102 sts at Rnd 18. The border keeps the rim at 29 in (73.7 cm). Each wall reaches 5¼ in (13.3 cm), and two baskets plus a 4 in (10.2 cm) gap give the full 14½ in (36.8 cm) organizer. Check your Rnd 8 base first and everything after it will fall into place.
Happy crocheting!