I was thinking about another thing.....You use "viene" in a dynamic way, while "costa" is more static.
Example: i wanna buy a car basic price 10000, then i add a radio airbag and other extra....so i will say "quanto (mi) viene a costare in totale?". In the evolution of the language "viene" become a sinonime of "costa". -> "quanto viene in totale?" -> "quanto viene?" Dynamic process of making a price vs static price. It's not really a big difference anyway.