Back

Blog details

Stream Health Metrics: Rebuffering Ratio and Startup Time

AIOZ Network
6 min readSeptember 22, 2026
aioz-streamguide

Stream health metrics tell you whether playback worked, not just whether someone watched. Startup time is the wait from pressing play to the first frame. Rebuffering ratio is the share of a session spent frozen. Exit-before-video-start counts viewers who gave up before any frame appeared.

These sit underneath the engagement numbers in the watch-time and retention dashboard covered earlier in this series. A viewer who quit while waiting never shows up in your retention chart at all.

TL;DR:

  • Startup time is the delay between pressing play and the first frame appearing. The widely-cited benchmark: viewers start abandoning past roughly 2 seconds, and each additional second past that adds about 5.8% more abandonment, per a landmark Akamai study of 6.7 million viewing sessions.
  • Rebuffering ratio is stall time divided by total watch time. Target under 1%, ideally under 0.5%; one study found a video that stalled for just 1% of its duration lost viewers 5% of their watch minutes compared to smooth playback.
  • Exit-before-video-start (EBVS) counts viewers who clicked play, waited, and left before the first frame ever appeared, a real behavioral loss that doesn't show up in play counts or watch-time metrics at all, since these viewers never technically started a session.
  • AIOZ Stream's own QoE documentation describes startup time and rebuffer ratio as metrics it aggregates into "session-level KPIs" internally, but no dedicated API endpoint for retrieving them is documented, a real gap separate from the general Analytics API already covered in this series.
  • EBVS specifically doesn't appear anywhere in AIOZ's documentation, not even conceptually, a second, distinct gap from the missing API endpoint.

What is a good video startup time?

Startup time (also called video start time or join time) is the elapsed time from pressing play to the first frame rendering on screen. The number that anchors most industry guidance traces back to a landmark Akamai study analyzing 6.7 million viewing sessions over 10 days: viewers begin abandoning a video that hasn't started within roughly 2 seconds, and each additional second of delay past that point increases the abandonment rate by approximately 5.8%. That's not a soft guideline, it compounds fast, a 10-second startup delay approximates 58% additional abandonment on top of the baseline. AIOZ Stream's own QoE documentation defines the same metric in nearly identical terms: "how long from play to first frame. Viewers feel the difference between 1.2s and 3s," and includes a startup penalty directly in its documented QoE formula, QoE ≈ Perceived quality (VMAF) − Rebuffer penalty − Startup penalty + Stability, already covered in more depth in the QoE article.

Video player loading interface representing startup time and buffering health metrics

What is rebuffering ratio?

Rebuffering ratio is total stall time divided by total watch time, the share of a viewing session spent frozen waiting for more data rather than playing. The commonly cited target is under 1%, with better-performing platforms aiming under 0.5%; AIOZ's own documentation frames the stakes plainly: "total stall time divided by watch time. Even a single two-second freeze can break immersion." The real-world cost is measurable and larger than the raw percentage suggests, one widely cited analysis found that a video which stalled for just 1% of its total duration lost viewers roughly 5% of their watch minutes compared to sessions with smooth playback, a single freeze doesn't just cost the seconds it lasted, it measurably reduces how much of the rest of the video gets watched at all.

Exit-before-video-start: the blind spot general analytics can't see

Exit-before-video-start (EBVS) counts something neither play counts nor watch-time metrics can: viewers who clicked play, watched a loading spinner, and left before the first frame ever rendered. That's a categorically different failure from a slow-but-completed start or mid-playback rebuffering, these are viewers who never technically began a session at all by most analytics' definitions, which is exactly why EBVS matters as its own tracked number rather than something a rebuffer-ratio or startup-time metric implicitly covers. A platform can report a perfectly healthy average startup time while still losing a meaningful share of its audience to abandonment during that wait, since an average hides the tail: the sessions that never started are the ones average startup time, by definition, never counts. Worth being direct about a real gap here: EBVS doesn't appear anywhere in AIOZ Stream's documentation, not in the general Analytics API, and not in the QoE concepts page that does define startup time and rebuffer ratio. That's a genuine blind spot worth knowing about rather than assuming it's covered by proxy.

What AIOZ Stream exposes today

Checked directly rather than assumed: AIOZ's QoE concepts documentation states plainly that "the player emits events that map to the metrics above: play request, first frame shown, rendition change, stall start/end, and error. We aggregate these into session-level KPIs, then let you slice by device type, app version, ISP, and region." That's a real, specific description of startup time and rebuffer ratio being tracked and aggregated internally. What isn't documented anywhere: a corresponding API endpoint to query those session-level KPIs. The general Analytics API covered in the dashboard article exposes play, start, end, impression, watch_time, view, retention, and play_rate, none of which map to rebuffer ratio or startup time directly. That's a real, specific gap distinct from the general analytics coverage: AIOZ describes tracking QoE session KPIs conceptually but doesn't document a way to pull them back out via API today. The practical workaround, given the player events AIOZ's own docs list by name (play request, first frame shown, stall start/end), is client-side instrumentation: a player integration can listen for those same event types directly in the browser or app and compute startup time and rebuffer ratio locally, the same underlying signal AIOZ's player already emits, just captured at the client rather than pulled from a server-side query.

Frequently Asked Questions

What's a good startup time for video?
Under roughly 2 seconds is the commonly cited threshold before meaningful abandonment begins; each additional second past that point adds about 5.8% more abandonment per the landmark Akamai study this benchmark comes from.

What rebuffering ratio should I target?
Under 1% is the standard target, with strong-performing platforms aiming under 0.5%. Even a 1% stall rate has been shown to cost roughly 5% of total watch minutes.

What is exit-before-video-start (EBVS)?
The share of viewers who click play, wait, and leave before the first frame ever appears. It's distinct from a slow startup time because these sessions never technically start, so they don't show up in play counts or watch-time metrics at all.

Does AIOZ Stream track rebuffering ratio and startup time?
Its own QoE documentation describes both as metrics aggregated into internal session-level KPIs, but no API endpoint for retrieving them is documented, a real gap separate from its general Analytics API.

Does AIOZ Stream track exit-before-video-start?
No, it doesn't appear anywhere in AIOZ Stream's documentation, neither in the Analytics API nor the QoE concepts page.

How can I measure startup time and rebuffering if there's no API for it?
AIOZ's own docs name the underlying player events, play request, first frame shown, stall start/end, which a client-side integration can listen for directly and compute the metrics locally, the same signal the platform's internal aggregation is described as using.

References

We only send updates when meaningful changes ship, and you can unsubscribe anytime

Related Content

blog thumbnail

Video Streaming Protocols: HLS, DASH, WebRTC, RTMP and SRT

Video streaming protocols move video from encoder to viewer. See how RTMP, SRT, HLS, DASH and WebRTC differ in latency, transport and where each one fits.

aioz-streamguide
7 min readNovember 04, 2026
blog thumbnail

What Is Decentralized Live Streaming and How Does It Work?

Decentralized live streaming sends a real-time broadcast through independently run nodes instead of one company's servers. Here's how each stage of it works.

aioz-streamguide
6 min readNovember 03, 2026
blog thumbnail

Video Streaming Glossary: Codecs, Protocols and Delivery A-Z

A video streaming glossary of 114 terms, from AAC and ABR to WebRTC and Widevine, each defined in plain English with sources and links to the deep posts.

aioz-stream
23 min readOctober 31, 2026
blog thumbnail

Monitor Livestream Health With Bitrate, FPS and Viewer Count

Read the AIOZ Stream Statistics panel: bitrate in and out, FPS in and out and current viewers, plus the documented rules for each and what the docs leave out.

aioz-streamguide
6 min readOctober 30, 2026
blog thumbnail

How to Embed a Livestream on Your Website (Link or iFrame)

Embed an AIOZ Stream livestream with the Share button's iframe or send the Public Playback URL as a link. Covers API fields, public access limits and doc gaps.

aioz-streamguide
6 min readOctober 27, 2026
blog thumbnail

Stream Key vs Streaming Session: Preconfiguring a Livestream

Learn how a stream key differs from a streaming session on AIOZ Stream, what each one stores, and what to preconfigure before you go live. Docs-based guide.

aioz-streamguide
7 min readOctober 23, 2026