Reef Splash is a cheerful fish that keeps loose grocery bags under control. Stuff bags into the mesh body from the top, hang the fish from its tail loop, and pull bags out one at a time through the small white opening in its head.
The colors are bright and ocean-like. The head and mesh use a variegated worsted cotton in royal blue, teal and lime green. A solid teal ruffle marks the “gill line”, and sunny yellow is used for the tail and fins. The eyes are black and white.
This pattern uses US crochet terms. The finished fish measures about 19 in (48.3 cm) long, not counting the hanging loop, and 5.5 in (14.0 cm) wide across the head when flat.
Construction is simple and almost seamless. You start at the white dispenser opening and work the head upward in joined rounds of single crochet. Then you add a front-loop ruffle and work a chain-mesh body into the back loops. The top is gathered into a short collar, flattened and closed, and the tail is worked straight off that closing row. Last, you make and sew on the fins and eyes.
Finished Size and Construction
- Finished length: about 19 in (48.3 cm), plus a 1.5 in (3.8 cm) hanging loop
- Head width (flat): 5.5 in (14.0 cm); circumference 11 in (27.9 cm)
- Dispenser opening: 7 in (17.8 cm) circumference, about 2.2 in (5.6 cm) across
- Skill level: Easy / Intermediate
- Terminology: US
- Yarn weight: Worsted (#4), cotton
- Hook: US H-8 (5.0 mm)
- Number of pieces: 1 body (with the tail worked on), plus 2 side fins and 2 eyes sewn on
- Layout: a single tube hung vertically, tail at the top and head at the bottom
- Head before edging: 4.9 in (12.4 cm) tall
- Mesh body: 11.25 in (28.6 cm) relaxed
- Edging depth: about 0.25 in (0.6 cm) at the opening
Materials
Use 100% cotton or a cotton blend. Cotton holds its shape, doesn’t stretch out much under the weight of the bags, and washes well. A self-striping or variegated yarn makes the head stripes on its own. If you prefer solids, change between blue, teal and lime every 2 rounds.
- Main color (MC), variegated blue/teal/lime: 80 g, about 124 m
- Color A, teal (ruffle): 10 g, about 16 m
- Color B, yellow (tail, fins, loop): 25 g, about 39 m
- Color C, white (opening, eyes): 10 g, about 16 m
- Color D, black (eye centers): 3 g, about 5 m
These amounts include a margin of about 15% for gauge differences and swatching.
Tools:
– US H-8 (5.0 mm) crochet hook
– Tapestry needle
– 4 stitch markers
– Scissors
– Rust-proof pins
– Tape measure
Abbreviations (US Terms)
- ch – chain
- sl st – slip stitch
- sc – single crochet
- hdc – half double crochet
- inc – 2 sc in the same stitch
- sc2tog – single crochet 2 together
- sc3tog – single crochet 3 together
- sk – skip
- FLO / BLO – front loop only / back loop only
- rev sc – reverse single crochet (crab stitch)
- st(s) – stitch(es)
- rep – repeat
Special stitch – Reverse single crochet (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, yarn over and pull through both loops. This makes a corded, rolled edge.
Gauge and Checkpoints
Gauge: 16 sc x 18 rounds = 4 in (10.2 cm) in joined sc rounds. In mesh, 4 rounds of ch-5 loops = 3 in (7.6 cm) when relaxed.
Before you start the full fish, make the eyes and one fin first. They are quick, and they tell you whether your tension is right. One eye should measure 1.25 in (3.2 cm) across.
Checkpoints:
1. After Rnd 3: the white ring is 7 in (17.8 cm) around.
2. After Rnd 7: the head is 5.5 in (14.0 cm) wide when flattened.
3. After Rnd 22: the head is 4.9 in (12.4 cm) tall.
4. After Rnd 27: the first 4 mesh rounds measure 3 in (7.6 cm).
5. After Rnd 38: the mesh measures 11.25 in (28.6 cm) relaxed.
6. After the tail: the tail is 4.75 in (12.1 cm) wide and 2 in (5.1 cm) tall.
If your work is too big, go down one hook size. If it is too small, go up one hook size. A head that is too narrow gives you less room for bags. A head that is too wide lets bags fall out on their own.

Body: Head
The head is worked in joined rounds. Do not turn. Ch 1 at the start of each round does not count as a stitch.
Rnd 1 (C, white): Ch 28 and sl st to the first ch to form a ring, without twisting it. Ch 1, sc in each ch around, then sl st to the first sc. (28 sc)
Rnds 2–3 (C): Ch 1, sc in each st around, then sl st to the first sc. (28 sc) Fasten off white.
Rnd 4 (MC): Join MC. Ch 1, sc 6, inc 4 times, then sl st to the first sc. (32 sc)
Rnd 5: Ch 1, sc 7, inc 4 times, join. (36 sc)
Rnd 6: Ch 1, sc 8, inc 4 times, join. (40 sc)
Rnd 7: Ch 1, sc 9, inc 4 times, join. (44 sc)
Check that the head measures 5.5 in (14.0 cm) wide when flat.
Rnds 8–22: Ch 1, sc in each st around, join. (44 sc in each round)
That makes 15 even rounds. Place a marker at the round joins so you can find the back of the fish later; the joins become the center back. Don’t fasten off MC. Pull the loop up long and put a marker in it to hold it.
Gill Ruffle
Rnd 23 (A, teal), worked in FLO of Rnd 22: Join teal with a sl st in the front loop of any st. This sl st counts as the first sl st.
Sk next st, 5 hdc in FLO of next st, sk next st, sl st in FLO of next st. Repeat from * 11 times. On the last repeat, the final sl st goes into the joining st. Fasten off.
Count: 11 scallops made of 11 sl st + 55 hdc = 66 sts. They are worked over the 44 front loops; each repeat uses 4 sts. The extra stitches make the ruffle flare out from the head.
The back loops of Rnd 22 are still free. The mesh is worked into them.
Mesh Body
Take MC back onto your hook.
Rnd 24 (MC), in BLO of Rnd 22: Work behind the ruffle. Ch 1, sc in BLO of the first st. Ch 5, sk next 3 sts, sc in BLO of next st. Repeat from * 9 more times. Ch 5, sk the last 3 sts, sl st to the first sc. (11 ch-5 loops)
Check: 11 sc + 33 skipped sts = 44. Every back loop is accounted for.
Rnd 25: Sl st in each of the first 3 ch of the first loop. Ch 1, sc in the same loop. Ch 5, sc in next loop. Repeat from * 9 more times. Ch 5, sl st to the first sc. (11 ch-5 loops)
Rnds 26–34: Repeat Rnd 25. (11 ch-5 loops in each round)
Check after Rnd 27: Rnds 24–27 should measure 3 in (7.6 cm) relaxed.
Rnds 35–38: Work as Rnd 25, but make ch 4 instead of ch 5 and sl st in only the first 2 ch to move into position. (11 ch-4 loops in each round)
The shorter chains taper the mesh toward the top. Altogether there are 15 mesh rounds, 24 through 38.
Check that the mesh measures 11.25 in (28.6 cm) from the ruffle line to the top of Rnd 38 when hanging relaxed.
Top Collar and Closing
Rnd 39 (MC): Ch 1, work 2 sc in each ch-4 loop around, join. (22 sc) The mesh gathers in at this round. That is intended.
Rnds 40–41: Ch 1, sc in each st around, join. (22 sc in each round) Fasten off MC.
The collar is now 5.5 in (14.0 cm) around and 2.75 in (7.0 cm) wide when flat.
Flatten the collar with the round joins at the center back, so you have 11 sts on the front layer and 11 on the back.
Tail (Worked On)
Row 1 (B, yellow): Join yellow at one folded edge. Ch 1. Working through 1 front st and its matching back st together each time, sc across. (11 sc) This closes the top of the fish. Turn.
Row 2: Ch 1, inc in the first st, sc 9, inc in the last st. (13 sc) Turn.
Row 3: Ch 1, inc, sc 11, inc. (15 sc) Turn.
Row 4: Ch 1, inc, sc 13, inc. (17 sc) Turn.
Row 5: Ch 1, inc, sc 15, inc. (19 sc) Turn.
First lobe:
– Row 6: Ch 1, sc2tog, sc 5, sc2tog. (7 sc) Leave the other 10 sts unworked. Turn.
– Row 7: Ch 1, sc2tog, sc 3, sc2tog. (5 sc) Turn.
– Row 8: Ch 1, sc2tog, sc 1, sc2tog. (3 sc) Turn.
– Row 9: Ch 1, sc3tog. (1 st) Fasten off.
Second lobe: On Row 5, skip the center st (st 10). Join yellow in st 11 and repeat Rows 6–9 over the last 9 sts.
Check: 9 + 1 skipped + 9 = 19.
Hanging loop: Join yellow in the skipped center st. Ch 12, then sl st back into the same st. Sl st once more to secure it. Fasten off and weave in the end through the loop base twice for strength. The loop folds to about 1.5 in (3.8 cm).
The tail should measure 4.75 in (12.1 cm) across and 2 in (5.1 cm) tall.
Side Fins (Make 2, B)
Row 1: Ch 10. Sc in the 2nd ch from the hook and in each ch across. (9 sc) Turn.
Row 2: Ch 1, sc2tog, sc 7. (8 sc) Turn.
Row 3: Ch 1, sc 6, sc2tog. (7 sc) Turn.
Row 4: Ch 1, sc2tog, sc 5. (6 sc) Turn.
Row 5: Ch 1, sc 4, sc2tog. (5 sc) Turn.
Row 6: Ch 1, sc2tog, sc 3. (4 sc) Turn.
Row 7: Ch 1, sc 2, sc2tog. (3 sc) Turn.
Row 8: Ch 1, sc2tog, sc 1. (2 sc) Turn.
Row 9: Ch 1, sc2tog. (1 st) Don’t fasten off. Go straight on to the fin edging in the Border section.
Eyes (Make 2)
Rnd 1 (D, black): Make a magic ring. Ch 1 and work 6 sc in the ring. Pull the ring closed and join. (6 sc) Fasten off black.
Rnd 2 (C, white): Join white. Ch 1, work 2 hdc in each st around, join. (12 hdc) Fasten off, leaving a 10 in (25.4 cm) tail for sewing.
Each eye is 1.25 in (3.2 cm) across.
Border (Edgings)
Border gauge: the same as the body, 4 sc = 1 in (2.5 cm).
Dispenser Opening Edging
Rnd 1 (C): Turn the fish upside down. Join white in any free loop of the foundation chain on Rnd 1. Ch 1, sc in each free loop around, join. (28 sc)
Rnd 2 (C): Ch 1, rev sc in each st around, join. (28 rev sc) Fasten off.
Why the math works: The foundation chain has 28 loops, so 28 sc lie flat with no ruffling and no pulling in. The opening stays at 7 in (17.8 cm) around. That is snug enough to hold bags in, and the cotton gives enough to let one bag slide out. The rev sc rolls the edge outward into the thick white rim you see on the finished fish. The rim adds about 0.25 in (0.6 cm).
Fin Edging (Each Fin, B)
Continue from the last stitch of Row 9. This top stitch is the tip of the fin.
Rnd 1:
– Tip: 3 sc in the tip st.
– Slanted edge 1: 7 sc, one in each row end from Row 8 down to Row 2.
– Base corner 1: 3 sc in the first ch of the foundation.
– Base: sc 7 in the next 7 free loops of the foundation chain.
– Base corner 2: 3 sc in the last ch.
– Slanted edge 2: 7 sc, one in each row end from Row 2 up to Row 8.
– Sl st to the first sc.
Count per side: tip 3, edge 7, corner 3, base 7, corner 3, edge 7 = 30 sc.
Fasten off, leaving a 12 in (30.5 cm) tail for sewing. Each corner is counted only once, in its 3-sc group. The 7-stitch counts are only the stitches between the corners.
Why the math works: Working one sc per row end on sc rows keeps the edges flat. Putting 3 sc in each corner turns the corners crisply. Each finished fin is about 2.5 in (6.4 cm) tall and 2.75 in (7.0 cm) across the base.
Assembly
- Eyes: Pin both eyes to the front of the head, opposite the round joins, centered over Rnds 14–17. Space them so their centers are 2 in (5.1 cm) apart. Whipstitch around the white edge.
- Fins: Pin one fin to each side fold of the head over Rnds 17–21. The base edge runs up and down, and the tip points up and outward. Sew along the base edge only, so the fin stands free.
- Weave in all ends.
Final Blocking
- Wash the fish gently by hand, or spritz it until damp.
- Lay it flat with the head flattened to 5.5 in (14.0 cm) wide.
- Pull the mesh lightly lengthwise to 11.25 in (28.6 cm) and open the diamonds evenly.
- Pin the tail lobes to points, keeping the tail 4.75 in (12.1 cm) wide.
- Pin each fin tip so it curves slightly upward.
- Fan the ruffle scallops evenly around the head.
- Let it dry completely before you hang it.
Final Quality-Control Checklist
- The head is 5.5 in (14.0 cm) wide and 4.9 in (12.4 cm) tall
- The ruffle has 11 even scallops
- The mesh has 11 loops in every round, with no skipped loops
- The mesh is 11.25 in (28.6 cm) relaxed
- The tail is closed fully across all 11 sts
- The tail lobes match and come to sharp points
- The hanging loop holds when you tug it firmly
- The eyes are level, with centers 2 in (5.1 cm) apart
- The fins sit at matching heights on the two sides
- The opening edging has 28 sts and lies flat
- All ends are woven in securely
Troubleshooting
- Bags fall out of the bottom: Your gauge is loose. Remake the opening with fewer chains (24 instead of 28), and on Rnd 4 work sc 5, inc 4 times to get back to the head count.
- The mesh twists in a spiral: You may be skipping into the wrong loop at the round change. Always sl st into the first loop of the round before you start it.
- The ruffle cups inward: Your hdc are too tight. Work the ruffle with a hook one size larger.
- The tail lobes are uneven: Count Row 5 again. It must be 19 sts, with the center st skipped.
- The fins flop over: Sew them along the full base edge, not just at a few points.
Care
Hand wash or machine wash on a gentle cycle in cool water, then reshape and lay flat to dry. Don’t put it in the tumble dryer; the heat can shrink the cotton mesh.

Final Notes
The measurement chain is simple and easy to check as you go:
– A 7 in (17.8 cm) opening grows to a 5.5 in (14.0 cm) wide head that is 4.9 in (12.4 cm) tall.
– A 44-stitch round splits into 11 mesh loops over 11.25 in (28.6 cm).
– The mesh gathers into a 22-stitch collar.
– The collar closes into an 11-stitch row, which widens into a 19-stitch tail 4.75 in (12.1 cm) wide.
– All together, that makes a fish about 19 in (48.3 cm) long.
Check each step and the whole fish comes together cleanly. Happy crocheting!