Sofa zippers are frequently located on the back side of sofa cushions. This usually means the cover of the cushion is designed to be removed quickly for cleaning or other types of maintenance and repair. Any zipper can break. If a zipper off-tracks, it becomes misaligned and will not connect together to zip closed. Sometimes a misaligned zipper can be put back into alignment. If not, you can replace it. If a zipper is damaged and teeth are broken, it is necessary to replace the zipper with a new one. This is done by removing the cover and doing the repair directly on the zipper area.
Unzip or open the cover and remove the cushion. Examine the zipper to see if the glider is still attached. The glider is the part of the zipper you grip in your fingers. If the glider is present and stuck, carefully examine the zipper teeth to see if any are damaged, bent or missing.
Use fine needle nose pliers to press teeth back into position if they are slightly off alignment. The teeth should be evenly spaced and look identical. Sometimes off-tracking is caused by a foreign object at or near the location of the problem. A tear in the zipper fabric can also be a cause. Repair a tear with no-fray fabric glue. Allow the glue an hour to dry.
Remove the non-locking glider by pulling it off the zipper teeth and start it back at the end of the zipper. Many furnishings use a continuous zipper. This is a zipper you can cut to the length you need. This means your glider can be started from the end of the zipper. You may need to release stitches blocking the zipper starting point. Slide the end of the row of zipper teeth into the second side of the glider like you would on a jacket. Tug the glider down the zipper to close the zipper.
Move the zipper back and forth over the bad spot to ensure it is working correctly. Resew along the seam you opened and restuff the cushion into the cover.
Remove the cover from the cushion. Turn the cover inside out to expose the broken zipper. Most furnishing covers use continuous zippers. Select a new zipper that is 2 inches longer than the zip length (length of the area that zips.)
Remove the old zipper with a seam ripper, being careful not to tear the fabric. Note how the zipper has been sewn into the cover. In general, the cloth should have one or two flaps that cover the zipper on the outside.
Cut your zipper to the right length. With zipper teeth together (closed), cut up along the side of the teeth 1 inch, across the teeth and back along the teeth 1 inch. Repeat on both sides. Pull the zipper apart with your fingers. Add the zipper glider onto one set of teeth (like you would on a jacket) and slide the second side into the glider. Tug on the glider to close the zipper.
Position the new zipper in the location of the zipper you removed, on the inside of the cover fabric, with the edges of the fabric folded in slightly if they aren't already sewn in that way. Fold them over so that the fold is the same width as the zipper's side material. Pin the zipper into place. Sew alongside the outside of the teeth of the zipper with the zipper foot on your sewing machine. You can hand-sew with a needle, but this will take much longer. In general, you will sew a straight stitch 1/8 inch away from the teeth through the fabric of the cushion. The finished side of the fabric will be face down on the upper side of the zipper. If the cushion has a zipper flap, one side may be sewn through the flap.
Sew across the zipper at the top and bottom to create stopping points. Ensure the stitch is across the teeth, not the 1-inch margin. This will hold your glider onto the zipper. Run your zipper several times to make sure it is working well before replacing the cover on the cushion.
If the zipper is too hard to sew with the cover intact, rip the seams of the zipper panel and replace the zipper with the fabric flat. Add the panel back onto the cover by resewing the seams after the zipper has been replaced.