I'm creating an open source software for which the user interface is translated to various languages by contributors (about 30 languages at the moment). The translation platform is online and the nature of benevolent contributions is such that not all languages have a complete translation. Several languages are fully translated but others are at 50% and some at less than 20%.
Personally I find it a bit disappointing/unprofessional to select a language just to find out that only a few parts of the UI are translated and the rest is in English. However I understand that some users might prefer this to nothing.
I've considered only including languages that have a certain threshold of translation, like more than 66% of strings or some other arbitrary number for the main/stable version of the application, and include them all in the more bleeding-edge version of the application.
Is there a best practice or an accepted sweet spot to include a language as an option even though its translation is not complete? Is there a better way to go about this?