Introduction to rtcStats
Learn how to use rtcStats to monitor, analyze, and troubleshoot WebRTC sessions. Turn raw statistics into actionable insights with our smart observation engine.
rtcStats is a comprehensive WebRTC observability and troubleshooting platform designed to turn complex raw data into actionable insights. Whether you are a developer building a new real-time communication app or a support engineer investigating a user complaint, rtcStats simplifies the process of analyzing webrtc-internals and SDK-generated data.
rtcStats is built as an open source project with a SaaS freemium service, allowing you to own your own service logs and traces.
Our goal? Reduce the time you spend troubleshooting and debugging WebRTC issues from hours to minutes.
Why use rtcStats?
WebRTC is notoriously difficult to debug. Raw statistics reports often contain thousands of data points that are hard to collect after the fact and are hard to parse manually. rtcStats bridges this gap by providing:
-
Intuitive Visualizations: Say goodbye to endless JSON files. We transform your data into clear, themed graphs and charts categorized by Overview, Connections, Streams, Devices and Logs
-
Smart Analysis (Observations): Our engine automatically detects issues like high jitter, packet loss, or DTLS failures, surfacing nuanced and elaborate "Observations" so you don't have to go hunting for them
-
Collaborative Debugging: Use the Public Share feature to generate instant links to your analysis, making it easy to include detailed reports in bug tickets or share them with teammates
-
Data Ownership: You control your data. By using our open-source rtcstats-server, you can own your data, anonymize IP addresses and decide exactly what gets sent to the SaaS platform for analysis
Key components
To get the most out of the service, it helps to understand the three main parts of the ecosystem:
| Component | Description |
|---|---|
| rtcstats.js (SDK) | An open-source client-side JavaScript library that collects metrics directly from the user's browser during a session |
| rtcstats-server | A self-hosted open source collection server that receives data from the SDK, ensures privacy via anonymization, and can integrate with our SaaS |
| rtcstats.com (SaaS) | The powerful dashboard where you upload files or sync data to receive expert-level deductions and visual reports |
Core concepts in our knowledge base
As you explore this Knowledge Base, you will frequently encounter these terms:
-
Foundations: The raw, underlying metrics collected via the WebRTC APIs (e.g., bytes sent, timestamps)
-
Calculations: Derived stats (like bitrates or packet loss percentages) computed from the Foundations
-
Agregations: Simple statistical operations on time series metrics such as average, maximum and minimum values
-
Observations: The "brain" of rtcStats. These are specific rules that flag interesting behaviors, such as "TURN/TLS used" or "Poor incoming video quality"
-
Deductions: High-level conclusions aimed at finding the root cause of a connection failure or quality degradation
Getting Started
The easiest way to get started with rtcStats is to create an account on our SaaS service (it is free). And then upload your first webrtc-internals dump file to see the results.
From there? Integrate our SDK and host your own rtcstats-server to start collecting data across your WebRTC deployment.
Was this page helpful?