It was a terrible pile of overengineered sophomoric semantic-nonsense second-system effect garbage from day 1. The need for everything to be an extension and XML was a millstone around every client and server's neck, the XML validation is directly blamed for the downfall of Google Wave but it also seems like that drag was the primary reason why the client experience always sucked. The reason the only successful uses of XMPP are in closed ecosystems isn't nefarious companies trying to control it (although there are those), it's because the only way you can actually get a reliably compatible experience for the kind of rich chat that everyone expects these days is if you control the clients and servers together.
I genuinely think the main reason there are no successful open-source chat apps is that XMPP dragged them all down.
I genuinely think the main reason there are no successful open-source chat apps is that XMPP dragged them all down.