It is a faulty assumption that IP geolocation is generally useful. It's often not, at all. The only context in which it might seem so is if you live on an English speaking continent. Otherwise, you're going to constantly misidentify people who live near borders, who use a VPN, or who have a different language preference than the offical language where their ISP is located. Locale settings expressed by the browser are the user's explicit preference, and extremely reliable. When was the last time you unboxed a new device, and on the very first OS setup screen when you have to choose your language preference, you chose a language that you don't speak? No one does that! And when was the last time you had to use a device that wasn't yours and had the language set to a language you don't speak? Never! So I don't know where you got this idea that somehow the majority of people are using devices that are set to a language that they don't speak.