This tote bag combines four flower-center granny squares with an oval base, a sturdy top band, and crocheted straps. The construction is straightforward if you know basic double crochet and single crochet stitches. You will join squares into a ring, crochet a base separately, then sew everything together for a structured bag with serious style.
Get the Ad-Free PDF Pattern
You can find the free pattern below, or you can purchase the ad-free printable PDF from my shop.
Get the Printable PDF →
The color blocking creates those beautiful stepped diamond frames you see in the photo. Caramel brown and ivory work together to highlight the radiating flower centers while the dense bands add durability where you need it most.
This is an intermediate level project, but do not let that scare you off. If you can work in the round and follow stitch counts, you can absolutely make this bag.
Materials You Will Need
Gather everything before you start so you can work through the project smoothly.
Yarn:
Hooks:
Notions:
The cotton webbing is worth considering if you plan to carry heavier items. Cotton yarn stretches over time, and the webbing inside the straps prevents that saggy handle look.
Gauge and Finished Size
Getting your gauge right matters a lot for this bag since you are joining multiple pieces that need to fit together.
Gauge: One blocked 7-round square should measure 18 cm along each side. For the dense bands, aim for approximately 20 single crochet stitches per 10 cm.
Finished Size: The target body measures approximately 34 to 36 cm wide when laid flat and 25 to 28 cm high. The handle drop is about 23 to 25 cm. Four squares give you a 72 cm circumference.
Make a test square and a 10 cm single crochet swatch before committing to the full project. Trust me on this one. Adjusting your hook size now is much easier than ripping back later.
Abbreviations and Terminology
This pattern uses US crochet terminology. Here is everything you need to know:
Important note: Turning chains do not count as a stitch unless a step explicitly says they do.
Flower Squares: Make Four
You will create four identical squares that form the body of the tote. Work all rounds with the right side facing you, joining at the end of each round.
The chain 3 at the beginning of double crochet rounds counts as a double crochet. Join to the top of this chain 3 at the end of each round.
When changing colors, do it on the final pull-through of the last stitch before joining. Alternatively, you can fasten off completely and join the new color neatly.
Round 1: Color B (Ivory)
Create an adjustable ring. Chain 3, then work 11 dc into the ring. Join to the top of the chain 3.
Stitch count: 12 dc
Tighten the center of your magic ring securely.
Round 2: Color B (Ivory)
Chain 3, then work 1 dc in the same stitch. Work 2 dc in each of the remaining 11 stitches. Join.
Stitch count: 24 dc
Work loosely enough that your fabric lies flat. The paired stitches form the radiating flower center that makes these squares so pretty.
Round 3: Color B (Ivory)
Chain 3. In the same stitch, work (dc, ch 2, 2 dc) for your first corner. Dc in the next 5 stitches. Repeat the following 3 more times: (2 dc, ch 2, 2 dc) in the next stitch, then dc in the next 5 stitches. Join.
Stitch count: 36 dc total, plus four corner chain-2 spaces. You should have 9 dc between each corner space.
Round 4: Color A (Caramel Brown)
Join Color A in any corner chain-2 space. In each corner space, work (2 dc, ch 2, 2 dc). Work 1 dc in every dc along each side. Join.
Stitch count: 52 dc total, with 13 dc between corners
Round 5: Color A (Caramel Brown)
Repeat Round 4, working a dc in every side stitch.
Stitch count: 68 dc total, with 17 dc between corners
Round 6: Color B (Ivory)
Repeat Round 4.
Stitch count: 84 dc total, with 21 dc between corners
Round 7: Color A (Caramel Brown)
Repeat Round 4. Fasten off.
Stitch count: 100 dc total, with 25 dc between corners
Block each square to 18 x 18 cm. Be careful not to distort the corner angles. All four squares must match in size for the bag to come together properly.
When you look at the right side, you will see a large pale ivory center with broad caramel brown framing and a thin ivory accent stripe.
Joining the Body Ring
Arrange your four squares side by side with all right sides facing up. Using Color B, sew adjacent vertical edges together through the outer loops only.
Match the 25 dc between corner spaces on each edge, then secure each corner with 2 small stitches. Join the last square to the first to create a ring. Leave the top and bottom edges open.
Lay the ring flat with one square centered on the front. The seams will sit near the curved side edges of the bag.
Creating the Oval Base
Switch to your smaller 3.5 mm hook for the base.
Base Round 1: Color A
Chain 22. Work 1 sc in the second chain from the hook, then sc in the next 19 chains. Work 3 sc in the last chain. Rotate to work along the underside of your foundation chain. Sc in the next 19 chains, then work 2 sc in the last chain beside your first sc.
Stitch count: 44 stitches
Work in continuous rounds from here, using a stitch marker to track your first stitch. You have 19 straight stitches on each side and 3 turning stitches at each end.
Base Round 2
Work 2 sc in the first stitch, sc in the next 19 stitches, inc in each of the next 3 stitches, sc in the next 19 stitches, inc in each of the last 2 stitches.
Stitch count: 50 stitches
Base Round 3
(Sc, inc), sc 19, (sc, inc) 3 times, sc 19, (sc, inc) twice.
Stitch count: 56 stitches
Base Rounds 4 through 9
For each round, follow this formula where n equals the round number: (sc in next n-2 sts, inc) once, sc 19, (sc in next n-2 sts, inc) 3 times, sc 19, (sc in next n-2 sts, inc) twice.
For Round 9, you will work 7 sc before each increase.
Stitch counts by round: Round 4 has 62, Round 5 has 68, Round 6 has 74, Round 7 has 80, Round 8 has 86, Round 9 has 92
Base Rounds 10 through 18
Continue with the same oval formula. Round 10 uses 8 sc before each increase. Round 18 uses 16 sc before each increase. Keep the 19-stitch straight sections aligned from round to round.
Stitch counts by round: 98, 104, 110, 116, 122, 128, 134, 140, 146
Fitting the Base and Creating the Bands
Base Fit Check
Your final base has 146 stitches, which creates approximately 73 cm of perimeter at gauge. Measure this against your 72 cm blocked square ring. You will ease about 1 cm during sewing.
If your base measures more than 2 cm too large or too small, adjust your hook size and remake the final rounds. Do not force folds into the join.
Base Wall
Work 1 round of sc in back loops only.
Stitch count: 146 stitches
Then work 4 rounds of sc in both loops.
Stitch count: 146 stitches per round
This creates a structured rim rising from the oval that gives the bag its shape. Slip stitch to finish and fasten off, leaving a long tail for sewing.
Lower Body Border: Color B
Join Color B at one lower corner of a square. Around each square bottom, work 1 sc in each of its 25 dc and 2 sc in each corner space. This gives you 29 sc per square, totaling 116 stitches around.
At shared seam corners, each square contributes its own 2 sc. Join. Chain 1 and work a second round of 116 sc. Join and fasten off.
Joining the Base to the Body
Place markers at quarter points on both the base and the body. Match the markers and sew with Color A through both layers using small whipstitches.
Each quarter matches 29 body stitches to either 36 or 37 base stitches. Make 2 base attachments to one body stitch at 7 or 8 evenly spaced positions in each quarter. Do not skip any body stitches. The different stitch densities are intentional, and the measured circumferences will match.
Top Band Round 1: Color B
Work 116 sc around the top edge exactly as you did for the lower body edge. Join. If this round contracts the squares, switch to your larger hook.
Top Band Round 2: Color A
Chain 1. Distribute 28 increases by repeating (sc 3, inc) 28 times, then sc 4.
Stitch count: 144 stitches
This provides the stitch count for the smaller hook and dense band. Switch to your 3.5 mm hook after this round.
Top Band Rounds 3 through 8
Sc in each stitch, joining every round.
Stitch count: 144 stitches per round
Finish with one loose slip stitch round. The opening should remain about 72 cm around without flaring or cinching. If your gauge differs, recalculate the top band target from your circumference multiplied by your sc per cm, and distribute increases evenly.
Straps: Make Two
Using your smaller 3.5 mm hook and Color A, chain 7.
Row 1: Sc in the second chain from the hook and in the next 5 chains.
Stitch count: 6 stitches
Chain 1, turn. Continue working rows of 6 sc until your strip measures 60 cm. Make two identical strips.
Fold each strip lengthwise and whipstitch the long edges together to create a thick narrow strap. Leave 4 cm flat at both ends for sewing to the bag.
For lower stretch, enclose cotton webbing inside the strap before seaming it closed.
Attaching the Handles
Lay the bag flat with the front motif centered. Mark two attachment points on the front about 8 cm apart, then mark matching points on the back.
Sew each flat strap end 4 cm down inside the top band using a rectangle and diagonal cross pattern. Sew through several rows of the band, not only the top loops. Both handles must have the same drop.
Pull gently on each strap to check your attachment before adding any weight to the bag.
Tassels: Make Two
Using Color A, wrap yarn 35 times around a 10 cm piece of cardboard. Thread a doubled 20 cm strand through the top and tie securely. Cut the bottom loops. Bind firmly 1.5 cm below the top and trim the ends evenly.
Attach one tassel to each side seam just below the top band. Weave the attachment tails deeply through at least 3 cm of fabric for security.
Optional Lining
Measure the actual inside width and height of your finished bag. Cut two fabric rectangles to your measured flat width plus 2 cm and height plus 2 cm.
Sew the sides and bottom with 1 cm seam allowances. Box the lower corners to match your measured base depth. Turn the upper edge under 1 cm, press, and hand sew just below the top band, catching yarn on the inside only.
Keep the lining slightly roomy. If you reinforced your straps with webbing, place the handle reinforcing ends between the lining and the crochet.
Finishing Your Tote
Weave in all yarn ends through several directions for security. Support the base while shaping the bag and allow it to dry flat after blocking.
Test with a light load first, checking the base seam and strap attachments carefully. Cotton stretches over time, so adding the lining and reinforced straps before carrying heavier items is highly recommended.
Record your final size, yarn usage, and any gauge changes after completing the bag. This information will be invaluable if you want to make another one or adjust the pattern for a different size.

Tips for Success
Block your squares carefully. Taking the time to block each square to exactly 18 x 18 cm makes assembly so much easier. Damp blocking works well for cotton yarn.
Check your joins. The seams between squares take stress when the bag is loaded. Make sure they are secure before moving on.
Consider the webbing. If you plan to use this as an everyday bag, the cotton webbing inside the straps is worth the extra step. Your shoulders will thank you.
Test before trusting. Cotton bags need a break-in period. Load it lightly for the first few uses to let the fibers settle.
I hope you love making this Caramel Diamond Granny Tote Crochet Pattern as much as I enjoyed putting it together for you. The combination of those radiating flower centers and the bold color blocking creates such a striking finished piece. Thank you so much for choosing this pattern for your next project!
If you want to find this pattern easily later, go ahead and save it to your Pinterest boards. And please, if you make this tote, I would absolutely love to see it. Drop a comment below or tag me on Instagram with your finished bag. Happy crocheting!
Want a Quick & Easy Printable Version?
Get a clean, beautifully formatted PDF of this pattern — easy to follow step by step, ready to print or save on any device. No scrolling, no distractions, just the pattern.
Get the Printable PDF →