How to Sew a Waist Bag
A waist bag, also called a belt bag or fanny pack, is a practical project that teaches you to install a zipper into a curved panel and to fit an adjustable strap.
Materials
- 1/3 yard (30 cm) outer fabric, such as canvas
- 1/3 yard (30 cm) lining fabric
- Medium fusible interfacing
- One 8 inch (20 cm) zipper
- 1 inch (2.5 cm) webbing, slider, and side-release buckle
- Polyester thread
Tools
- Sewing machine
- Zipper foot
- Iron and pressing mat
- Fabric clips
- Point turner
Steps
- 01
Cut the pieces
Cut two outer body panels and two lining panels, each 9 x 6 inches (23 x 15 cm). Cut two strap pieces 2.5 x 20 inches (6 x 51 cm) from outer fabric and two from interfacing. Fuse interfacing to the outer body panels and to both strap pieces.
- 02
Prepare the zipper panel
Round the two top corners of the front body panel with a cup as a guide. Place the zipper face down along the curved top edge, then lay one lining panel face down over it and pin. Sew with a zipper foot, following the curve slowly.
- 03
Close the zip sandwich
Press the layers away from the zipper and topstitch 1/8 inch (3 mm) on the outer side. Repeat on the other side of the zipper with the back body panel and the second lining panel, keeping the two outer panels on opposite sides of the zip.
- 04
Sew the body
Open the zipper halfway. Pin the two outer panels right sides together and the two lining panels right sides together. Sew around the sides and bottom with a 3/8 inch (1 cm) seam, leaving a 3 inch (8 cm) gap in the lining bottom.
- 05
Box the corners
Flatten each bottom corner so the seams meet and stitch across 1 inch (2.5 cm) from the point. Trim the excess fabric, then turn the bag right side out through the lining gap and press it flat.
- 06
Make and attach the strap
Fold each strap piece in half lengthwise, right sides together, and sew the long edge and one short end. Turn, press, and topstitch both long edges. Thread one end through a slider and a side-release buckle, fold under 1 inch (2.5 cm), and stitch it to the side seam with a box-X stitch.
- 07
Finish
Slip stitch the lining gap closed. Check that the zipper runs smoothly and the buckle opens and closes, then press the whole bag and topstitch the outer edge if you like.
How the zipper sandwich works, and why the curve behaves the way it does
The three-layer stack in the zipper step is doing three jobs at once. The zip sits face down on the outer panel, the lining goes face down on top of it, and one line of stitching runs through all three layers. That seam encloses the woven edge of the zip tape and hides the back of the zipper behind the lining, which is why the inside of the finished bag looks as tidy as the outside. Reverse the order — lining underneath, outer on top — and the seam still sews, but the teeth end up on the wrong face of the panel, and no amount of pressing will move them.
The rounded corners are the part that punishes haste. Zip tape is densely woven and has almost no stretch along its length; the cotton panel does. So the panel has to be eased onto the tape along the curve, nudged in a few threads at a time with the tip of a pin, never pulled to meet it. Fabric stretched to fit springs back the moment it leaves the machine, and that springback is exactly how a wavy zip is born. Sew the curve with a shorter stitch, stop with the needle down, lift the presser foot and pivot every few stitches instead of steering the panel around the needle.
The 1/8 inch (3 mm) topstitch, sewn after pressing the layers away from the zip, is not decoration. It catches the seam allowances lying under the outer panel and pins the curve flat against the tape, so the rounded corner cannot creep back into a wavy edge. It also stops the lining from rolling out along the zip when the bag is turned right side out. Bags that look puffy and soft around the zip almost always skipped this line.
One number is worth noticing: the zip is 8 inches (20 cm) on a 9 inch (23 cm) panel, which leaves roughly 1/2 inch (1 cm) of panel at each end of the tape. When the sides are sewn later with the 3/8 inch (1 cm) seam, the zip stops land inside the seam allowance and disappear into the side of the bag. That is why the slider never runs off the end of the tape and never catches on the boxed corner.
Common mistakes: a wavy zip, offset corners, and a slider sewn shut
A wavy zip comes from one of three things: fabric stretched while pinning, a tension setting too tight for the number of layers, or pressing the seam after it is sewn instead of before. Pressing before topstitching sets the curve; pressing a wavy seam afterwards just sets the wave permanently. To fix one, unpick the topstitch and the seam, press the panel flat again, re-pin with the panel on the bottom so the feed dogs carry the fabric rather than the tape, and slow right down through the curve.
Offset corners come from pinning in the wrong order. When the outer panels are joined to each other and the lining panels to each other, match the two side seams at the zip first and work downward from there, clipping every couple of inches. Pin the bottom corners first and then pull the sides to fit, and the two boxed corners end up at different heights, so the bag hangs crooked. Mark the 3/8 inch (1 cm) seam line on both panels with a ruler and chalk before pinning — the moment one layer slides, the lines tell you.
The trapped slider is the classic beginner problem and it is entirely preventable: the zip has to be open at least halfway before the body is sewn. Closed, the bag becomes a sealed tube with the pull buried inside the lining and no way to reach it, and the bulky zip ends bunch under the presser foot as the needle passes them. Opening it also separates the two zip ends so the foot stays flat instead of riding up over the hardware.
Two smaller traps. The 3 inch (8 cm) lining gap has to stay centred on the bottom edge — shrink it and the bag will not turn cleanly, because both boxed corners have to squeeze through it. And swap the zipper foot back for a regular foot before sewing the body: a zipper foot has no width to hold a 3/8 inch (1 cm) seam allowance steady, and the seam wanders. Backstitch at both sides of the gap so it does not split while you turn the bag through it.
Fabric, interfacing and hardware: what each substitution changes
Canvas is named in the materials list for a reason. It has enough body that the boxed corners hold a shape and the curve stays crisp when the bag is set down. A quilting cotton in the same spot is too limp: the boxed base sags, the zip curve softens, and the bag looks flat after a week of wear. If quilting cotton is what you have, either fuse a heavier interfacing or cut two layers for each outer panel and treat them as one.
The medium fusible interfacing is doing the minimum job — stopping the panel from stretching. Going heavier, to a craft-weight fusible, makes the curved zip seam noticeably thicker. It still works, but the zipper foot has more to climb over at the rounded corners and the 1/8 inch (3 mm) topstitch goes lumpy right where the curve matters most. If you do go heavier, shorten the stitch length over the curve and turn the hand wheel for the last few stitches at each end.
The strap is written for self-fabric: cut 2.5 x 20 inches (6 x 51 cm), fused, folded in half lengthwise and sewn. Folded, it finishes around 1 1/4 inch (3 cm) wide, which threads comfortably through the 1 inch (2.5 cm) hardware. Webbing is the alternative — stronger, it will not fray, and it never needs turning — but it cannot be fused and it will not match the outer fabric. The build is identical either way: fold the end under 1 inch (2.5 cm), then box-X it, exactly as with the fabric strap.
The two hardware pieces do different jobs. The slider is what changes the length; the side-release buckle is what opens. A slider that is slightly narrower than the strap grips better and holds its adjustment under load — if yours slips, a couple of stitches through the strap just behind the slider will lock it. Keep both pieces sized for 1 inch (2.5 cm) strap: a buckle meant for wider webbing will not grip a folded self-fabric strap, and the bag will slide around your waist instead of staying put.
Variations: unlined, patch pocket, crossbody length, and a flat base
The quickest variation is to skip the lining entirely. Cut only the two outer panels and finish the inside seams with bias binding or a flat-felled seam. You save the whole lining sandwich and about half the pressing, but you also lose the enclosed zip tape, so the woven edge of the tape shows on the inside. That is a fair trade on a first attempt and a poor one on a bag you plan to wear daily.
A patch pocket on the back panel is the easiest useful addition, and it costs nothing in difficulty as long as it goes on before the bag is assembled. Cut the pocket to the full width of the back panel and about two-thirds of its height, turn under the top edge, and stitch it flat while the panels are still separate. Add it after the corners are boxed and the pocket fights you the whole way; add it before the body is sewn and it is a five-minute job.
For a crossbody version, cut each strap piece longer before you start. The two 20 inch (51 cm) pieces add up to a strap that adjusts from about 28 to 40 inches (70 to 100 cm), which is waist territory. Roughly 30 inch (76 cm) pieces give about 60 inches (150 cm) of strap, enough to sit across the body. Nothing else about the build changes — the longer strap simply hangs lower, so the box-X at the side seam carries more load and is worth sewing at a shorter stitch length.
For a crisper shape, replace the boxed corners with a separate base panel. Cut a strip as long as the panel is wide plus seam allowance at both ends, and as deep as you want the bag front to back, then sew it between the two outer panels along their bottom edges and repeat for the lining. The base comes out flat rather than soft, which suits a waxed canvas or a bag that has to stand up on a counter. It is more seams and more corners to match, so save it for a second or third bag, once the zip curve is comfortable.
Finishing, reinforcing, and care so the bag lasts
The box-X at the strap ends is structural, not decorative. Two parallel rows of stitching with a diagonal cross between them spread the load over a patch of fabric instead of concentrating it on one line. A strap end held by a single straight seam pulls loose the first time a loaded bag is swung onto the shoulder — the stitches cut through the weave one at a time. Sew the box first, then the X, keep the stitch length short (around 2 mm) so the bars are dense, and backstitch at the start and the finish.
Set the strap length before you cut anything. Thread the strap end through the slider first, then the buckle, then fold it under 1 inch (2.5 cm) and box-X it to the side seam with the fold facing the inside of the bag so the raw edge is hidden. Buckle the bag on over the clothes you actually wear it with and adjust at the slider; the two 20 inch (51 cm) pieces are sized for the 28 to 40 inch (70 to 100 cm) range, so if you sit at the top of that range, cut both pieces a couple of inches longer.
Press the finished bag empty, through a cloth on the outer fabric. Hold the iron and lift it rather than sliding it along the topstitched curve — dragging is what distorts the line you just locked flat. Steam lightly on canvas, and keep the iron off the zip coil: a hot iron held on nylon coil flattens or melts it, and a flattened coil is what makes a zip start skipping teeth.
For care, treat the bag the way you would treat the canvas: spot clean with mild soap, warm water and a soft brush, then let it air dry. If it needs a full wash, use cold water on a gentle cycle with the bag inside a pillowcase or a mesh laundry bag, then reshape it by hand and dry it flat. Skip the dryer — heat shrinks canvas and can lift or bubble the fusible interfacing, which shows up as a wrinkled panel you cannot press out. Store the bag with the zip open so the curve does not take a set.
Frequently asked questions
- Can I use a different length zipper?
- Yes, within limits. The project calls for an 8 inch (20 cm) zip on a 9 inch (23 cm) panel, which leaves about 1/2 inch (1 cm) of panel at each end so the zip stops hide inside the 3/8 inch (1 cm) side seam. A slightly longer zip, say 9 or 10 inches, still works if you shorten it: close the zip, sew a dense bar tack across the teeth where you want the slider to stop, then trim the excess tape about 1/2 inch (1 cm) past the tack. Do not use a separating jacket zip — this method needs a closed-end zip.
- Do I really need a zipper foot?
- It makes the job much easier, and the curve is where it matters most: the narrow foot lets the needle sit right against the teeth without the presser foot climbing the coil. Without one, fit an adjustable or edge-joining foot and move the needle position to the far left, or baste the zip in place by hand first and machine over the basting. Either way, turn the hand wheel for the first inch before you commit to the seam.
- Do the strap pieces really need interfacing?
- If you cut the strap from outer fabric as written, yes. A 2.5 inch (6 cm) fabric strap folded to about 1 1/4 inch (3 cm) has very little body on its own, and it will stretch and cup where the buckle grips it. Medium fusible holds it flat and stops the box-X tearing a hole. If you swap to 1 inch (2.5 cm) webbing for the strap, skip the interfacing — webbing is already stable and cannot be fused — but keep the 1 inch (2.5 cm) fold-under and the box-X.
- Can I make the bag bigger or smaller?
- Yes, but change both panels by the same amount. The outer and lining panels are cut to the same 9 x 6 inches (23 x 15 cm), so if you add 2 inches (5 cm) of width, add it to the lining too or the two will not line up at the zip. The zip has to keep pace as well: an 8 inch (20 cm) zip suits a 9 inch (23 cm) wide panel, so a wider bag needs a longer zip. If you only want more depth, box the corners at 1 1/2 inches (4 cm) instead of 1 inch (2.5 cm) — the bag gets deeper but roughly that much shorter, so cut the panels a little taller to compensate.