For me Swiftkey was a favourite until it broke in so many subtle and not so subtle ways: insisting on changing i to I (i is the local word for in so incredibly frustrating), other times it will split combined words making me look like an English-speaking or worse, local teenager. No amount of tweaking, correcting, updating or even filing bugs seems to work.
So now I use the default keyboard.