Synapse is the reference homeserver implementation for the Matrix communication protocol, written in Python and Twisted. It powers self-hosted, federated chat networks where your data stays on your own server and interoperates with thousands of other Matrix homeservers worldwide. Since version 1.99 it is maintained by Element under an open-source licence (earlier releases are Apache-2.0).
Key Features
Federation: communicate with users on any other Matrix homeserver on the network
End-to-end encryption: supports E2EE messaging between Matrix clients
Scalable: run worker processes to spread load across multiple CPUs and machines
Admin API: full REST administration, moderation and user management
Single Sign-On: integrate with OIDC/SAML identity providers
Monitoring: expose Prometheus metrics and structured logging
Bridges: large community of bridges to Slack, Telegram, IRC, XMPP and more
Why Use Synapse?
Synapse is the canonical way to run a Matrix homeserver. It is well documented, battle-tested at scale by matrix.org, and has the richest ecosystem of clients and bridges.
Use Cases
Self-hosting a private family or team chat server
Federating with the public Matrix network
Building custom bridges and bots with the Matrix API
Platform
Linux · macOS · Windows · Docker (official images)
Licence
Open source — Apache-2.0 (Foundation releases) / AGPL-3.0 (v1.99+ maintained by Element).