Microsoft SwiftKey from me.
Best features I'm sticking for:
- Keyboard layouts could be combined (e.g. de/en together).
- Auto punctuation is great: space after comma and full stop, full stop pn double space (but only if makes sense) etc.
- Very customisable.
- Suggestions are good for all languages I use.