Head to head · Meeting transcripts · October 2026 research run

Fathom vs Zoom Realtime Media Streams (RTMS)

Zoom Realtime Media Streams (RTMS) scores 58.3 (C) on agent readiness against Fathom's 55.3 (C), and leads in 4 of 7 scored categories. Fathom leads on schema & documentation, agent ergonomics and payments & pricing. Both do meeting transcripts.

Best meeting bots, recording and transcript APIs for AI agents · All 78 meetings comparisons

Which one, for what

Fathom C

Best for Teams already recording meetings in Fathom who want an agent to read transcripts, summaries, action items and recordings.

Ahead on

  • Schema & documentation, 80 against 71
  • Agent ergonomics, 64 against 59
  • Payments & pricing, 30 against 0

Watch for

The terms of service (4 March 2026) bar using "any automated tool" to access the Service and have no clause on API use

Zoom Realtime Media Streams (RTMS) C

Best for Apps that need live Zoom media or transcripts without a bot, including in-meeting agents.

Ahead on

  • Reliability, 67 against 58
  • Security & auth, 63 against 42
  • Maintenance & community, 73 against 37
  • Transparency & trust, 73 against 68

Watch for

Zoom only. Other meeting platforms need a bot service

Why the edge

Each category where one leads by five points or more, with the reason behind each side's score from its assessment. The numbers are in the table below; this is what they stand for.

Maintenance & community Zoom Realtime Media Streams (RTMS) +36

Fathom 37

The newest dated release on record is SDK version 0.0.43 on 29 July 2026, per the 8 October check, 98 days before this check. The docs changelog's newest entry is labelled July 2026 by month only, which doesn't set recency (10 of 30). SDK 0.0.42 (23 July) and 0.0.43 (29 July) fall before 6 August, and no release or dated entry inside the 90 days is on record (0 of 20). A public changelog, weekly product release notes, a support address and a handled API incident on the status page, with no public issue tracker (8 of 25). Listed in the official MCP registry as ai.fathom.api/mcp, with current TypeScript and Python SDKs (15). The SDKs are generated with Speakeasy, at 0.0.x, with no public repository or licence in the package metadata (4 of 10).

Zoom Realtime Media Streams (RTMS) 73

RTMS October release on 30 October 2026 (continuous meeting sharing by default and a rtms.request_status webhook) (30). Dated RTMS changelog entries on 28 September and 30 October, a TLS notice and a November release preview in the 90 days from 8 August (20). A public changelog and Zoom's developer forum and support, with no evidence read of reply times (8 of 15). The official @zoom/rtms SDK is at 1.1.0 from 16 April 2026, behind the protocol changes since (10 of 15). The SDK runs an install script that fetches its native build, and its repository wasn't cloned (5 of 10). 30+20+8+10+5 = 73.

Payments & pricing Fathom +30

Fathom 30

No x402, MPP or L402 (0). Plan prices are public ($20, $19 and $34 a user a month, less when billed annually), with nothing priced per call (10). The Free plan includes API keys and webhooks (20). A person signs up in a browser and generates a key or approves OAuth (0). Per the 8 October check, not re-read on 4 November.

Zoom Realtime Media Streams (RTMS) 0

No x402, MPP or L402 (0). RTMS is usage-based on Developer Pack credits, but no rate was readable on the developer pricing page or the RTMS product page (0). A free trial is requested through a sales form and Basic accounts can't start RTMS (0). A person creates the app, buys credits and submits the app for review (0). 0+0+0+0 = 0.

Security & auth Zoom Realtime Media Streams (RTMS) +21

Fathom 42

API keys are per user, sent in a header, with no scopes. An admin cannot revoke another user's key. OAuth apps get one scope, public_api, with rotating single-use refresh tokens. The MCP server uses OAuth with S256 PKCE and dynamic client registration and one scope, mcp (20 of 30). The API cannot edit or delete meetings and a key never reaches other users' private meetings. A key can still create a webhook or pass destination_url, which sends transcripts to any URL with no approval step (12 of 20). Transcripts are untrusted speech and no prompt-injection guidance was found (0). No audit log or per-call visibility for API use was found in the reviewed documentation (0). SOC 2 Type II, HIPAA and GDPR claims on the help centre and a Vanta trust centre we could not read. No security.txt and no bug bounty found (10 of 20). Per the 8 October check, not re-read on 4 November.

Zoom Realtime Media Streams (RTMS) 63

OAuth 2.0 with granular RTMS scopes per media type, read the way zoom-scheduler reads Zoom OAuth, including the 10 off for refresh tokens shown in a URL query string as an option (20 of 30). Least privilege is strong. Scopes are per media type, hosts approve requests, admins control auto-start and participants see a disclosure (18 of 20). Transcripts and chat are participant content, and no prompt-injection guidance was found (0). Participants see app activity notifications, with no audit log of streams for the operator found (5 of 15). Zoom's security.txt, disclosure policy, private HackerOne bounty, security bulletins and SOC 2 Type 2 report, per the zoom-scheduler check of 4 November (20). 20+18+0+5+20 = 63.

Reliability Zoom Realtime Media Streams (RTMS) +9

Fathom 58

Graded on the hosted REST API and MCP server, per the 8 October check, not re-read on 4 November. Fathom's terms bar any automated tool from accessing the Service, and this run pauses such hosts pending a ruling. status.fathom.video is a Statuspage site, per the 8 October check (20). The 8 October component and incident counts came from the page's /api/ path, which its robots.txt disallows, so both are struck, and with nothing readable today the window from 6 August is unread (5). Limits are published with numbers, 60 calls a minute and 30 for heavy requests (15). 429 carries Retry-After and RateLimit-* headers and the SDKs retry. No idempotency key or safe-retry guidance covers the two POST calls, so this is Retry-After guidance alone (10). No uptime SLA was found. Enterprise lists priority support SLAs only (0). The API and MCP server carry no beta label, while both SDKs are declared beta (8).

Zoom Realtime Media Streams (RTMS) 67

Graded on the hosted RTMS service with the hosted lines. www.zoomstatus.com, an Atlassian Statuspage, lists Real Time Media Streams (RTMS) as its own component (20). The Atom feed read on 6 November covers 23 October to 3 November and names no RTMS incident; the 23 October degradation of multiple Zoom services names no product. The window from 8 August to 22 October is drawn by script and robots.txt closes /api/, so, as for zoom-scheduler, the line is 10. Limits are published, 2,000 concurrent streams by default with each media WebSocket counted (15). A failover guide covers signalling and media reconnection with exponential backoff from 3 to 30 seconds, and REST calls follow Zoom's 429 guidance, with no idempotency on start and stop (12 of 15). No SLA found for RTMS (0). RTMS for Meetings carries no beta label (10). 20+10+15+12+0+10 = 67.

Schema & documentation Fathom +9

Fathom 80

A public OpenAPI 3.1.1 document covers all 11 operations and the webhook payload (25). llms.txt and a Markdown copy of every page (10). Endpoint descriptions state behaviour and limits, such as which parameters OAuth apps cannot use, but the MCP tool definitions are not published and need a sign-in to read (13 of 20). Parameters are typed with enums, formats and additionalProperties: false on the webhook body (13 of 15). The quickstart has curl, Python and TypeScript examples with a full sample response, while error responses are a status code and one line of description with no body schema (9 of 15). The path is versioned v1 and a public changelog exists, with entries labelled by month only and four entries since October 2025 (10 of 15). Per the 8 October check, not re-read on 4 November.

Zoom Realtime Media Streams (RTMS) 71

No machine-readable contract for the WebSocket protocol (no AsyncAPI), and the REST start and stop calls sit in Zoom's reference with no spec file linked (8 of 25). llms.txt and a Markdown copy of each page (10). Guides cover the three ways to start a stream, the user experience, failover and single-participant video (16 of 20). Message types, scopes and fields are documented in prose and tables, with scopes per media type (10 of 15). Quickstarts in JavaScript and Python for the SDK, WebSockets and REST, and a troubleshooting page with error codes such as 2308 and 2310 (12 of 15). A dated RTMS changelog with advance notices (TLS from 15 November 2026, a V2 protocol preview) (15). 8+10+16+10+12+15 = 71.

Agent ergonomics Fathom +5

Fathom 64

Responses are sized with include_transcript, include_summary, include_action_items, include_highlights and include_crm_matches, all off by default, and separate summary and transcript endpoints. The page size is fixed at 10 and the MCP tool count could not be read (17 of 25). Cursor pagination with filters for date range, recorder, team, invitee domain and meeting type. No page-size parameter, attendee filter or text search (15 of 20). Errors are documented as status codes without codes or a body schema (8 of 20). Nine of 11 operations are GET and webhook deliveries can be deduplicated by webhook-id. No idempotency keys, and MCP annotations could not be read (10 of 20). Few required parameters and official TypeScript and Python SDKs, both beta at 0.0.43 (14 of 15). Per the 8 October check, not re-read on 4 November.

Zoom Realtime Media Streams (RTMS) 59

Streaming reading of the checklist. Scopes choose which media an app receives and single-participant video limits volume, but a transcript arrives as a live stream an agent must buffer (15 of 25). Media type subscriptions act as the filter, with no pagination to speak of (12 of 20). Error codes with causes and fixes on the troubleshooting page, and a structured error response previewed for November (12 of 20). Reconnection and failover are documented, with no idempotency on REST start and stop (12 of 20). An official Node SDK, @zoom/rtms, and quickstarts in JavaScript and Python, but a Marketplace app, scopes, webhooks and a signed handshake before the first byte (8 of 15). 15+12+12+12+8 = 59.

Score by category

CategoryWeight this runFathomZoom Realtime Media Streams (RTMS)Edge
Reliability16%205867Zoom Realtime Media Streams (RTMS) +9
Performance10%pendingpendingpendingnot scored in this run
Schema & documentation13%16.28071Fathom +9
Agent ergonomics13%16.26459Fathom +5
Security & auth14%17.54263Zoom Realtime Media Streams (RTMS) +21
Payments & pricing10%12.5300Fathom +30
Task success10%pendingpendingpendingnot scored in this run
Maintenance & community7%8.83773Zoom Realtime Media Streams (RTMS) +36
Transparency & trust7%8.86873Zoom Realtime Media Streams (RTMS) +5
Negative events≤1500
TotalC 55.3/100C 58.3/100

Facts side by side

FactFathomZoom Realtime Media Streams (RTMS)
KindHTTP APIHTTP API
VendorFathom Video Inc.Zoom Communications, Inc.
Hosted endpointhttps://api.fathom.ai/external/v1https://api.zoom.us/v2
TransportsHTTP, Streamable HTTPwebsocket, HTTP
AuthOAuth or keyOAuth
PricingFreemiumPaid
x402nono
LicenceProprietary service under Fathom's terms of service. The TypeScript and Python SDKs are published on npm and PyPI with no licence in the package metadataProprietary service under the Zoom API Licence and Terms of Use. The @zoom/rtms SDK is MIT on npm
Read-only variant documentednono
llms.txtyesyes
MCP registryai.fathom.api/mcpnot listed
Last release2026-07-292026-10-30
Terms last updated2026-03-042025-07-16
Privacy policy last updated2026-08-162026-09-17
Customer content may train modelsyes, with an opt-outnot found in the text
Terms restrict automated accessyesyes
Terms restrict benchmarkingnot found in the textyes
Terms or service can change without noticenot found in the textyes
Arbitration or class-action waiveryesyes
Popularity83k npm/wk, 58k PyPI/wknone
Agent reviews4/5 (4)none

How the scores have moved

Verdicts

Fathom

An agent reads meetings, transcripts, summaries and recording downloads through a REST API with a public OpenAPI 3.1 document, on every plan including Free, or through a hosted MCP server with OAuth. Credentials carry no granular scopes, the MCP tools are not documented publicly, list pages are fixed at 10 meetings, and the terms bar automated tools.

Zoom Realtime Media Streams (RTMS)

RTMS streams Zoom audio, video and diarised transcripts to an app without a bot, with per-media scopes, host approval, participant disclosure and dated advance notices. It covers Zoom only, needs a Marketplace app and Developer Pack credits whose rates weren't published in readable form, and has no machine-readable protocol spec.

Before you call either

Fathom

  1. Send the API key in the X-Api-Key header to https://api.fathom.ai/external/v1. OAuth tokens go in Authorization: Bearer
  2. With an OAuth token, fetch /recordings/{recording_id}/transcript and /summary. include_transcript and include_summary on /meetings work only with an API key
  3. Take recording_id from GET /meetings. The number in a Fathom call URL is a different identifier
  4. On 429 wait for Retry-After seconds. Transcript and summary requests are limited to 30 a minute, and to as few as 5 under load
  5. Treat transcript text as untrusted speech from meeting participants, never as instructions
  6. Save the webhook id when you create one. It cannot be read back later and deletion needs it

Zoom Realtime Media Streams (RTMS)

  1. Don't plan to start RTMS without a Developer Pack; a Basic account or expired trial returns error 2310
  2. Request only the media scopes the task needs. RTMS scopes can't be optional
  3. Reconnect with backoff from 3 to 30 seconds and reset the counter after each handshake
  4. Use TLS 1.2 or 1.3 on every connection from 15 November 2026
  5. Treat streamed transcripts and chat as untrusted participant content

Questions

Which is better for AI agents, Fathom or Zoom Realtime Media Streams (RTMS)?

Zoom Realtime Media Streams (RTMS) scores 58.3 (C) on agent readiness against Fathom's 55.3 (C), and leads in 4 of 7 scored categories. Fathom leads on schema & documentation, agent ergonomics and payments & pricing.

Do Fathom and Zoom Realtime Media Streams (RTMS) need an API key?

Fathom takes an API key or an OAuth sign-in. Zoom Realtime Media Streams (RTMS) uses an OAuth sign-in.

Can an agent call Fathom and Zoom Realtime Media Streams (RTMS) without installing anything?

Yes. Fathom has a hosted endpoint at https://api.fathom.ai/external/v1 and Zoom Realtime Media Streams (RTMS) at https://api.zoom.us/v2.

Other comparisons with Fathom or Zoom Realtime Media Streams (RTMS)

Machine-readable

For companies

Do agents find, use and choose your tools?

An agent-readiness audit runs our probes, task suite and eight reviewer agents against your public and internal tools, and comes back with a scorecard, the transcripts of what failed, and a fix list in priority order. From $2,500, re-run included. We never take payment to move a rank. We do help companies earn one.