
Agora’s Software-Defined Real-Time Network (SDRTN®) enables ultra-low latency (<40ms average intra region) with intelligent routing coverage for 200+ countries and territories.
Agora automatically optimizes every step in real-time video, from capture to playback, using machine learning to ensure superior performance even in poor network conditions.
99.99% global uptime and the ability to scale gracefully as you grow to accommodate up to millions of global concurrent viewers or listeners.
Customizable RTC SDK for web, mobile, desktop, and IoT, including iOS/MacOS, Android, React JS/React Native, Windows, Electron, Flutter, Unity, Unreal and more.
Improve audio with built-in automatic echo cancelation (AEC), AI Noise Suppression, and automatic gain control (AGC).
Agora offers features like call recording, speech-to-text transcription, virtual backgrounds, AEC, real-time translation, noise suppression, and advanced analytics.
<40ms average latency (intra region)
Reliable infrastructure designed for continuous operation.
Uptime
Support
Ultra-low latency reliability and
performance 200+ countries and regions.





WebRTC (Web Real-Time Communication) enables real-time voice, video, and data communication in browsers and mobile apps without plugins. It is commonly used for video conferencing, voice calling, live streaming, telehealth, gaming, and collaboration apps. While WebRTC supports direct peer-to-peer communication with low latency, production applications often require additional cloud infrastructure to scale reliably to large numbers of users.
WebRTC signaling is the process of exchanging connection metadata between peers before a direct connection is established. Since browsers do not initially know how to communicate with each other, they must first exchange Session Description Protocol (SDP) messages and ICE candidates. This signaling typically happens through a separate server using technologies like WebSocket or HTTP. Once both peers exchange this information, WebRTC can establish a secure peer-to-peer connection for real-time media transmission.
WebRTC and WebSocket both support real-time communication but serve different purposes. WebSocket creates a persistent client-server connection used for messaging, notifications, and signaling. WebRTC is designed for low-latency audio, video, and data transmission using peer-to-peer or media server connections. WebRTC is typically used for real-time media, while WebSocket is used for data exchange and signaling.
WebRTC primarily uses UDP (User Datagram Protocol) for media transmission because it prioritizes speed over reliability. For real-time audio and video communication, low latency is more important than perfect data delivery. If some packets are lost, the application can continue functioning smoothly. However, WebRTC can fall back to TCP when necessary, such as when network restrictions prevent UDP traffic. This flexibility helps WebRTC maintain connectivity across diverse network environments.
STUN and TURN servers help WebRTC establish connections when users are behind NATs or firewalls. A STUN server allows a device to discover its public IP address and determine how it is accessible from the internet. If a direct peer-to-peer connection is not possible, a TURN server relays the media traffic between peers. Together, STUN and TURN play a crucial role in WebRTC architecture by ensuring reliable connectivity across complex network environments.
Yes. WebRTC is secure by design and uses mandatory encryption for all communications. Media streams are protected with SRTP, data channels use DTLS, and modern browsers require HTTPS for WebRTC applications. These protections ensure that audio, video, and data are encrypted during transmission.