What I didn't realize at the time (and I think many don't) is that when you have customer requests for features that don't align with your vision you should consider making your product extensible. Keep a small core product and provide plug-ins for additional features. Customers pick the plugins they need or write their own.
[1] http://insideintercom.io/product-strategy-means-saying-no/