Often most of the tweaks happen just before product launch. At the start of the project, the team is focussed on delivering the project within specified requirements. However soon scope is slowly widened and all hell breaks lose.
A known fact a is that you cannot be all to everyone. You can not develop everything before you go to the market because it may be too late.
It is however difficult to understand what happens at the eve (or just before that) of product launch. Someone comes up with an idea that if something extra is added to the outgoing product, it will become more appealing to the customers. If features are enhanced a little bit then the sales will increase.
In my opinion , there is a point beyond which a team cannot improve the product just before launch. Last minute changes ( unless they are bugs/errors) may cause products to be tested in hurry, leading to failure at the launch.
The best strategy is to stick with what was planned and avoid last minute changes. If something needs to change, then people asking for the change need to give very strong supporting reason otherwise the change should be moved to next version maybe. That is the time the senior management needs to show the leadership and say “no” to new requirements that keep cropping uo.
If you are an entrepreneur, then you need to resist the urge to make the product all encompassing before it goes out to the market.