Build as little as possible.
I cannot emphasize enough how important it is for a startup to start testing your product as quickly as possible. And by The product I mean, only the core fraction of the technology (or service depending on the nature of the business) needed to solve the problem.
NOT a singing/dancing public-availability ready, scalable technology, which does a lot of cool stuff. Cool stuff for you that is. If your first product version looks ready to be launched publically prior to user testing you most probably have already wasted precious resources..
Your first product will suck and the only way to improve it is by testing it out with relevant users, getting their feedback, reiterating and come back to the testers again. After several cycles like that your product will be on a different level.
Stop wasting resources you don’t have and time, which you can’t afford because your competition is getting user feedback and rushing in front every single day when you are sitting in your garage thinking about… oh this button doesn’t have enough shading.
Think about what’s the minimum you can build. Build it. Test it. Reiterate. That’s how you make good stuff that people love to use and tell their friends about. Think about it.