To be fair, it used to be "encrypted" using a scheme not too far removed from ROT13; now it's using the Signal protocol, which probably requires quite a few more bytes per message.
For example, messaging a contact with multiple devices connected means that your phone has to encrypt your message to each of their clients independently.
It used to work just fine on 1kbps.
Now it is pretty much unusable over dialup or GPRS.