Cloudflare Realtime
Last updated Oct 19, 2026 Build live applications where people, AI systems, and devices communicate in real time over Cloudflare's global network ↗︎.


RealtimeKit<h2>Add audio or video calls to your app</h2>Use prebuilt meeting UI and SDKs for web and mobile. Add managed recording or transcription if your app needs it.Explore RealtimeKit Realtime SFU<h2>Build custom WebRTC applications</h2>Use the Realtime SFU API to control which endpoints publish or receive audio, video, and data. Your application handles signaling and permissions.Explore Realtime SFU
What you can build
RealtimeKit<h3>In-app meetings</h3>Add audio or video calls to your web or mobile app with prebuilt screens and controls.View guide RealtimeKit<h3>Virtual classrooms</h3>Set instructor and student permissions, then split a class into breakout rooms. Record or transcribe sessions when needed.View guide RealtimeKit<h3>Live events</h3>Add reactions, chat, and polls to a live event.View guide Realtime SFU<h3>Embedded devices</h3>Send audio and telemetry from an ESP32 to browsers, with controls for one authorized operator. Use the same design for robot gateways.View guide Realtime SFU<h3>Cloud gaming</h3>Stream a game from a Container to browsers, then send keyboard and pointer input back over DataChannels.View guide Realtime SFU<h3>AI audio pipelines</h3>Transcribe microphone audio with Workers AI, then send generated speech to browsers through WebSocket media adapters.View guide
Realtime primitives
Cloudflare TURN
Relay WebRTC traffic through Cloudflare when a NAT or firewall prevents a direct connection.
WebSocket adapter
Send PCM audio in either direction between Realtime SFU and a WebSocket service, or receive video as JPEG frames.
DataChannels
Exchange chat, sensor updates, and control events between WebRTC endpoints.
Frequently asked questions
Should I use RealtimeKit or Realtime SFU?
If you are new to WebRTC ↗︎ and want to add audio or video meetings to your app, use RealtimeKit. It includes web and mobile SDKs with prebuilt UI. Cloudflare handles signaling and media routing, and you can add managed recording or transcription.
If you have WebRTC experience and need control over what each endpoint publishes or receives, use Realtime SFU. Your application handles signaling, permissions, session state, and track discovery. Cloudflare runs the SFU and forwards media to subscribers.
How does TURN fit into WebRTC?
A TURN server relays traffic when a NAT or firewall prevents two WebRTC endpoints from connecting directly. If a direct connection works, TURN stays out of the path.
RealtimeKit configures Cloudflare TURN for you. Realtime SFU includes access to the same service. You can also use Cloudflare TURN with your own SFU or peer-to-peer application by generating TURN credentials.
Cloudflare TURN uses Anycast ↗︎, so you do not have to deploy regional TURN servers or load balancers.
For webinars, should I use RealtimeKit or Stream Live?
Use RealtimeKit webinars when attendees join as participants. They might speak, appear on camera, or move into breakout rooms.
Use Stream Live when a small group of presenters broadcasts and the audience mainly watches. For example, a webinar with a few presenters and a large watch-only audience should use Stream Live.
Next steps
Get started with RealtimeKit
Create your first meeting and add RealtimeKit to your app.
Get started with Realtime SFU
Create an application, open an SFU session, and publish a media track.
Was this helpful?
YesNo
On this page
{"@context":"https://schema.org","@type":"WebPage","@id":"https://developers.cloudflare.com/realtime/#page","headline":"Cloudflare Realtime","description":"Build live audio, video, and data applications with Cloudflare Realtime, or broadcast live video with Stream.","url":"https://developers.cloudflare.com/realtime/","inLanguage":"en","image":"https://developers.cloudflare.com/realtime/og.png?v=671f80b438177fe8","dateModified":"2026-10-19","publisher":{"@type":"Organization","name":"Cloudflare","description":"One platform for your apps, agents, and workforce. Build, secure, and scale without managing infrastructure","url":"https://www.cloudflare.com/","sameAs":["https://github.com/cloudflare","https://www.linkedin.com/company/cloudflare","https://x.com/cloudflare"],"logo":{"@type":"ImageObject","url":"https://developers.cloudflare.com/logo.svg"},"address":{"@type":"PostalAddress","streetAddress":"101 Townsend St","addressLocality":"San Francisco","addressRegion":"CA","postalCode":"94107","addressCountry":"US"},"contactPoint":[{"@type":"ContactPoint","contactType":"Customer Support","url":"https://support.cloudflare.com/","availableLanguage":["English"]},{"@type":"ContactPoint","contactType":"Sales","url":"https://www.cloudflare.com/contact/","availableLanguage":["English"]}]},"isPartOf":{"@type":"WebSite","@id":"https://developers.cloudflare.com/#website","name":"Cloudflare Docs","url":"https://developers.cloudflare.com/"}}
description: Build in-app audio and video with RealtimeKit SDKs and customizable UI components. title: RealtimeKit image: https://developers.cloudflare.com/realtime/realtimekit/og.png?v=31a73b0d5312318c
Documentation Index
Fetch the complete documentation index at: https://developers.cloudflare.com/realtime/llms.txt
Use this file to discover all available pages before exploring further.
