Price is just one factor. If I charge twice as much as someone else but I can solve the customer's problem in one-fourth the time, the customer saves money. Customers are usually focused on solving business problems within their budget and schedule, not just on hourly rates."
True, and as a freelancer this is an argument I make as well. But something I've noticed is that the client doesn't talk/work/think any faster. It still takes them an hour in a meeting to get their points across. It still takes us 3 hours to review key issues together. Anything that is synchronous time is throttled to the slowest person, so the "I'm 5x faster than someone else" isn't the slam dunk it should be.
And there's still a stigma with some people about high priced consultants, when they know they can get it 'cheaper' somewhere else.
A friend of mine is managing a project on behalf of his client. He's been dealing with offshore (India I think, not sure) devs for months. I built a prototype of a tool, based on chatting with him, in under 30 minutes. The tool did more than his offshore people were able to do after days of talking to them, and days of trying. He was a bit ... taken aback. He went to his client and said "we need to bring this guy on to the project to handle some of this stuff". My hourly rate is 8x when they're paying the offshore people, the client balked, and it didn't happen.
Ignorant short-sighted client? Probably, but this still happens.
My friend was more than a bit shocked, but I wasn't. The project owners essentially have a cheap team of playthings to keep building whatever ideas pop in to their head, whim changes, etc., and the cost of changing their mind and changing ideas is low. At least, they think it's low. When you've not worked with developers who've actually built the core plumbing of all the stuff you're trying to build before, you really have no idea if "functionality x" should take 2 hours, 2 days or 2 weeks.