How developers build
real-time experiences

Flexible APIs for real-time video, voice, and chat supported by the only global network engineered for live interaction
Get Started
The expert trusted worldwide
by 1700+ leading organizations
The Sandbox logoEducationFirst logogabb logoVimeo logoTalkSpace logoVive logoUnity logo
The Sandbox logoEducationFirst logogabb logoVimeo logoTalkSpace logoVive logoUnity logo

Easily integrate and customize real-time communication

Agora’s flexible, modular SDKs allow you to create unique and engaging user experiences in your app.
A group of colleagues participates in a daily standup meeting via video calling.
A virtual meeting with multiple attendees on a  live voice calling  meeting.
A tech executive presents the latest product launch in a live-streamed event with live social chat.
A commentator broadcasts live streaming coverage of a basketball game in a packed arena.
A finance team discusses quarterly returns through chat and speech-to-text features, while a live-streamed conversation with a host takes place on the side.
A virtual math class utilizes an interactive whiteboard for teaching linear equations, with students and the teacher on a live video call.
A group chat features real-time notifications and presence indicators, signaling active and engaged users.
A home security system uses IoT to broadcast live footage of a delivery person at the front door to multiple devices.
Video Calling
Voice Calling
Interactive Live Streaming
Broadcast Streaming
Chat
Interactive Whiteboard
Signaling
IoT
View All Products

Discover unrivaled reliability and quality with Agora’s Real-Time Network

Engineered for intelligent routing and optimized for ultra-low latency.
Discover unrivaled reliability
and quality with Agora’s
Real-Time Network
Engineered for intelligent routing and optimized for
ultra-low latency.
Agora Real-Time Network Illustration
Agora's Real-Time Network
Public Network

Hyper scalability

Withstand sudden spikes in traffic gracefully and scale from one to millions of concurrent users as your app and business grow.
Growth illustration

Mission-critical reliability

Arrow illustration
99.99%
uptime
Arrow vertical illustration
24/7
Support
Arrow vertical illustration
Track Record
0 Downtime

Ultra-low latency

300ms network average
Latency illustration

Global coverage

Users in 200+ countries
and regions

Enterprise ready

Compliant with SOC2, GDPR, & HIPAA regulations for seamless integration with your existing enterprise systems.
AICPA SOC LogoGDPR Ready Logo
HIPPA compliance logo

Cross-platform compatibility

Easy integration

Choose how to get started
with real-time interaction

1RtcEngineConfig config = new RtcEngineConfig();
2config.mAppId = "Your app ID";
3RtcEngine agoraEngine = RtcEngine.create (config);
4agoraEngine.setupLocalVideo(new VideoCanvas(new SurfaceView(getBaseContext(), VideoCanvas.RENDER_MODE_HIDDEN, 0));
5agoraEngine.enableVideo();
6agoraEngine.startPreview();
7agoraEngine.joinChannel("<Your token>", "<Your channel name>", 1, new ChannelMediaOptions());
8agoraEngine.enableVideo();
1config.appId = "<Your app id>"
2agoraEngine = AgoraRtcEngineKit.sharedEngine(with: config, delegate: self)
3option.clientRoleType = .broadcaster
4agoraEngine.enableVideo()
5videoCanvas.view = localView
6agoraEngine.setupLocalVideo(videoCanvas)
7agoraEngine.startPreview()
8agoraEngine. (byToken: "<Your token>", channelId: "<channel name>", uid: 0, mediaOptions: option, joinSuccess: { (channel, uid, elapsed) in })
1IRtcEngine* agoraEngine = createAgoraRtcEngine();
2RtcEngineContext context;
3context.appId = "<Your app ID>";
4context.channelProfile = CHANNEL_PROFILE_LIVE_BROADCASTING;
5agoraEngine->initialize(context);
6agoraEngine->setClientRole(CLIENT_ROLE_TYPE::CLIENT_ROLE_BROADCASTER);
7agoraEngine->setupLocalVideo(<VideoCanvas>);
8agoraEngine->enableVideo();
9agoraEngine->startPreview();
10agoraEngine->joinChannel("Your Token", "<Your channel name>", 0, NULL);
1const agoraEngine = AgoraRTC.createClient({ mode: "rtc", codec: "vp8" });
2agoraEngine.setClientRole("host");
3await agoraEngine.join("<Your app ID>", "<Your channel Name>", "<Your token>", 1);
4var localAudioTrack = await AgoraRTC.createMicrophoneAudioTrack();
5var localVideoTrack = await AgoraRTC.createCameraVideoTrack();
6await agoraEngine.publish([localAudioTrack, localVideoTrack]);
7localVideoTrack.play(document.createElement("div"));
1var agoraEngine = createAgoraRtcEngine();
2agoraEngine.initialize({appId: "<Your app ID>"});
3agoraEngine.setChannelProfile(ChannelProfileType.ChannelProfileCommunication);
4agoraEngine.setClientRole(ClientRoleType.ClientRoleBroadcaster);
5agoraEngine.setupLocalVideo({sourceType: VideoSourceType.VideoSourceCameraPrimary,view: <Pass a div element here>});
6agoraEngine.enableVideo();
7agoraEngine.startPreview();
8agoraEngine.joinChannel("<Your token>", "<You channel name>", 1);
1RtcEngine agoraEngine = createAgoraRtcEngine();
2await agoraEngine.initialize(const RtcEngineContext(appId: "<Your app ID>"));
3ChannelMediaOptions options = const ChannelMediaOptions(clientRoleType: ClientRoleType.clientRoleBroadcaster,
4        channelProfile: ChannelProfileType.channelProfileCommunication);
5<Use a Container here> = AgoraVideoView(controller: VideoViewController(rtcEngine: agoraEngine,canvas: VideoCanvas(uid: 0));
6await agoraEngine.enableVideo();
7await agoraEngine.startPreview();
8await agoraEngine.joinChannel(token: <"You token">,channelId: "You channel name", options: options, uid: 1);
1import { createAgoraRtcEngine, IRtcEngine} from 'react-native-agora';
2const agoraEngine = useRef<IRtcEngine>();
3agoraEngine.initialize({appId: "<Your app ID>",channelProfile: ChannelProfileType.ChannelProfileLiveBroadcasting});
4agoraEngine.setChannelProfile(ChannelProfileType.ChannelProfileCommunication);
5agoraEngine.enableVideo();
6agoraEngine.startPreview();
7agoraEngine.joinChannel("<Your token>", "<You channel name>", 1, {clientRoleType: ClientRoleType.ClientRoleBroadcaster});
1IRtcEngine agoraEngine = Agora.Rtc.RtcEngine.CreateAgoraRtcEngine();
2RtcEngineContext context = new RtcEngineContext("<You app ID>", 0,CHANNEL_PROFILE_TYPE.CHANNEL_PROFILE_COMMUNICATION, "");
3agoraEngine.Initialize(context);
4agoraEngine.SetClientRole(CLIENT_ROLE_TYPE.CLIENT_ROLE_BROADCASTER);
5agoraEngine.EnableVideo();
6VideoSurface LocalView.SetForUser(0, "", VIDEO_SOURCE_TYPE.VIDEO_SOURCE_CAMERA);
7LocalView.SetEnable(true);
8agoraEngine.JoinChannel("Your token", "You channel");
1RtcEngineContext RtcEngineContext;
2RtcEngineContext.appId = <Your AppId>
3RtcEngineContext.eventHandler = new agora::rtc::IRtcEngineEventHandler();
4 
5RtcEngineProxy = agora::rtc::ue::createAgoraRtcEngine();
6RtcEngineProxy->initialize(RtcEngineContext);
7 
8RtcEngineProxy->enableAudio();
9RtcEngineProxy->enableVideo();
10RtcEngineProxy->joinChannel(<Your Token>, <Your ChannelName>, "", 0);

Add powerful functionality—fast

GROW WITH THE LEADING PLATFORM
powering
60 billion minutes OF
VIDeo & Voice
EVERY MONTh
powering
‍60 billion minutes OF
VIDeo & Voice
EVERY MONTh
Use cases

Bring any experience to life with Agora

A doctor waving hello to his patients on a live telehealth video call.
Provide remote healthcare in
real time
Telehealth
A woman with a cheerful expression stands indoors, engaging in live shopping while holding up a yellow shirt on a hanger.
Accelerate sales with
live shopping
Live Shopping
A professor is passionately explaining the lesson to his students on a live educational video call.
Build custom virtual
learning experiences
Education
A person wearing a virtual reality headset and holding controllers is immersed in an AR/VR gaming experience.
Intensify gaming with real-
time engagement
Gaming
A player dunking a basketball on a live stream sports game.
Make your media experience social and interactive
Entertainment

People

Agora

“With the Agora App Builder, we transitioned our codebase quickly and were able to manage many customizations easily. It has been an extremely cost-effective solution.”
Michael Glenn headshot
Michael Glenn Williams
CTO, TotalVU
“Agora’s Adaptive Video Optimization (AVO) drastically improved the real-time video experience in our app. Users get smooth, high-quality video without freezes—even on slow connections and older devices. Since implementing AVO, we’ve seen a 30% increase in session length and engagement."
Ellard Capiral headshot
Ellard Capiral
VP of Engineering, KUMU
“We really wanted to create a unique customer experience, and Agora allowed us to do a lot of customization while other platforms just had one out-of-the-box solution.”
Gil Margolin headshot
Gil Margolin
CTO, Talkspace
"At LiSA, we believe that the future of online shopping is social, community-driven, real-time engagement. Implementing this on our live platform has resulted in conversion rates of up to 35% and engagement rates of up to 90%."
Philippe Frères headshot
Philippe Frères
Co-Founder and CPO, LISA
“Agora’s customizable APIs allowed us to optimize real-time connectivity and network traffic while reducing latency to milliseconds during live streaming and interactive sessions between creators and fans.”
Saurabh Kushwah headshot
Saurabh Singh Kushwah
Co-Founder, Fanory
“The Agora RTE solution is the platform needed to bridge the virtual and physical world, providing everyone a unique view into what’s happening. Its ease of use is an important piece of our innovation puzzle in creating meaningful human connections.”
Cher Wang headshot
Cher Wang
CEO, HTC