Start by measuring the sofa. Measure the back, top to bottom and side to side, then do the same with the front, cushions, arms and sides. Use these measurements to determine how many yards of fabric you will need. Upholstery fabric is 54 inches wide, and a yard is 36 inches long.
The type of fabric you choose might determine how much fabric you need. Some prints should run a specific way, like stripes or flowers, and these fabrics might require more yardage to get the look you want. Other fabrics will look fine any way they are positioned.
Having some extra fabric can be useful in case you miscalculate, make mistakes or decide to make matching pillows or curtains. You might want to consider adding an extra half-yard to your order just for convenience.