It depends on the load on the server, the load in the path from the Ookla server to your provider and the load on the path from your provider to you. Do 5 tests in a row and you'll get 5 different numbers.
It could also be that you're using TKIP or TKIP+AES encryption on your router, and Android 4+ seems to have problems with some implementations of TKIP, so use only AES on the router. (If your speed is okay on a public wifi hotspot, that's definitely the problem. It will also speed up if you use a guest account on your router, or turn security off on your router (no encryption) if that's the cause.