Define non-default fallback for multilingual Site

I have a multilingual site (DE/EN) with the vast majority being German-speaking users. Thus using German as the default language makes perfect sense. However, what would be the best way to make sure that users with a detected language of e.g. Spanish get directed to the English (secondary) version instead of the German (default) version?

I’m aware that I could just set the secondary language as the default but I’m not sure how reliable auto detection is and I’d like to avoid users with a German system end up with an English frontend.

Am I getting the wrong end of the stick?