However, it's a very capable protocol. Just see how nice conversations.im is. It doesn't even use GCM, and both latency and energy usage are fantastic.
If you use a client that conforms to the Advanced Client requirements of the IM and Mobile Compliance Suites (with a similarly up-to-par server), you will have a very good experience.
For macOS, you may want to try Adium or Psi. Or you can use https://movim.eu/ which, though a web client, has fairly good feature support as well.