GrapheneOS recently made this post in reference to Unplugged: https://x.com/GrapheneOS/status/1808225041785729367

I'm assuming a private matrix instance on local hardware would be the best option.

If that's not the case, what else would you recommend over a self hosted matrix instance for secure communications?

SimpleX chat is very good regarding metadata reduction. You can self host your own server with the potential benefits and drawbacks it comes with.

As usually, I think Privacy Guides provides a good baseline for this question:

https://www.privacyguides.org/en/real-time-communication/

TLDR: They recommend Signal, SimpleX Chat and Briar. They also mention Element and Session, but with a warning.

There are only two options I'd add:

Molly
https://molly.im/

hardened version of Signal

Cwtch
https://cwtch.im/

decentralized and focused on metadata-privacy in addition to communications privacy

Further Links

Molly – Privacy Guides Forum:
https://discuss.privacyguides.net/t/recommend-molly-instead-of-signal/17597

Molly – GrapheneOS Discussion Forum:
https://discuss.grapheneos.org/d/8976-signal-vs-molly-vs-molly-foss

Molly – GrapheneOS X:
https://x.com/GrapheneOS/status/1769277147569443309

Cwtch – Privacy Guides Forum:
https://discuss.privacyguides.net/t/cwtch-instant-messenger/11953

I have been running for two years a self-hosted Matrix instance. Now I have switched to XMPP. In both cases, privacy is at its top, especially if you don't federate. But security depends on your system admin skills.