That's my experience too. And my employer has generally internalized it into their process: instead of negotiating over what code to write, write it all the ways, A/B test them, and negotiate over which code to launch once you have more data about how different approaches might affect user behavior.

Interestingly though, the experimentation process itself seems very under-optimized, and so it is frequently the bottleneck.