Matrix is a federated communication protocol that supports end-to-end encryption of message content. While the primary usage of Matrix is instant messaging, there various other applications of the Matrix protocol. There are many free clients to choose from for various operating systems. Furthermore there are free Matrix server implementations, which make it possible to host your own Matrix server.
Decentralized: Decentralized systems lack a central authority or gatekeeper. Decentralized systems are more resilient and resistent to censorship and commercial takeover.
The Matrix network is federated, meaning many servers (“home-servers”) participate in the network as peers. You can choose to use an existing Matrix server, or host your own, much like email.
Supports Interoperability: Interoperability increases freedom and usefulness by allowing different systems to work together. When a service is hostile to other services interoperating, particularly a communication service, this places users in a walled garden, which limits choice and can make it difficult to switch to or from an alternative.
Matrix excels at interoperating with other chat protocols via “bridging.” Because Matrix is an open standard, there is a wide array of available Matrix clients to choose from and anyone with technical know-how can make their own.
End-to-End Encryption (E2EE): Allows two or more end-points to communicate confidentially, such that no one in the middle (including the service operator) has access to the contents of the communication. This represents a baseline requirement for recommendation in this guide.
The Matrix protocol supports but does not enforce E2EE. Some clients may require you to opt into E2EE on a per-conversation basis, while others may not support encryption at all.
Does Not Limit Metadata: Metadata is "data about data." In the context of communication, metadata could represent information about who sent or received a message and at what date and time.
The Matrix protocol is not designed to conceal message metadata (such as sender, recipient, payload size). Conversation metadata is replicated across all home-servers participating in a given chat room.