There is no perfect product in the world. It improves over time. The longer you take to build, the lesser are the chances of it being successful. Ship the product as soon as possible. Get the early adopters, take feedback and build based on that. Do not be lost under your assumptions.