In addition to pre-mature optimization in code, there's also premature optimization in operations. I mean like setting up load-balancers and multiple servers when you don't even have users...
Don't do that.
This app of mine is hosted on an EC2 t2.small instance. It's smoking fast.
I’m not suggesting you shouldn’t have a robust backup solution and appropriate planning for mission-critical apps. If it absolutely can’t go down, then do what you have to do. Just don’t go crazy deploying your weekend project because you “know” it’s going to be a huge hit.
Launch first, scale later. In fact, most times that will be scale never, so why waste your time?