
QoE (quality of experience) in video streaming is how a playback session feels to the viewer: how fast it starts, whether it stalls, and whether the picture stays steady. QoS measures how well the network delivers, and a fast network can still give your viewers a bad session.
TL;DR:
Updated Oct 19, 2026: definition-first opening, question headings, a labelled QoE diagram, the exact study figures, what the public Analytics API exposes, and a References section.
QoE is the outcome a viewer notices, and it isn't a single number. AIOZ's QoE metrics docs put it plainly: "People remember whether the video started quickly, whether it froze, and whether the picture held steady without distracting jumps." If you run a video service, QoE is the score your viewers keep in their heads, whether or not you measure it yourself.
Picture a 4K stream that takes six seconds to start and stalls twice a minute. On a spec sheet its picture quality is excellent, but nobody would call that a good session. QoE exists as a separate discipline to catch exactly that gap between what the pipeline delivers and what the viewer sits through.
QoS (quality of service) measures the network and the delivery pipeline, while QoE measures the result at the player. Mux's QoE guide sums up the split in two questions: QoS asks "is the network performing well?" and QoE asks "are viewers satisfied with their experience?"

The two are linked, since you can't have good QoE on a network that drops half its packets. The reverse doesn't hold, though, and your session can meet every QoS target and still feel bad. That happens when the player starts on too high a rendition, switches quality every few seconds, or waits too long for the first segment. That is why your monitoring needs player-side events and not only server logs.
There are two common approaches: a standard model that predicts a viewer's score, and a set of player metrics you track directly.
The standard model is ITU-T Recommendation P.1203, built for HTTP adaptive streaming over longer sessions. It has three modules, one for video quality, one for audio quality and one that combines them with playback events into a session score. The output is a mean opinion score (MOS) from 1 (bad) to 5 (excellent). It predicts how a panel of real viewers would rate the session, so you don't need to run a lab test each time.
Most teams start with player metrics instead, because they're cheaper to collect and easier for you to act on. The AIOZ docs list six core metrics you can track:
Our stream health metrics guide shows how to calculate the first two from player events.
Not all of these metrics hurt your audience equally. Nam, Kim and Schulzrinne at Columbia University analyzed 409,511 YouTube views from more than 900 viewers in 102 countries, collected between April 2014 and July 2015. Three findings from their paper, "QoE Matters More Than QoS: Why People Stop Watching Cat Videos", matter for your priorities:
The last finding surprises most people, because a sharper picture sounds like good news. Viewers notice the switch itself, so a player that holds a steady rung often beats one that chases every gain in bandwidth. Our adaptive bitrate guide covers the rules players use to switch less.
AIOZ's docs describe QoE as a balance you can reason about: QoE ≈ perceived quality (VMAF) − rebuffer penalty − startup penalty + stability. The docs say it "isn't a rigid formula," and they use it to explain trade-offs. If stalls rise, the rebuffer penalty can outweigh a sharper picture, and a steady session at a modest rung can score well because stability counts.
Two sessions with the same average bitrate show how this works, and both start in 1.5 seconds. The first never stalls and holds one rendition, while the second stalls twice for three seconds in total and switches rendition six times. QoS dashboards would rate them about the same, but the rebuffer and stability terms score the second session far lower.
The docs also give starting targets, which they call "starting points, not hard limits":
When asked which metric to fix first, the docs say to start with startup and rebuffering, because viewers feel those immediately. That matches the Columbia findings above, which reached the same order from field data.
AIOZ Stream delivers through AIOZ DePIN, a network of independently operated nodes, so which node serves a segment depends on where your viewer is. The QoE docs say AIOZ also measures "how locality and node availability influence startup and stall risk." A single global average can hide a region with weaker node coverage, so compare each of your regions or countries with its own baseline first and then with your global median.
According to the QoE docs, the AIOZ Stream player emits events for play request, first frame, rendition change, stall start and end, and errors. AIOZ aggregates them into session KPIs that can be sliced by device type, app version, ISP and region, and the same signals feed ABR and ladder tuning.
The public Analytics API gives you engagement metrics rather than those QoE numbers. It exposes play, start, end, impression, watch_time, view and retention, broken down by country, device type, operating system or browser. It doesn't return startup time, rebuffer ratio or VMAF, and it has no ISP breakdown. You can still spot QoE trouble with it, for example when your play rate or watch time drops in one country. This request is quoted from the Analytics API docs and wasn't run for this article:
const result = await client.analytics.GetBreakdownMetrics('impression', 'country', {
from: thirtyDaysAgo,
to: now,
limit: 25,
offset: 0,
sort_by: 'metric_value',
order_by: 'desc'
})
// result.data?.data: [{ metric_value, dimension_value, emitted_at }]
// result.data?.totalThe docs suggest a simple first test: upload a short video, enable analytics, and watch the first 100 sessions. Read QoE Metrics in the AIOZ Stream docs for the full model and targets.
Is a higher average VMAF always better for QoE?
No. A high average with frequent quality swings can feel worse than a slightly lower, steadier picture, which is why stability is its own term in the model.
Does QoE apply to live streaming as well as VOD?
Yes. Startup time, rebuffering and switching affect both, although live viewers have less buffer to absorb a slow segment.
What is a good rebuffer ratio?
AIOZ's docs suggest under about 0.5 to 1.0% as a starting target, checked at the 95th percentile so a healthy average doesn't hide a bad tail of sessions.
Is MOS from ITU-T P.1203 the same as a VMAF score?
No. VMAF scores picture quality on a 0 to 100 scale, while a P.1203 MOS is a 1 to 5 session score that also includes audio, stalls and startup delay.
Can you improve QoE without re-encoding?
Often you can, because slow first-segment fetches, ladder gaps that are too wide and switch rules that react too fast can all be fixed at the delivery and player layers.
Which QoE metric should I fix first?
Start with startup time and rebuffer ratio, as both the AIOZ docs and the Columbia study suggest, then work on picture quality and stability.

Stream from your phone to AIOZ Stream with PRISM Live Studio: Custom RTMP setup, documented 1080p and 720p bitrates, Adaptive quality and mobile stability tips.

Choose OBS encoder settings for AIOZ Stream: the documented 1080p30 values, the missing 720p figure, NVENC vs x264, keyframes, 60 fps and a test procedure.

Set up OBS Studio for AIOZ Stream: choose a Custom service, paste the RTMP server URL and stream key, then stream CBR at 4500 to 6000 Kbps with 1 s keyframes.

Seven steps to go live on AIOZ Stream with OBS or PRISM: stream key, session form, RTMP credentials, bandwidth math, and the first two minutes after you start.

Live streaming on AIOZ Stream: a stream key, one session per broadcast, RTMP from OBS or PRISM, HLS playback, plus restreaming, stats and an opt-in archive.

A web3 streaming platform delivers video through independent nodes and settles payments on a blockchain. How it differs from a CDN, and how AIOZ Stream does it.