Private betas should only be used for products/businesses that really require private betas. I'm thinking that most startups don't really require private periods. We just go public and promote and see what happens.
But most startups can't even generate the kind of buzz needed for a private beta, where it becomes worthwhile to build an invite/beta key system. If your product were to go public tomorrow, would your servers be killed in a traffic frenzy? If the answer is no, then you probably don't need a private beta.