Reliable Agent Room Join Issue – Dispatched Agents Not Joining Room Despite Successful Request

We are experiencing a reliability issue with LiveKit Agents on your Cloud platform.

Our Setup:

  • We deploy multiple Python-based agents (single process, one agent per dispatch) into the same room.
  • Each agent is assigned a unique name with the prefix "agent_".
  • Dispatch requests are triggered from our app server and always return a success response.
  • Room composition: 10–20 listeners, 1 speaker.
  • Agents share identical code, differing only by a language pair parameter (used for real-time translation).
  • We are on the Build (free) tier.

The Problem:
When dispatching multiple agents (e.g., 3 agents for 3 language pairs), some of the requested agents never appear in the room participant list. The failure is random — it can happen to any agent in the group, including the 1st, 2nd, or any subsequent agent. The ones that fail never arrive even after waiting more than 5 minutes.

Our Retry Logic:
We detect agent absence by polling the room’s participant list for names starting with "agent_". If an expected agent is missing, we issue an identical dispatch request (same agent name) every 5 seconds, without canceling the earlier attempt. Despite continuous retries over 5+ minutes, the agent still does not join.

Additional Observations:

  • No notable error logs are generated when dispatch succeeds but the agent does not arrive.
  • No pattern is visible — failures appear random across agents.

Questions for LiveKit Support:

  1. Could this be related to resource constraints on the Build (free) tier? Would upgrading to a paid plan increase the reliability of agents joining rooms?
  2. Is there any known limitation or throttling on concurrent dispatching, especially when multiple agents attempt to join the same room?
  3. When a dispatch returns success, does that guarantee that the agent will attempt connection, or could there be a disconnect at the infrastructure level before the agent is fully registered?

What we’d like help with:

  • Understanding the root cause of why agents sometimes fail to join despite successful dispatching and retries.
  • Guidance on recommended retry/connection logic when using multiple agents per room.
  • Recommendations for debugging: what logs, metrics, or timeouts we should examine.

Thank you for your assistance.

Quite possibly. Build allows you to have:

  • 1 deployed agent in LiveKit cloud
  • 5 concurrent agent sessions (so, that 1 agent joining 5 sessions)

If you are dispatching 3 agents per session, you will quickly hit the concurrent agent session limit.

Also, there may be some confusion over the agent name terminology. A deployed agent can only have a single name (in your case translator...). What you can do, and you are probably doing this, is to configure separate metadata in the agent dispatch so the agent knows which ‘personality’ to take on, https://docs.livekit.io/agents/server/job/#metadata.