In my experience companies end up paying as much money as they can.

The companies themselves are to blame, too: they absolutely refuse to change their processes, so the software must adapt to them, no matter what the cost.