Around 8 years ago (the age of Google), perpetual beta was in vogue. So, the answer would have been always. These days (the age of iPhone, since iPhone is largely responsible for raising the bar of UX very high), we hardly see a public beta. So, I guess you should be in (private) beta to collect some feedback and then quickly act on it with the aim of making a public launch without the beta tag.