Buttons suit any opening with an overlap where the closure can be seen: shirts, blouses, cardigans, button-front skirts and cuffs; they hold well, are easy to replace, and need a buttonhole stitch or a hand-worked hole. Snaps suit quick, flat openings that open often and carry little strain: baby clothes, cuffs, bag flaps, the inside of a wrap. A zip is the closure for an opening that must lie flat, open fully and take tension, which means fitted dresses and skirts, trousers, pouches and bags. The fabric and the position of the opening decide more than taste: strain pushes you toward a zip, visibility toward buttons, speed toward snaps.

How do buttons, snaps and zips compare?

FeatureButtonsSnapsZip
LookVisible, part of the designHidden (sew-on) or small metal caps (press)Invisible, or exposed as a feature
Holds under strainGood, with an interfaced placketModerate; press snaps can popBest
Needs an overlapYes, a placket or extensionYesNo, the edges meet
Sewing skillButtonholes need practiceSew-on: easy; press: a tool and a firm fabricInvisible zip: a foot and practice
FabricsWovens; knits with interfacingKnits, wovens, fleece, baby clothesWovens; knits with a stabilized seam
RepairEasy, sew on a new buttonPress snaps are hard to remove cleanlyReplace the whole zip
NotionsButtons, interfacingSnaps, pliers or a setting toolZip, interfacing strip

How does each closure work?

A button passes through a buttonhole, so the two edges must overlap by at least the width of the button: that overlap is the placket or button extension, usually 1.5 to 2 cm (5/8 to 3/4 in) on each side of a blouse front. The hole is worked by machine, with an automatic buttonhole foot or a four-step stitch, or by hand with buttonhole stitch. How to sew buttonholes and buttons walks through both.

A snap has two halves that press together. Sew-on snaps are stitched through their holes and sit inside the overlap; press snaps (also called poppers) are set through the fabric with pliers or a hammer tool and show a cap on the outside. Snap tape, a strip of fabric with snaps at intervals, is sold for baby clothes and duvet covers.

A zip is a strip of teeth with a slider, sewn into a seam. The seam is sewn below the zip and the zip closes the rest, so the edges meet with no overlap. Invisible zips disappear into the seam; regular zips show their teeth or are covered by a lap of fabric. Invisible zip vs regular zip compares the two.

When are buttons the right closure?

Whenever the closure is part of the look and the opening has an overlap. A shirt front, a button-front woven top, a cardigan, an A-line skirt buttoned down the front, a cuff, a waistband. Buttons also hold the fabric flat along the whole opening, because there are many of them: a blouse with a button every 7 to 8 cm (2 3/4 to 3 1/4 in) keeps its front closed where a single snap would gape. The button spacing calculator spaces them so that one sits at the bust.

They do need a firm foundation. A strip of interfacing in the placket stops the fabric stretching around the holes, and on a knit the placket needs it even more. Buttonholes are the skill to acquire: on a scrap first, with the same number of layers, and on most modern machines the automatic foot measures the button for you.

Choose buttons when you want to adjust the fit later (move a button, not a seam), when the garment will be washed hard and often, and when the opening is on show.

When are snaps the right closure?

For openings that are used often and carry little strain. Baby clothes close with snaps because diaper changes are frequent and a toddler's fingers cannot manage buttons. Bag flaps, pocket flaps, the inside of a wrap dress, a fly shield, a removable collar: all places where a snap is quick and nothing pulls hard on it.

Sew-on snaps are the gentle option. They are soft, invisible from outside and take ten minutes to sew. They hold a few hundred grams at most, so they belong under a button that does the real work, or on a lightweight edge. Press snaps hold more, look sporty, and go through fleece and thick knits where a buttonhole would stretch. They need a firm fabric or an interfacing patch, and once set they do not come out without leaving a hole. Set a test snap on a scrap and pull it apart twenty times before you set the real ones.

Snaps are a poor choice where the garment is under tension: a fitted bodice, a waistband, a skirt that sits on the hip. They pop at the worst moment.

When does a garment need a zip?

When the opening has to lie flat and take strain, and when it opens into a seam rather than along an overlap. A fitted dress in a woven has to open enough to pass over your shoulders or hips and then close against the body with no gap, which only a zip does. A pencil skirt or trousers with a fitted waist want a zip at the back or side seam. A zip pouch or a bag pocket needs a closure that keeps everything in and opens with one hand.

Zips carry the most tension without failing and never gape between fasteners. The cost is the sewing: an invisible zip needs its own foot and a careful order of steps, a regular zip needs a zipper foot and a tidy topstitching line, and a zip in a knit needs a strip of interfacing in the seam allowance so the fabric does not stretch along it. How to insert an invisible zip is the method; it rewards practice.

The length comes from the opening you need. For a skirt, the zip runs from the waist to a point below the hip, usually 18 to 22 cm (7 to 9 in); for a dress from the neck or the upper back to the hip, 40 to 60 cm (16 to 24 in). A pattern's notions list gives it; Sewly's sewing guide, for instance, lists the zip length, the elastic length or the number of buttons for the garment and options you picked.

How does the fabric change the choice?

  • Light wovens (lawn, voile, viscose): buttons with interfaced plackets, or an invisible zip. Press snaps tear out of these.
  • Medium wovens (poplin, linen, twill): anything; the garment's shape decides.
  • Heavy wovens (denim, canvas, coating): press snaps, jeans buttons, metal zips, or a shank button sewn with heavy thread.
  • Stable knits (ponte, interlock, French terry): snaps or press snaps, buttons on an interfaced band, zips with a stabilized seam.
  • Stretchy knits (jersey, rib): usually no closure at all; the stretch does the job. If you must, a snap on a stabilized patch or a short zip with knit interfacing behind it.
  • Sheer and fine fabrics: small buttons with hand-worked loops, or a fine invisible zip.

What about ties, hooks and elastic?

Many garments need no fastener. Pull-on trousers and skirts close with an elastic waist, and elastic waistbands compared goes through the options. A wrap skirt or dress closes with ties, which fit several sizes and suit a beginner. Hooks and eyes finish the top of a zip and hold a waistband overlap; a hook and bar is the standard closure on trousers above the fly. Loops, lacing and toggles have their own uses, but the three closures in this article cover the vast majority of garments.

Which should you choose?

  • A shirt, blouse, cardigan or button-front skirt: buttons on an interfaced placket. The closure is the design.
  • A fitted dress, pencil skirt or trousers in a woven: a zip, invisible for dresses and skirts, regular or lapped for trousers.
  • Baby and toddler clothes, bag flaps, removable parts: snaps, sew-on for fine fabrics and press snaps for fleece and jersey.
  • A pouch, a bag, a cushion cover: a zip, or an envelope back for the cushion and no closure at all.
  • A knit garment: no closure if the stretch allows it; otherwise snaps on a stabilized band.
  • A first project with a closure: sew-on snaps or ties first, then buttons, then an invisible zip. Each is a small step up.

If two closures both work, pick the one you can sew well this week and come back to the other when the garment deserves it.