Buttonholes are openings you create while knitting to let buttons pass through
A buttonhole is a deliberate gap in your knitted fabric where a button will sit. You create it by binding off a small number of stitches on one row, then casting new stitches back on in the same spot on the next row. The result is a reinforced opening that won't unravel. Most buttonholes take two rows to complete and sit about one stitch in from the edge of your garment.
The two most common methods are the one-row buttonhole (faster, works for small buttons) and the two-row buttonhole (sturdier, better for larger buttons or heavy fabrics). Both are straightforward once you know the sequence. The choice depends on your button size and how much wear the buttonhole will see.
Key Takeaways
- A one-row buttonhole binds off and casts on stitches in a single row, taking about two minutes per hole.
- A two-row buttonhole spreads the bind-off and cast-on across two rows, creating a stronger, more finished edge.
- Mark your buttonhole positions before you start knitting by counting rows from the bottom of your garment.
- Test your buttonhole size on a scrap of the same yarn and stitch pattern before committing to your finished piece.
- Buttonholes should sit one stitch in from the edge to prevent them from stretching or tearing at the garment's border.
Measure and mark buttonhole placement before you knit
Decide how many buttons you need and space them evenly along the front of your garment. A common spacing is one button every 2 to 3 inches, depending on the weight of the fabric and how much stress the buttons will handle. Mark the row where each buttonhole should sit using a stitch marker or a piece of scrap yarn threaded through a stitch.
Count the rows from the bottom of your garment to find the exact spot. For example, if your garment is 20 inches tall and you want five buttons, place the first one about 2 inches from the bottom, then space the others 3.5 inches apart. Write down the row numbers on a piece of paper so you do not lose count while knitting. This takes five minutes and prevents the frustration of finishing a sweater only to realize your buttons are lopsided.
The one-row buttonhole: bind off and cast on in the same row
Work in pattern until you reach the marked row. When you are one stitch away from where the buttonhole should sit, knit that stitch. Then bind off the next 2 to 4 stitches (depending on your button size—test on scrap yarn first). You now have a gap in your work.
On the same row, use the backward loop cast-on method to add the same number of stitches back onto your right needle. Knit the next stitch to anchor the new stitches. Continue knitting the rest of the row in pattern. The buttonhole is complete after this single row. This method is fast and works well for small to medium buttons in lightweight yarn.
The one-row buttonhole can look a bit loose at the edges because the new stitches sit directly above the bound-off ones. If you are using a stretchy yarn or a garment that will see heavy use, the two-row method is more durable.
The two-row buttonhole: spread the opening across two rows for strength
Work in pattern until you reach the marked row. When you are one stitch away from the buttonhole, knit that stitch. Bind off the next 2 to 4 stitches. Do not cast on new stitches yet. Finish the row in pattern, leaving the gap open.
On the next row, work in pattern until you reach the gap. Using the backward loop cast-on, add the same number of stitches you bound off in the previous row. Knit the next stitch to find them. Continue the row in pattern. The buttonhole is now complete. This two-row structure creates a reinforced edge because the new stitches sit one row below the bound-off ones, overlapping slightly and creating a stronger barrier against stretching.
The two-row buttonhole takes a bit longer but is worth the extra effort for cardigans, coats, or any garment where buttons carry real weight. It also looks more polished and professional.
Choose the right cast-on method to prevent loose edges
The backward loop cast-on is the standard choice for buttonholes because it matches the tension of your knitted stitches and does not create a visible ridge. To do it, make a loop with your working yarn, slip it onto your right needle, and tighten it gently. Repeat for each stitch you need to cast on. This takes practice to keep the tension even, but loose stitches here are better than tight ones—you can tighten them later when you weave in ends.
Avoid the long-tail cast-on for buttonholes because it requires two hands and is hard to execute mid-row. The cable cast-on works but creates a visible edge that does not blend as smoothly with the surrounding knitting.
Test your buttonhole size on scrap yarn first
Before you commit to your finished garment, knit a small swatch using the same yarn, needle size, and stitch pattern you are using for the project. Bind off 2 stitches, cast them back on, and see how the button fits. If the button slides through too easily, bind off 3 stitches next time. If it is too tight, bind off only 1 stitch. Most buttons need 2 to 3 stitches bound off, but this varies by yarn weight and button size.
A buttonhole that is slightly snug is better than one that is too loose—the fabric will relax a bit with wear, and a loose buttonhole can slip open on its own. Test the buttonhole after washing and drying your swatch if you plan to wash the finished garment, because some yarns shrink and change how the opening feels.
Reinforce buttonholes with a whip stitch if they feel loose
After you finish knitting and weave in your ends, try each button in its hole. If any buttonhole feels stretchy or loose, you can reinforce it by hand. Thread a needle with yarn that matches your garment. Using a whip stitch, sew around the edge of the buttonhole, catching the loop of each stitch. This takes about one minute per buttonhole and adds durability without changing the look of the garment.
You can also reinforce buttonholes before you sew on buttons by running a strand of yarn through the stitches that border the hole, creating a tighter edge. This is optional for lightweight garments but recommended for coats, cardigans, or anything that will be buttoned and unbuttoned frequently.
Frequently Asked Questions
How many stitches should I bind off for a buttonhole?
Most buttonholes need 2 to 3 stitches bound off, depending on your button size and yarn weight. Knit a test swatch with your yarn and needle size, bind off 2 stitches, and see if your button fits through comfortably. If it is too tight, try 3 stitches. If it is too loose, try 1 stitch.
Can I knit a buttonhole in the middle of a row?
Yes. Buttonholes do not have to sit at the edge of your garment. Bind off and cast on stitches wherever you need the opening, following the same steps. Just make sure the buttonhole is at least one stitch away from the edge to prevent unraveling.
What if I made a mistake and bound off too many stitches?
If you realize the error on the same row, you can unravel back to the buttonhole, bind off the correct number of stitches, and reknit. If you have already finished the row, you can pick up the extra stitches later and decrease them, or leave the buttonhole as is—a slightly larger hole is usually not noticeable once the button is in place.
Do I need to block my buttonholes after knitting?
Blocking helps even out the edges of a buttonhole and can make it look more finished. Wet-block your garment as you normally would, and gently stretch the buttonhole opening to the size you want. Let it dry flat. This is optional but recommended for garments where the buttonholes are visible.
Which buttonhole method is better for stretchy yarn?
The two-row buttonhole is more durable in stretchy yarn because the overlapping stitches prevent the opening from sagging. If you use a one-row buttonhole with stretchy yarn, reinforce it with a whip stitch after knitting to keep it from stretching out of shape.