All skills
Skillintermediate

Cloudflare Realtime SFU Reference

Expert guidance for building real-time audio/video/data applications using Cloudflare Realtime SFU (Selective Forwarding Unit).

Claude Code Knowledge Pack7/10/2026

Overview

Cloudflare Realtime SFU Reference

Expert guidance for building real-time audio/video/data applications using Cloudflare Realtime SFU (Selective Forwarding Unit).

Reading Order

TaskFiles~Tokens
New projectREADME → configuration~1200
Implement publish/subscribeREADME → api~1600
Add PartyTrackspatterns (PartyTracks section)~800
Build presence systempatterns (DO section)~800
Debug connection issuesgotchas~700
Scale to millionspatterns (Cascading section)~600
Add simulcastpatterns (Advanced section)~500
Configure TURNconfiguration (TURN section)~400

In This Reference

  • configuration.md - Setup, deployment, environment variables, Wrangler config
  • api.md - Sessions, tracks, endpoints, request/response patterns
  • patterns.md - Architecture patterns, use cases, integration examples
  • gotchas.md - Common issues, debugging, performance, security

Quick Start

Cloudflare Realtime SFU: WebRTC infrastructure on global network (310+ cities). Anycast routing, no regional constraints, pub/sub model.

Core concepts:

  • Sessions: WebRTC PeerConnection to Cloudflare edge
  • Tracks: Audio/video/data channels you publish or subscribe to
  • No rooms: Build presence layer yourself via track sharing (see patterns.md)

Mental model: Your client establishes one WebRTC session, publishes tracks (audio/video), shares track IDs via your backend, others subscribe to your tracks using track IDs + your session ID.

Choose Your Approach

ApproachWhen to UseComplexity
PartyTracksProduction apps with device switching, ReactLow - Observable-based, handles reconnections
Raw APICustom requirements, non-browser, learningMedium - Full control, manual WebRTC lifecycle
RealtimeKitEnd-to-end SDK with UI componentsLowest - Managed state, React hooks

Recommendation: Start with PartyTracks for most production applications. See patterns.md for PartyTracks examples.

SFU vs RealtimeKit

  • Realtime SFU: WebRTC infrastructure (this reference). Build your own signaling, presence, UI.
  • RealtimeKit: SDK layer on top of SFU. Includes React hooks, state management, UI components. Part of Cloudflare AI platform.

Use SFU directly when you need custom signaling or non-React framework. Use RealtimeKit for faster development with React.

Setup

Dashboard: https://dash.cloudflare.com/?to=/:account/calls

Get CALLS_APP_ID and CALLS_APP_SECRET from dashboard, then see configuration.md for deployment.

See Also