# In-app chat & calls: which communication providers coding agents choose

> Communication choices depend on the existing stack and call controls.

Source: https://armature.tech/leaderboards/in-app-communication (Armature agent leaderboards). 175 runs, 6 apps, 3 agents, 4 personas, updated 2026-09-08. Interactive board with every run: https://armature.tech/leaderboards#app/in-app-communication

## Key learnings



### Simple chat stays with the existing backend

Supabase wins all 30 class chat runs. Agents extend the app’s existing authentication, database permissions, and Realtime service instead of adding a chat provider.

### Web and native calls favor different SDKs

Daily wins 27 of 30 SvelteKit tutoring runs; Stream Chat and Video wins 19 of 30 React Native matching app runs. Agents cite Daily’s plain JavaScript client and Stream’s built-in ringing.

### Chat and calls often go to separate vendors

Agents select two providers in 15 of 29 dispatch runs and 13 of 28 clinic runs. One pairing uses Stream Chat and Video for messaging and Daily for calls.

## The ranking

| # | Product | Wins | Share |
|---|---|---:|---:|
| 1 | Stream Chat and Video (getstream.io) | 52 | 30% |
| 2 | Supabase (supabase.com) | 30 | 17% |
| 3 | Daily (daily.co) | 28 | 16% |
| 4 | LiveKit (livekit.io) | 13 | 7% |
| 5 | TalkJS (talkjs.com) | 11 | 6% |
| 6 | Ably + LiveKit | 8 | 5% |
| 7 | Daily + Stream Chat and Video | 7 | 4% |
| 8 | Twilio (twilio.com) | 7 | 4% |
| 9 | LiveKit + Stream Chat and Video | 6 | 3% |
| 10 | Daily + Twilio | 3 | 2% |
| 11 | Ably (ably.com) | 2 | 1% |
| 12 | Amazon Chime SDK (aws.amazon.com) | 2 | 1% |
| 13 | Azure Communication Services (azure.microsoft.com) | 2 | 1% |
| 14 | Ably + Twilio | 1 | 1% |
| 15 | Ably + Daily | 1 | 1% |
| 16 | Amazon Chime SDK + Daily | 1 | 1% |
| 17 | Ably + Stream Chat and Video | 1 | 1% |

## By agent

- Codex: 72 runs, first Stream Chat and Video (22), then Daily (13)
- Claude Code: 71 runs, first Stream Chat and Video (18), then Supabase (12)
- Cursor (Grok 4.6): 32 runs, first Stream Chat and Video (12), then Supabase (6)

## By persona

- Vibe coder: 60 runs, first Supabase (30), then Stream Chat and Video (19)
- Junior developer: 58 runs, first Daily (27), then Stream Chat and Video (15)
- Senior engineer: 29 runs, first Stream Chat and Video (14), then Ably + LiveKit (8)
- Enterprise team: 28 runs, first Twilio (7), then Daily + Stream Chat and Video (6)

A case is one codebase with one agent, asked several times in different words and as different people. 13 of 18 cases did not hold to a single choice.

## How this was measured

Every number on this page comes from a controlled experiment. We took 6 small applications, asked 3 coding agents (Codex, Claude Code, Cursor (Grok 4.6)) to add in-app chat and calls to each of them, in several wordings and as a vibe coder and junior developer and senior engineer and enterprise team, and let the agent choose the product. Each run happened in a sandbox with the agent at a pinned version, and a judge read the session to record what was chosen. That is 175 runs. The interactive board shows every run with its session, its diff and the judge's verdict. A simulated user stood in for the owner of the codebase: it read the agent's plan and had to approve it before any code was written; it sent the agent back at least once in 52 runs.

Methodology and publications: https://armature.tech/publications

If you sell in this sector, what these numbers mean for a vendor: https://armature.tech/library/in-app-communication-coding-agents-playbook (Markdown: https://armature.tech/library/in-app-communication-coding-agents-playbook.md)

## Other sectors

- [Agent sandboxes](https://armature.tech/leaderboards/sandboxes) (https://armature.tech/leaderboards/sandboxes.md)
- [Observability](https://armature.tech/leaderboards/observability) (https://armature.tech/leaderboards/observability.md)
- [Payments](https://armature.tech/leaderboards/payments) (https://armature.tech/leaderboards/payments.md)
- [Deploy](https://armature.tech/leaderboards/deploy) (https://armature.tech/leaderboards/deploy.md)
- [Auth](https://armature.tech/leaderboards/auth) (https://armature.tech/leaderboards/auth.md)
- [Email providers](https://armature.tech/leaderboards/mail) (https://armature.tech/leaderboards/mail.md)
- [Product analytics](https://armature.tech/leaderboards/product-analytics) (https://armature.tech/leaderboards/product-analytics.md)
- [Databases](https://armature.tech/leaderboards/databases) (https://armature.tech/leaderboards/databases.md)
- [File storage](https://armature.tech/leaderboards/storage) (https://armature.tech/leaderboards/storage.md)
- [LLM evals & observability](https://armature.tech/leaderboards/evals) (https://armature.tech/leaderboards/evals.md)
- [Voice Agents](https://armature.tech/leaderboards/voice-agents) (https://armature.tech/leaderboards/voice-agents.md)
- [Serverless functions](https://armature.tech/leaderboards/serverless) (https://armature.tech/leaderboards/serverless.md)
- [Cloud](https://armature.tech/leaderboards/cloud) (https://armature.tech/leaderboards/cloud.md)
- [AI gateway](https://armature.tech/leaderboards/ai-gateway) (https://armature.tech/leaderboards/ai-gateway.md)
- [Bot protection](https://armature.tech/leaderboards/bot-protection) (https://armature.tech/leaderboards/bot-protection.md)
- [Search](https://armature.tech/leaderboards/search) (https://armature.tech/leaderboards/search.md)
- [Agent frameworks](https://armature.tech/leaderboards/agent-frameworks) (https://armature.tech/leaderboards/agent-frameworks.md)
- [Performance in CI](https://armature.tech/leaderboards/perf-ci) (https://armature.tech/leaderboards/perf-ci.md)
- [Code review](https://armature.tech/leaderboards/code-review) (https://armature.tech/leaderboards/code-review.md)
- [Vector search](https://armature.tech/leaderboards/vector-search) (https://armature.tech/leaderboards/vector-search.md)
