The Four Main Ways to Make a Buttonhole
A buttonhole is a deliberate gap in your knitted fabric where a button passes through. The simplest method is the yarn-over buttonhole, which you make by dropping a stitch and creating a new loop in a single row—it takes one row of knitting and works for small buttons. For larger buttons or a sturdier hole, the two-row buttonhole binds off stitches over two rows instead of one. The one-row bind-off buttonhole is faster than the two-row version but requires more attention to tension. The eyelet buttonhole uses yarn-overs and decreases to create a decorative hole that works best on lightweight garments.
Which method you choose depends on your button size, your yarn weight, and how much time you want to spend. A yarn-over buttonhole on fingering-weight yarn might be too small for a large coat button, but perfect for a cardigan. A bind-off buttonhole on worsted weight holds up better to repeated use. Start with the yarn-over method if this is your first buttonhole—it is the fastest to learn and the easiest to fix if you make a mistake.
Key Takeaways
- The yarn-over buttonhole is the simplest method and takes only one row, making it ideal for your first buttonhole on a lightweight garment.
- Bind-off buttonholes (one-row or two-row) create a sturdier hole that resists stretching and works better for heavy coats or frequently used buttons.
- Measure your button diameter before you knit and test your chosen method on a swatch to make sure the hole is large enough.
- All buttonhole methods require you to know where the hole goes before you start knitting, so plan your buttonhole placement on paper first.
The Yarn-Over Buttonhole (Easiest for Beginners)
The yarn-over buttonhole is one row of work and uses only two stitches. On the row where you want the hole, knit to the spot where the buttonhole should be. Bring your yarn to the front of your work (as if you were about to purl), then knit the next two stitches together. This decreases one stitch. Bring your yarn to the front again and knit the next stitch normally. You have now created a hole: the yarn-over added a new loop, and the knit-two-together removed a stitch, leaving a gap.
On the next row, purl (or knit, depending on your pattern) across normally. The yarn-over loop becomes a regular stitch, and the hole is complete. This method works best on fingering or sport-weight yarn and for buttons smaller than half an inch across. The hole will stretch slightly with use, so if your button is exactly half an inch, go up one yarn-over to make the hole slightly larger.
Common mistake: forgetting to bring the yarn forward before you knit the next stitch after the decrease. If you skip this step, you will not create a hole—you will just have a decrease with no opening. Slow down and say it aloud: "Yarn forward, knit two together, yarn forward, knit one."
The One-Row Bind-Off Buttonhole (Fastest for Sturdy Holes)
A one-row bind-off buttonhole is faster than a two-row version and creates a hole that does not stretch. On the row where the buttonhole goes, knit to the spot. Bind off the number of stitches your button needs (usually three to five stitches for a medium button). To bind off, knit one stitch, pass the previous stitch over it, knit another stitch, pass the previous stitch over it, and repeat until you have bound off the right number of stitches.
Stop binding off and knit the next stitch normally. Now you have a gap. On the same row, before you turn your work, cast on the same number of stitches you just bound off using the cable cast-on method. To cable cast-on: insert your needle between the last stitch on your left needle and the one before it, pull yarn through, and place the new loop on your left needle. Repeat this for each stitch you need to cast on. Then knit to the end of the row.
On the next row, purl (or knit) across normally. The new stitches you cast on are now part of your fabric, and the hole is complete. This method works well on worsted weight and heavier yarns. The hole will not stretch because you bound off and cast on instead of using a yarn-over. Common mistake: casting on too loosely. If your new stitches are much looser than the stitches around them, the buttonhole will look sloppy. Cast on with slightly tighter tension than your regular knitting.
The Two-Row Bind-Off Buttonhole (Most Durable)
The two-row bind-off buttonhole is the sturdiest option and the best choice for coats, jackets, or any garment where the buttonhole will get heavy use. On the first row, knit to where the buttonhole goes. Bind off three to five stitches (depending on your button size) using the same method as the one-row buttonhole. Knit to the end of the row and turn your work.
On the second row, purl to the gap you created. Now cast on the same number of stitches you bound off using the cable cast-on method. Purl to the end of the row. On the third row, knit across normally. The buttonhole is now complete and reinforced by two rows of work.
This method takes longer but creates a hole that holds its shape through years of buttoning and unbuttoning. It is especially useful on heavy coats or children's garments that will be worn hard. The extra row also gives you a chance to catch mistakes—if your cast-on stitches look wrong, you can rip back one row and fix them before moving forward.
The Eyelet Buttonhole (Decorative Option)
An eyelet buttonhole uses yarn-overs and decreases to create a small, decorative hole. It works best on lightweight garments and small buttons (under half an inch). On the row where the buttonhole goes, knit to the spot. Yarn over (bring yarn to front, then to back over the needle), then knit two stitches together. Knit to the end of the row.
On the next row, purl across normally. The yarn-over creates a loop, and the decrease removes a stitch, leaving a small hole. The eyelet is complete. This method is identical to the yarn-over buttonhole but is called an eyelet when it is used for decoration rather than function. Eyelets are popular on baby garments, shawls, and lace patterns. They are too delicate for heavy use but beautiful on the right project.
Planning Your Buttonhole Placement
Before you cast on, decide where your buttonholes will go. Measure your button and add one-eighth inch to the diameter—this is your target hole size. For a half-inch button, aim for a five-eighths-inch hole. Write down the row number where each buttonhole should start. If your pattern does not tell you, a common placement is to space buttonholes evenly down the front of a cardigan, with the first hole about one inch from the top and the last hole about one inch from the bottom.
Test your chosen buttonhole method on a swatch using the same yarn and needles you will use for the garment. Knit a small rectangle (at least four inches wide and six inches tall), make one buttonhole in the middle, and bind off. Wet-block the swatch and let it dry completely. Try threading your button through the hole. If it is too tight, your method creates a hole that is too small—try the next size up (more stitches bound off or a larger yarn-over). If it is too loose, the hole will stretch with use—consider switching to a sturdier method like the two-row bind-off.
Fixing Buttonhole Mistakes
If you knit past your buttonhole row without making the hole, you can pick up the stitches and add it later using a crochet hook. Insert the hook through the stitch where the buttonhole should be, pull yarn through, and repeat for the number of stitches your hole needs. This creates a loose, decorative hole that works in a pinch but is not as neat as making the hole while you knit.
If your buttonhole is too small, you can carefully cut the yarn between two stitches and unravel a few rows to get back to the buttonhole row. Rip out the buttonhole, make it again with a larger size, and knit back up. This takes time but is worth it on a garment you plan to wear for years. If your buttonhole is too large, you cannot easily fix it without ripping back—this is why testing on a swatch is so important.
Frequently Asked Questions
What size buttonhole do I need for my button?
Measure your button across the widest point and add one-eighth inch. A half-inch button needs a five-eighths-inch hole. Test on a swatch first—if the button slides through too easily, make the next buttonhole slightly smaller by using fewer bound-off stitches or a tighter yarn-over.
Can I make a buttonhole on a purl row instead of a knit row?
Yes. The method is the same—purl two stitches together instead of knit two together, and yarn-over before and after the decrease. The hole will look the same on both sides of the fabric.
What if I am knitting in the round and need a buttonhole?
You can use any of these methods, but you will need to work back and forth on a small section instead of in the round. Knit to the buttonhole spot, turn your work, knit the buttonhole row, turn again, and continue in the round. This creates a small flat section in your circular knitting but is the easiest way to make a neat buttonhole.
How do I reinforce a buttonhole so it does not stretch?
Use the two-row bind-off method instead of a yarn-over. You can also sew around the buttonhole with a needle and thread after the garment is finished—a straightforward running stitch or whip stitch around the edge prevents stretching and looks intentional on the right garment.
Can I make multiple buttonholes at the same time?
Yes, if they are on the same row. Knit to the first buttonhole spot, make the hole, knit to the second spot, make another hole, and so on. This is faster than making one buttonhole per row and keeps your spacing even.