Can the robot drive the motors on a slippery (smooth wood, tile, etc) surface? If it can, but not on carpet or grass then you are slightly underpowered. If it cannot skid even on a smooth surface then you are way underpowered. Skid steering is the easiest to build mechanically, but is the least precise/controllable and does require high torque.
There is no magic length:width ratio that I know of, but in general the wider the robot in relation to its length the better. I have had 4 wheel robots which are slightly longer than square that cannot spin on the spot on carpet, but can on a smooth floor. As the wheel-surface grip improves they need to be steered more gradually with both motors going the same way but one faster than the other.
As has already been mentioned, look for a voltage drop across the motor controller. This will vary with the controller: L298 controllers are cheap and easy to get, but generally have at least a 1V drop. Better controllers are more expensive but more power gets to the motor.