What a buttonhole is and why you knit it as you go

A buttonhole is an opening in your knitted fabric where a button passes through. You create it while knitting, not after—by binding off a small group of stitches on one row, then casting new stitches back on in the next row to close the gap. This method is faster and stronger than trying to cut or pick out stitches later, and it keeps your fabric from unraveling.

The four main methods—yarn over, one-row bind-off, two-row bind-off, and eyelet—each produce a different look and fit. Yarn overs make the smallest, most delicate holes. Bind-off methods create larger, more structured openings that hold bigger buttons. Eyelets sit between the two and work well for decorative projects or smaller buttons.

All of them follow the same timing: you work the buttonhole over one or two rows, depending on the method. Plan your buttonhole placement before you start knitting by counting rows from the bottom edge where you want it to sit.

Key Takeaways

  • Yarn over buttonholes are the smallest and quickest, made by dropping a stitch and working a yarn over in its place.
  • One-row bind-off buttonholes are larger and more durable, created by binding off stitches on one row and casting them back on the next.
  • Two-row bind-off buttonholes are the sturdiest option, with the bind-off and cast-on happening on separate rows for extra structure.
  • Eyelets are decorative buttonholes made with yarn overs and decreases, best for lightweight fabrics or ornamental closures.
  • Mark your buttonhole placement before you start knitting by counting rows from the cast-on edge.

The yarn over buttonhole: smallest and fastest

A yarn over buttonhole works best for thin yarn and small buttons. It creates a hole about the size of a pencil eraser and takes only two rows to complete.

On the row where you want the buttonhole: Knit to the spot where the hole should be. Bring your yarn to the front of your work (as if you were about to purl). Slip the next stitch from the left needle to the right needle without knitting it. Bring the yarn to the back. Pass the slipped stitch over the stitch you just made on the right needle (the same motion as a decrease). Knit the next stitch. You now have one fewer stitch on your needle, and a small hole is visible.

On the next row: Knit across normally. When you reach the hole, you will see an extra loop of yarn sitting on your left needle—this is the yarn over from the previous row. Knit it as a regular stitch. This closes the gap and locks the buttonhole in place.

The hole will be small and slightly loose. It works well for baby clothes, cardigans in fingering-weight yarn, or any project where buttons are decorative rather than load-bearing.

The one-row bind-off buttonhole: medium-sized and sturdy

This method creates a buttonhole large enough for a standard shirt button and finishes in two rows. The buttonhole is more structured than a yarn over because you bind off stitches rather than just dropping one.

On the buttonhole row: Knit to where the hole should start. Bind off the next 2 to 4 stitches (depending on button size—2 for a small button, 4 for a large one). To bind off, knit two stitches, pass the first stitch over the second, knit one more stitch, pass the previous stitch over it, and repeat until you have bound off the number you need. Stop when you have one stitch remaining on your right needle. Knit to the end of the row.

On the next row: Purl (or knit, depending on your pattern) to the bound-off gap. Using the cable cast-on or long-tail cast-on, cast on the same number of stitches you bound off—if you bound off 3 stitches, cast on 3. Purl (or knit) to the end of the row.

The cable cast-on is fastest here: insert your right needle between the last stitch on your left needle and the one before it, wrap yarn, pull through, and place the new stitch on the left needle. Repeat for each stitch you need to cast on. The result is a clean, rectangular hole that holds medium-sized buttons firmly.

The two-row bind-off buttonhole: largest and most durable

Use this method for heavy coats, cardigans in bulky yarn, or any project where the button carries real weight. The buttonhole spans two rows, which makes it thicker and less likely to stretch out over time.

Row 1 (the bind-off row): Knit to where the buttonhole starts. Bind off 3 to 5 stitches (adjust for button size). Knit to the end of the row. Do not cast on anything yet—leave the gap open.

Row 2 (the cast-on row): Purl to the gap. Cast on the same number of stitches you bound off using the cable cast-on. Purl to the end of the row.

Row 3 (optional reinforcement): Knit across normally. This extra row is not required but adds strength, especially in bulky yarn.

The two-row gap means the hole has depth and structure. Buttons will not slip through as easily, and the edges of the hole will not curl or fray. This is the standard buttonhole for tailored garments.

The eyelet buttonhole: decorative and delicate

Eyelets are buttonholes made with yarn overs and decreases, creating a small, ornamental opening. They work well in lace patterns, baby clothes, or anywhere you want the buttonhole to be a visible design feature.

On the eyelet row: Knit to where the hole should be. Yarn over (bring yarn to front, then to back over the needle). Knit two together (insert needle through two stitches at once and knit them as one). Knit to the end of the row.

The yarn over adds a stitch; the knit two together removes one. The net result is no change in stitch count, but a small hole appears where the yarn over sits. The hole is slightly larger than a straightforward yarn over buttonhole but smaller than a bind-off buttonhole. Eyelets are purely functional for small buttons and decorative in appearance—they are often used in projects where the buttonhole is meant to be seen and admired.

Placing buttonholes so they line up with buttons

Before you cast on, decide how many buttons you need and measure the distance between them. A typical cardigan has buttons spaced 3 to 4 inches apart. Mark the row numbers where each buttonhole should sit by writing them down or using stitch markers.

For a cardigan that is 20 inches long with buttons every 4 inches, you might place buttonholes at rows 10, 20, 30, and 40 (counting from the cast-on edge). Leave at least 1 inch of fabric at the top and bottom before the first and last buttonhole—this keeps the edge from gaping.

If you are working a button band (a strip of ribbing or garter stitch sewn or picked up along the front edge), you can place buttonholes in the band instead of the main body. This is easier to adjust if your spacing is slightly off, because you can measure the band against your buttons before you knit it.

Common mistakes and how to avoid them

Buttonhole too small for the button: Measure your button before you start. A button should pass through with slight resistance—not so tight that you strain the yarn, and not so loose that it falls through. If you are unsure, use a larger buttonhole method (two-row bind-off instead of yarn over).

Stitches unraveling around the hole: This happens when you do not bind off or cast on securely. Tighten your tension slightly on the row where you bind off, and make sure your cast-on stitches are snug on the needle. If a stitch does slip, use a crochet hook to pick it up and find it before you continue.

Buttonholes in the wrong place: Count your rows carefully before you start the buttonhole. Use a row counter or write down the row number on a piece of paper. If you realize mid-project that a buttonhole is off by a few rows, you can usually fudge it by 1 or 2 rows without the garment looking wrong—buttons are forgiving.

Gaps between the new cast-on stitches and the existing fabric: This happens when your cast-on is too loose. Use the cable cast-on for buttonholes, not long-tail, because it creates a tighter edge. If the gap is already there, you can close it later by weaving in the ends tightly or using a crochet hook to tighten the edge.

Frequently Asked Questions

Can I add a buttonhole to a finished sweater?

Yes, but it is more work. Use a crochet hook to carefully pick out the stitches where you want the hole, then bind them off or find them with a yarn over. This method is fiddly and risks unraveling nearby rows, so it is better to plan buttonholes before you cast on. If you must add one later, practice on a swatch first.

What if my button is oddly shaped or very large?

Measure the widest part of the button and add a quarter inch for ease. Use the two-row bind-off method and bind off enough stitches to match that measurement. Test the fit on a swatch before you commit to your garment. Odd-shaped buttons sometimes need a horizontal buttonhole (worked across rows) rather than a vertical one (worked up rows).

Do I need to reinforce the edges of a buttonhole?

For most garments, no—the bind-off and cast-on stitches are strong enough. For very heavy coats or garments that will see heavy use, you can sew a small whip stitch around the buttonhole edge after you finish knitting. This is optional and mostly a matter of preference.

What is the difference between a buttonhole and an eyelet?

A buttonhole is functional—it holds a button. An eyelet is decorative and usually too small for a real button. Eyelets are common in lace patterns and baby clothes. If you need the hole to actually close something, use a yarn over, bind-off, or two-row buttonhole instead.

Can I knit buttonholes in the round?

Yes, but it is trickier because you cannot easily work a return row. Use the yarn over method or the one-row bind-off method, and cast on your stitches on the same round. For garments knit in the round (like seamless cardigans), plan your buttonholes on the front panels before you join them, or work the button band flat and pick up stitches afterward.