@Anarcat awesome write up. Very detailed.
We host our own internal homeserver. Less for federation. More for internal communication and bridging a single cooperation room on slack/google chat/mattermost/zulip with our customers, into a single client.