Cutter 8
- vCPU
- 4 × dedicated
- RAM
- 8 GB
- Storage
- 160 GB NVMe SSD
- Transfer
- 10 TB
- IPv4 / IPv6
- 1 / /64 routed
Solution
Synapse is memory-hungry: a small homeserver federating with busy rooms needs 4 GB, and 8 GB if you join large public rooms. Conduit or Dendrite run in a fraction of that. XMPP with Prosody is lighter still — one core and 1 GB serve hundreds of users. All three are IO-sensitive, so put the database on NVMe.
| Resource | What you actually need |
|---|---|
| CPU | 2 cores for Synapse, 1 for Conduit or Prosody |
| RAM | 4–8 GB for Synapse, 1–2 GB for Conduit or Prosody |
| Disk | NVMe, 160 GB — federation state grows relentlessly |
| Network | Well-peered location; federation is latency-sensitive |
Location is usually the decision that matters most for this workload — either because latency dominates, or because jurisdiction does.
Four cores and 8 GB if you plan to federate widely.
Conduit if you want low resource use; Synapse if you need the full feature set.
Serve /.well-known/matrix/server so federation finds you on the right port.
Never run Synapse on SQLite beyond a personal test server.
Federation state grows without bound; schedule the purge API or the state compressor.
Synapse needs 4 GB for a small server and 8 GB once you join large federated rooms. Conduit does the same job in under 512 MB, at the cost of some feature completeness.
Yes. Federation only requires a public IP, a domain and a valid certificate. Jurisdiction has no effect on federation, only on who can compel your metadata.
Message content is end-to-end encrypted, but room membership and timing metadata live on the homeserver. Running your own is the only way to keep that on hardware you control.