Question: Have you considered adding auto-routing to the next available operator with the fewest concurrent chats?
Yes we considered that, but found "fewest concurrent chats" an imperfect proxy for "availability / spare capacity"
Some conversations are short and easy, others long and intense while providing lots more value; also asynchronous channels, task conversations, team conversations and so on muddied the waters even more - there was just too much spread in activity (and increasingly so as we're becoming a more versatile covering wider range of use cases).
Also, removing agency away from operators (push instead of pull) with the auto-accept option makes me less of a fan of that option; easily manipulated by just keeping a few conversations open, variation in access patterns (some agents prefer accepting one after they close one, others accept a few at once and work through them), differences in Organisation User versus Contact Center Users (Agents), focus on quality-of-results and not throughput, slower per-consumer response times with larger concurrent chat counts...
This all made enforcing evenly distributed concurrent chat counts less optimal than empowering operators to adapt to their preferences, capabilities and context (by having them do the queue-picking).
Moving from session based to continuous multi-channel message streams also means productivity measurement needs rethinking. Especially since now multiple agents may contribute to a conversation over time.