What You Need

  • Needle (medium, sharp)
  • Thread matching the garment β€” doubled for strength
  • Scissors
  • A toothpick (for creating the shank)
  1. 1

    Thread and knot

    Cut 50cm of thread. Pull through the needle so both ends are equal. Tie a knot at the ends: loop around your finger, roll off, pull tight.

  2. 2

    Mark the position

    Match the garment sides to find exactly where the button should sit. Mark lightly with a pin.

  3. 3

    Come up from the back

    Push the needle up through the fabric from the wrong side at your mark. Pull until the knot sits against the back of the fabric.

  4. 4

    Place a toothpick over the button

    Lay a toothpick across the top of the button before sewing. This creates the shank β€” a small gap between button and fabric that makes buttoning easier and reduces stress on the stitches.

  5. 5

    Stitch through button holes 6–8 times

    Through a hole, across and back through the opposite hole, through the fabric. Pull firmly each time. Repeat 6–8 times for a 2-hole button. For a 4-hole button, stitch a cross or two parallel sets of lines, 6 times each.

  6. 6

    Form the shank

    Remove the toothpick. Bring the needle up between the button and fabric. Wrap the thread around the visible stitches 4–5 times firmly β€” this forms a thread stem that holds the button away from the fabric.

  7. 7

    Knot off on the back

    Push the needle through to the back. Loop around an existing stitch and pull through to form a knot. Repeat twice. Trim thread close to the knot.

Frequently Asked Questions

All-purpose polyester thread for most garments. Match the colour to the existing thread or the garment. For heavy buttons on coats or jeans, use upholstery thread or dental floss for extra strength.
Too few stitches, thread not pulled firmly, or no knot on the back. Complete at least 6–8 passes, pull each stitch firmly, form a proper shank and secure with two knots on the back. On heavy fabrics, sew through a small backing button inside the garment to spread the stress.