Signal has established itself as one of the major encrypted messengers to stake a claim as a WhatsApp replacement of late. However, there are factors that affect usability negatively, many of which are deliberate decisions to favour privacy and security. One of these is the fact that no cloud backups are offered by the app. They want nothing to do with how you store your conversations, and would likely need a LOT more money if they had to store all your conversations themselves (a-la Telegram) or lose a lot of trust if they had to delegate the task to Google, Apple or some other provider. The result is that all conversations are stored on-device, and you need to handle the backup manually if you would like to retain them after reinstalling or changing devices. This is something they don't make clear up front, and has been a pain point for myself in the past and a number of my contacts more recently. Here's how you ensure your Signal conversations aren't lost to oblivion.

On iOS: Apple has never, and likely will never let you get granular access to the iOS filesystem that would let you handle app data directly. This would mean you wouldn't be able to transfer your messages off iOS... with a few caveats. WhatsApp, for instance, uses iCloud to backup your messages. You can restore these on any Apple device using the same account, but there's no way to shift your messages to an Android device if you make the switch. Signal doesn't use iCloud, but they do provide the functionality to shift your messages from one iOS client to another if you are switching phones. Once you install Signal on your new device and register with your number (and PIN if you've set one), you are asked if you want to transfer your previous messages. On selecting this, a prompt appears on your old device, you scan a QR code and it initiates the transfer process. This is usually complete in a few minutes, and seems to work well enough. However, it is not of much use if you don't have access to the previous device, say if it is stolen or otherwise out of order.

On Android: Android's process is more hands-on. Go to Settings>Chats>Chat Backups and pick Turn On. You get to pick a location where your backups are saved, and the app gives you a passphrase that you need to write down (or save in your password vault). You will be expected to use this as your second factor when attempting to restore messages from the backup. There are automatic backups every night, but the safest way to move your messages to a different device is to initiate a backup just before shifting. When you're ready, copy the backup file to the new phone, install Signal on it, and pick the Restore Backup option on launch. Aside from automatic backups on your phone, I recommend physically backing up your Signal database using USB or a service like Syncthing or Resilio every once in a while.

Desktop: Signal's desktop client remains a bit of an afterthought. On the one hand it is better than WhatsApp in that it only needs to be linked to your phone once, and then is essentially independent of it and doesn't need your phone to be online to send or receive texts. On the other, it is still linked to your phone and cannot be used as a completely separate application, like Telegram Desktop/Web can. Further, it is VERY slow to start (especially if you use a mechanical hard drive instead of an SSD), and it often has issues communicating with the phone, which means both clients fetch messages independently of each other and this may cause conflicts, delays, and in rare cases even corrupted messages. The desktop client fetches messages on linking with the phone, and there is no facility to back up these messages or shift them to a different desktop client.

It is hard to imagine the perfect messaging app- security and privacy continue to be at loggerheads with convenience and ease-of-use. Every app developer must look long and hard at these considerations and make the tradeoffs they deem appropriate. The best you can do as a consumer is to know what you're getting into and take steps to avoid any nasty surprises.