It's a filter in the sales funnel, often intentionally. "Contact us for pricing" tells everyone what they need to know – either you have a big budget and are not price sensitive, or you're self service and this product isn't for you.
Pricing is hard, it makes total sense to just not publish prices early on.