Recall.ai vs Attendee.dev: Hosted vs Open Source
Compare Recall vs Attendee for meeting bots: hosted convenience vs self-hosted control, real infra cost, compliance, and where MeetStream fits.
The choice between Recall.ai and Attendee.dev is a choice between two operating models. One is a hosted API that runs a meeting bot fleet for you and bills per hour. The other is open-source code that lets you run that fleet yourself. The price, compliance path, and on-call burden all follow from this single decision: build or buy.
This question is common for teams building meeting intelligence features. A hosted API is the fastest way to get a bot into a call, but per-hour costs can scale. Self-hosting seems cheaper, but the operational cost in engineering time is real. MeetStream offers a third path: a managed API built as agent-first voice infrastructure. This gives you the speed of a hosted service with the real-time control needed to build agents that can hear and speak in a meeting, which is often why teams consider self-hosting.
Meeting bots are now a standard component in sales, recruiting, and support tools. As usage grows, the per-hour bill from a hosted provider can prompt a look at self-hosting. This guide compares Recall.ai and Attendee.dev, explains the true cost of self-hosting, and shows where a managed, agent-focused platform fits.
Hosted API vs. Self-Hosted Infrastructure
A meeting bot must perform several difficult tasks. It has to join a call across multiple platforms like Zoom, Google Meet, and Microsoft Teams, each with its own UI and authentication. It has to capture media, ideally raw audio and video. It needs to produce a transcript with accurate speaker labels. Finally, it must deliver this data reliably to your application.
With a hosted API like Recall.ai, the vendor's servers handle all of this. You send a meeting link and receive data via webhooks. With an open-source solution like Attendee.dev, your servers do the work. You get the code for joining and capturing, but you also get the pager alert when a headless browser instance fails during a customer call. Neither model is inherently better, they just optimize for different resources. A hosted API optimizes for your engineering time, while self-hosting optimizes for control and per-hour cost at scale.

Our meeting bot API primer covers the shared mechanics of how these bots work under the hood.
Recall.ai: The Hosted Path
Recall.ai is an established hosted meeting bot API. It supports a broad set of meeting platforms and provides a direct path to integration. You send an API request with a meeting link, and a bot joins the call. The recording, transcript, and metadata are delivered back to your application. For a team that needs to ship a meeting-based feature quickly, this is a fast way to start.
The tradeoffs of the hosted model are primarily cost and data control. A per-hour rate that is negligible in a pilot can become a significant cost of goods sold at thousands of hours per month. Recall.ai's pricing is at the higher end of the market. Additionally, all meeting media passes through a third-party service. This is acceptable for many applications but can be a non-starter for customers in healthcare or legal fields with strict data path requirements. You can see a broader comparison in our guide to Recall.ai alternatives.
In exchange, you get a managed service that absorbs the constant UI and API changes from meeting platforms. For many teams, avoiding this operational work is the correct business decision.
Attendee.dev: The Open-Source Path
Attendee.dev is an open-source meeting bot that you run on your own infrastructure. The appeal is straightforward: there is no per-hour vendor fee, meeting media never leaves your environment, and you can modify the source code. For companies with strict data residency rules or usage high enough to make per-hour pricing uneconomical, self-hosting is a valid option.
The real cost is operational. Self-hosting a meeting bot fleet means managing headless browsers, capturing system audio, and ensuring the system can scale with spiky, unpredictable load. It means your engineers are responsible for fixing the join flow when a platform updates its waiting room UI. It also means operating a reliable webhook delivery system. Our Python meeting bot tutorial shows how simple a single join can be, but scaling that to production is a significant engineering effort.
The cost of open source is not the software license, it is the engineering headcount and on-call rotations required to operate it reliably.
Recall vs. Attendee vs. MeetStream: Side-by-Side
Comparing these platforms on the features that matter most shows a clear distinction in focus. MeetStream is designed as voice infrastructure for building real-time AI voice agents that participate in meetings, not just record them.
| MeetStream | Recall.ai | Attendee.dev | |
|---|---|---|---|
| Hosting model | Managed API | Managed API | Self-hosted (open source) |
| Platforms | Zoom, Meet, Teams | Zoom, Meet, Teams, Webex, etc. | Zoom, Meet |
| Real-time audio | Yes, mixed stream via WebSocket | Yes | Requires custom implementation |
| Bot can act in call | Yes (speak, send chat) | No | Requires custom implementation |
| Storage | 30 days free, paid extended | 7 days free, paid extended | Native (your infrastructure) |
| Calendar auto-join | Yes (Google Calendar) | Yes | Requires custom implementation |
| Price | $0.35 per hour | $0.50 per hour | Your infrastructure cost |
| On-call burden | Vendor | Vendor | Yours |
| Best for | Real-time agents, voice AI | Broadest platform coverage | Strict data residency, full control |
Recall.ai offers the broadest platform support in a managed service. Attendee.dev provides full control for teams that must own their data path or have the scale to justify the operational investment. MeetStream provides a managed API so you do not run browsers, but gives you the low-latency access required to build interactive agents. You get a real-time, mixed audio stream over a WebSocket with dominant speaker attribution, and your bot can speak or send messages into the call.
The True Cost of Self-Hosting
The primary motivation for choosing Attendee.dev is often a cost calculation. At 10,000 meeting hours per month, a per-hour API fee appears expensive next to "free" open-source software. This calculation is usually incomplete.
A self-hosted solution's true cost includes cloud compute for the browser fleet, data egress, storage, and the salaries of the engineers who maintain it. A meeting bot that fails to join a call loses that meeting's data forever, so reliability is the core feature. Achieving a high join success rate requires significant initial and ongoing engineering work as meeting platforms evolve. This cost does not show up on a GitHub page, but it appears in your budget every month.
A hosted API has a more predictable cost. MeetStream's pricing starts at $0.35 per hour and decreases with volume, designed to provide a managed platform that remains economical as usage grows. The correct comparison is not "$0.35 versus free," but "$0.35 versus your fully loaded cost of operating a reliable, multi-platform bot fleet." For most teams, the latter is a higher number.
How MeetStream Fits In
MeetStream is a unified API for deploying bots and AI agents into Zoom, Google Meet, and Microsoft Teams. A single integration covers all three platforms. You provide a meeting link to one endpoint, and a bot joins the call. The platform is designed to support not just passive recording but active, in-meeting agents.

To get started, you send a `POST` request to the `create_bot` endpoint. This example creates a bot that will join a Google Meet call, request a post-call transcript from our in-house engine, and send lifecycle events to a webhook.
curl -X POST "https://api.meetstream.ai/api/v1/bots/create_bot" \
-H "Authorization: Token <YOUR_API_KEY>" \
-H "Content-Type: application/json" \
-d '{
"meeting_link": "https://meet.google.com/abc-defg-hij",
"bot_name": "Notetaker",
"callback_url": "https://your-app.com/webhooks/meetstream",
"recording_config": {
"transcript": {
"provider": { "meetstream": {} }
}
}
}'
The API responds with a `bot_id`, and webhooks fire for events like `bot.joining`, `bot.inmeeting`, and `bot.stopped`. When the meeting ends, a `transcription.processed` event signals that the text is ready to be fetched. For real-time applications, you can request a live audio stream over a WebSocket and send commands for the bot to speak or send chat messages. This provides the foundation for building interactive agents. The full API details are in our developer documentation.
Conclusion
The decision between Recall.ai and Attendee.dev represents a classic tradeoff between the convenience of a hosted service and the control of a self-hosted one. Recall.ai provides a managed API with broad platform support, while Attendee.dev offers full control to teams willing to take on the operational work. MeetStream presents a third option: a managed meeting bot API that provides the deep, real-time control needed to build interactive voice agents for Zoom, Google Meet, and Microsoft Teams. At $0.35 per hour, it offers a path to build sophisticated, in-meeting AI without the burden of running the underlying infrastructure. Get started free at meetstream.ai.
Frequently Asked Questions
What is the difference between Recall.ai and Attendee.dev?
Recall.ai is a managed, hosted API that runs meeting bots for you and charges per hour. Attendee.dev is open-source software that you host yourself, giving you full control over the data path but requiring you to manage the infrastructure. MeetStream is also a hosted API but is focused on providing real-time capabilities for building interactive AI agents.
Is a self-hosted meeting bot cheaper than a hosted API?
Not always. A self-hosted bot has no per-hour vendor fee, but you pay for cloud compute, storage, and the engineering team required to maintain high reliability. At low to moderate volumes, a hosted API like MeetStream at $0.35 per hour is often cheaper than the fully loaded cost of a self-hosted solution.
When should I self-host a meeting bot?
Self-hosting is the right choice when a strict compliance or data residency requirement prevents using any third-party service. It can also be economical at extreme scale if you already have an experienced infrastructure team. For most other use cases, a hosted API is faster and more cost-effective.
Does Recall.ai or Attendee.dev support real-time audio?
Recall.ai provides real-time media access on its platform. With Attendee.dev, you would need to build the real-time streaming pipeline yourself. MeetStream is built specifically for real-time use cases, providing a mixed audio stream with dominant speaker tags over a persistent WebSocket connection, designed for building voice agents.
What meeting platforms does MeetStream support?
MeetStream provides a single, unified API for bots on Zoom, Google Meet, and Microsoft Teams. You use the same `create_bot` endpoint and pass in the appropriate meeting link for any of the supported platforms.
