XMPP Network Graph: Frequently Asked Questions

Answers to questions related to the XMPP Network Graph website.

Generic Questions

What is this?

The XMPP Network Graph website renders a network graph. The nodes in this graph represent XMPP domains. When two XMPP domains interact with each-other (which typically means that users from both domains are chatting with each-other), the nodes are connected by a line.

What is up with all of those nodes without a name?

When others publish data that shows that they link to you, they implicitly publish a bit of data about you as well. Given enough of these publications, information about your connections are out there for everyone to see, without your involvement. This is a privacy concern. That problem becomes quite apparent when graphing a network of small networks, that each have only one or two users. It quickly becomes evident who's connected to whom in such a scenario. Not everyone is comfortable having this information shared publicly.

We are erring on the side of caution here. This site will only publish the name of an XMPP domain if that domain explicitly opted-in to sharing its data by advertising support for the XEP‑0485: PubSub Server Information.

Is this an accurate representation of the network?


Firstly, it only publishes data for domains that explicitly make available this information. The vast majority of XMPP domains that are live do not do this.

Secondly, the data presented here is pre-processed to generate a more human friendly result: domain names are stripped of well-known subdomains representing services, duplicate domains and links are removed, as are links from and to the same domain. Certain domains are excluded all-together.

The graph does not attempt to be truly realtime. To reduce the amount of data that is being kept in-sync, periodic updates are used, rather than live-eventing, but data older than a few hours is not shown at all.

Technical Questions

What does my domain need to support to be added to the network graph?

To be added to the network graph, an XMPP domain needs to support XEP‑0485: PubSub Server Information.

Developers and communities of the following XMPP servers have created and made available plugins and modules that add this support.

this plugin
this module
this module
Ask a developer!

I try adding my domain. Why doesn't it show up in the network graph?

After you submit a new domain, there will have been a bit of feedback printed just under the submit form. When that suggested success, it can take a couple of minutes for new data to show up. Try reloading the website once to force a fresh view of the data.

It still doesn't show up in the graph

Double-check if your domain supports the XEP‑0485: PubSub Server Information. Your domain should advertise the corresponding feature through service discovery.

Check if your domain accepts server-to-server connections, not only in the configuration of your XMPP software, but also in network configuration (e.g. firewalls). This application supports all common XMPP server-to-server connectivity types, including STARTTLS, DirectTLS and Server Dialback.

This application will attempt to federate with both your XMPP domain and the pub/sub service of your domain. This commonly uses a domain name that is a subdomain of the XMPP domain itself (e.g. pubsub.example.org). Common causes of network connectivity issues include:

It still doesn't show up

Err, sorry about that. Try getting in contact with the author of this application. Hopefully, we can troubleshoot the issue together. You'll find contact information here.

Why does my domain shows up in the network graph when I have never added it?

Domains show up in the network graph only when at least one of these conditions is true:

Your domain might have been detected by this application if it advertises that feature and it was federating with another domain that at one point reported its connections this application.

Can you remove my domain from the network graph?

Absolutely. Please reach out (contact information here) to have your domain be added to the exclusion list. The application will not show domains that are on that list (and it won't expose that list either).