you can control the gm(aspect ratio and bias current) of your input pair, ro of our loads (length, bias current) to get the required gain.
also depending on whether your input pairs are biased in saturation or subthreshold, gm could be lower or higher.
it depends on the accuracy you want. Gm is more affordable than rout of the loads. The better thing to do when setting accurate gains is to use architecture which provide gains given by the ratio of homogeneous quantities, such as resistances or transconductances.
Source degeneration is pretty consistent. A cascade of
low gain stages can perform better than a smaller number
of high gain stages when it comes to bandwidth and low-
overdrive prop delay.