The two main ways to make a buttonhole while you knit
A knitted buttonhole is a deliberate gap in your fabric where a button passes through. 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 two methods that work best are the one-row buttonhole (fast, works for most garments) and the two-row buttonhole (slightly neater, gives you more control). Both are worked into your knitting as you go—you do not add them afterward.
The one-row method is simpler and faster. You bind off your buttonhole stitches, then when ready cast them back on using the cable cast-on or backward loop method. The two-row method spreads the work across two rows, which can make the buttonhole edges look cleaner and is often preferred for fitted garments or fine yarn. Neither method requires you to cut your yarn or break your rhythm.
Key Takeaways
- A one-row buttonhole is made by binding off a small group of stitches, then casting them back on in the same row using cable cast-on or backward loop cast-on.
- A two-row buttonhole binds off stitches on one row and casts them back on the following row, creating a slightly neater edge.
- The number of stitches you bind off and cast back on depends on your button size—test by holding your button against the hole before you finish.
- Buttonholes should be placed at least two stitches in from the edge of your garment to prevent them from splitting or stretching.
- Both methods work best when placed on a knit row rather than a purl row, because the resulting hole is easier to see and adjust.
How to work a one-row buttonhole
On the row where you want your buttonhole, knit to the point where you want it to begin. Stop two stitches in from the edge if possible. Count how many stitches your button needs to pass through—usually three to five stitches, depending on button size. Bind off that many stitches using your normal bind-off method (knit two stitches, pass the first over the second, and repeat).
When you have bound off the correct number of stitches, do not cut your yarn. You now have a gap in your work. On the same row, use the cable cast-on or backward loop cast-on to put new stitches back onto your needle in that gap. Cast on the same number of stitches you bound off. Continue knitting to the end of the row. The buttonhole is now complete and will be visible as a small hole in your fabric.
The cable cast-on creates a neater edge because each new stitch is anchored to the stitch beside it. The backward loop cast-on is faster but can look slightly looser. For most garments, either works fine. If your yarn is very thin or your buttonhole will get heavy use, the cable cast-on is the safer choice.
How to work a two-row buttonhole
On the first row, knit to where you want the buttonhole. Bind off the number of stitches your button needs—usually three to five. Finish the row without casting anything back on. Your fabric now has a gap that spans the width of your buttonhole.
On the next row, knit across until you reach the gap. Using the cable cast-on, cast on the same number of stitches you bound off on the previous row. Continue knitting to the end of the row. The buttonhole is now complete. Because the casting on happens on a separate row, the edges of the hole tend to look more finished and less stretched.
The two-row method also gives you a chance to check your buttonhole size before you finish. After you bind off on row one, hold your button up to the gap and see if it will fit. If it is too small, you can adjust your cast-on count on row two. If it is too large, you can pick up a stitch or two from the edge to tighten it.
Choosing the right buttonhole size
The number of stitches you bind off should match your button size, not a standard number. Before you start your buttonhole, hold your button against your knitting and count how many stitches it covers. That is your starting point. Most buttons need three to five stitches, but a very large button might need six or seven, and a small button might need only two.
Test your first buttonhole before you make the rest. Knit a few rows past it, then hold your button up to the hole. If the button passes through with a little resistance, the fit is right. If it falls through easily, your hole is too big—bind off one fewer stitch on the next buttonhole. If the button does not fit, bind off one more stitch.
Remember that your yarn will relax slightly after you wash the finished garment, so a buttonhole that feels snug when you are knitting may loosen a bit later. If you are uncertain, err on the side of slightly snug rather than loose.
Placement and spacing for multiple buttonholes
Buttonholes should be placed at least two stitches in from the edge of your garment. If they are too close to the edge, the fabric around them can stretch or split, and the button may not sit flat. For a cardigan or coat, the first buttonhole usually goes about one inch down from the neckline, and the last one sits about one inch up from the bottom edge.
Space the remaining buttonholes evenly between the first and last. If you have four buttonholes total, measure the distance from the first to the last and divide by three. That gives you the spacing between each hole. Mark your rows with a stitch marker or a piece of yarn so you do not lose count.
For a garment that will button all the way down, it is easier to plan your buttonholes before you start knitting. Count how many rows you will knit, decide how many buttons you want, and calculate the spacing. Write it down or mark it on your pattern so you do not have to do the math while you are knitting.
Finishing the edges of your buttonhole
A freshly knitted buttonhole works as is, but you can make the edges look neater by working a few stitches around the hole after you finish knitting. The simplest method is to pick up one stitch in each of the four corners of the buttonhole using a crochet hook or spare needle, then bind those stitches off. This reinforces the edges and prevents them from stretching.
If you want a more polished look, you can work a row of single crochet around the entire buttonhole opening using yarn that matches your garment. Start at one corner, work one single crochet stitch in each stitch around the hole, and join at the starting point. This creates a smooth, finished edge that looks intentional.
For most casual garments, finishing is not necessary. The buttonhole will hold up fine without it. But if your garment will see heavy use—a coat you wear every day, or a sweater for a child—reinforcing the edges adds durability.
Common mistakes and how to avoid them
The most common mistake is binding off too many stitches. This creates a hole so large that the button falls through or the garment looks sloppy. Start with fewer stitches than you think you need, test the fit, and add more on the next buttonhole if necessary.
Another mistake is placing the buttonhole too close to the edge. If you bind off stitches that are only one stitch away from the edge, the fabric around the hole can unravel or stretch. Always leave at least two stitches between your buttonhole and the edge of your garment.
A third mistake is forgetting to cast stitches back on after you bind off. If you bind off your buttonhole stitches and then knit to the end of the row without casting anything back on, you will have a gap that gets larger with each subsequent row. The one-row method requires you to cast on when ready after binding off on the same row.
Frequently Asked Questions
Can I make a buttonhole on a purl row?
Yes, but it is harder to see what you are doing and the hole often looks less neat. Buttonholes are easiest to work on a knit row because you can see the stitches clearly and the resulting hole sits flat. If your pattern requires a buttonhole on a purl row, work it the same way—bind off and cast on—but expect to spend a little extra time making sure the edges are even.
What if I make a buttonhole in the wrong place?
If you notice the mistake before you have knitted more than a few rows past it, you can pick out those rows and redo the buttonhole. Use a crochet hook to carefully unravel back to the buttonhole row, then reknit it in the correct location. If the mistake is many rows back, it is usually faster to leave it and adjust the placement of the remaining buttonholes.
How do I make a buttonhole in a ribbed section?
Work the buttonhole on a knit column of the rib, not a purl column. Bind off and cast on the same number of stitches, maintaining the rib pattern on either side of the hole. This keeps the ribbing looking even and prevents the buttonhole from distorting the stretch of the fabric.
Do I need to block my buttonholes after I finish knitting?
Blocking helps even out the edges of your buttonholes and can make them look more finished. Wet-block your garment as usual, and while it is drying, gently stretch the buttonhole opening to the size and shape you want. This is especially helpful if your buttonhole edges look uneven or if the hole is slightly too small.
What is the difference between a buttonhole and a yarn over?
A yarn over creates a decorative hole by wrapping yarn around the needle without binding off stitches. A buttonhole is made by binding off stitches and casting them back on, which creates a stronger, more durable hole that will not stretch. Yarn overs are used for lace patterns; buttonholes are used for fastening buttons.