Build without boundaries
Image File
Original HTML

RealtimeKit

Build, voice, video and multi-modal apps without infrastructure headache

A complete toolkit to integrate real-time audio and video communication with near-zero latency globally. With multiple abstraction levels, you can meet your specific product and feature requirements without handling WebRTC complexities and low-level infrastructure plumbing.

One toolkit for any platform

Platform-ready SDKs that handle the hard parts of WebRTC like connection management, bandwidth adaptation, device handling.

Advanced media features built-in

Easily integrate complex capabilities like recording, transcriptions, and real-time AI participants with simple, clean APIs.

Real-time observability

Get real-time analytics on latency, packet loss, and other critical health metrics to help you identify and solve issues faster.

Network built for real-time

Latency is critical for real-time apps. Anything above ~100ms starts to feel sluggish. RealtimeKit leverages Cloudflare's Anycast network, which spans over 335+ cities and automatically connects users to the nearest server, ensuring consistent performance and ultra low-latency worldwide. 50ms for 95% of the Internet connected population globally, with 11,500+ interconnects including major ISPs and cloud services.

Audio/Video Apps

Voice Agents

AI & Multimodal

Interactive live streaming

Media processing

Cloudflare RealtimeKit delivers ultra-low latency communication at global scale

Build voice, video, and multimodal applications with near-zero latency worldwide. RealtimeKit handles WebRTC complexities, connection management, and global routing — letting you focus on creating great user experiences instead of managing real-time infrastructure.

import { useEffect } from 'react';import { useRealtimeKitClient, RealtimeKitProvider } from '@cloudflare/realtimekit-react';import MyMeeting from './my-meeting';

export default function App() { const [meeting, initMeeting] = useRealtimeKitClient();

useEffect(() => { initMeeting({ authToken: '', defaults: { audio: false, video: false, }, }); }, []);

return ( Loading...}> {/* Render your UI here. Subcomponents can now use the `useRealtimeKitMeeting` and `useRealtimeKitSelector` hooks */} );}import { RealtimeKitClient } from '@cloudflare/realtimekit-js';

const client = new RealtimeKitClient({ authToken: 'your-auth-token',});

// Create a voice agent sessionconst agentSession = await client.createAgentSession({ agentId: 'support-agent-001', capabilities: { speechToText: true, textToSpeech: true, naturalLanguageProcessing: true, },});

// Handle incoming voiceagentSession.on('voiceInput', async (audioData) => { // Process voice input with AI const transcription = await agentSession.transcribe(audioData); const response = await agentSession.processIntent(transcription);

// Generate and send voice response const audioResponse = await agentSession.synthesize(response); agentSession.sendAudio(audioResponse);});

// Start the sessionawait agentSession.start();

RealtimeKit Pricing

Serverless WebRTC conferencing. View Media pricing details

Audio/Video Participant

—

$0.002 / minute

Audio-Only Participant

—

$0.0005 / minute

Export (recording, RTMP or HLS streaming)

—

$0.010 / minute

Export (recording, RTMP or HLS streaming, audio only)

—

$0.003 / minute

Export (Raw RTP) into R2

—

$0.0005 / minute

Transcription (Real-time)

—

Standard model pricing via Workers AI

Powerful primitives, seamlessly integrated

Built on systems powering 20% of the Internet, RealtimeKit runs on the same infrastructure Cloudflare uses to build Cloudflare. Enterprise-grade reliability, security, and performance are standard.

Build without boundaries

Join thousands of developers who've eliminated infrastructure complexity and deployed globally with Cloudflare. Start building for free — no credit card required.

Class (B2B/B2C)
B2B
Ingest Status
Error
Dedupe hash
a7901249f1536d7d4e2b970d696211f9
Press Eligible
No
Press Eligible Reason
Drupal Push 422
Source Name
Brandi AI
Image URL
https://www.cloudflare.com/preview.png
Source Node
Content Hash (SHA-256, erste 32 hex)
3d88967c0f1da2961ee862e761ed5887