ZA01 May 2026
2026-05-22
Operators:
🏷 Labels on
Meritech
Mobile Testing Benchmark Report
Campaign
Operators
Category overview
Campaign volume
All test cases — bird's eye to detail
RF signal
NR SS-RSRP avg?
NR SS-RSRP average
5G serving beam signal strength over full drive. Source: nr_cell_meas.nr_servingbeam_ss_rsrp_1.≥−80 dBm Excellent −95 dBm Good −105 dBm Acceptable <−115 dBm Very poor
dBm
NR SS-SINR avg?
NR SS-SINR average
Signal-to-Interference-Noise ratio. Better predictor of throughput than RSRP. Source: nr_servingbeam_ss_sinr_1.≥20 dB Excellent 10 dB Good 5 dB Acceptable <0 dB Very poor
dB
LTE RSRP avg?
LTE RSRP average
LTE anchor signal strength (5G NSA). Source: lte_cell_meas.lte_inst_rsrp_1.
dBm
LTE RSRQ avg?
LTE RSRQ average
LTE signal quality ratio. Degraded RSRQ despite good RSRP = high interference.
dB
Latency
Ping RTT avg?
Ping RTT average
Mean round-trip time across all 1492 ICMP packets (? sessions × 5 packets). Source: ping + ping_rtt tables.
ms
Ping p95?
Ping RTT 95th percentile
Meritech Basic Latency KPI. 95% of packets had RTT below this.
ms · Meritech Basic Latency
TWAMP RTT avg?
TWAMP RTT average
UDP-based, ~7500 pkts/session. Far more representative than ICMP ping.≤100ms=100 ≤200ms=80 ≤300ms=65 ≤500ms=50 >500ms=20
ms
OpenAI TTFT avg?
Time To First Token
Prompt: "Weather in Berlin <100 words". Source: access_time_to_first_token_ms.≤1000ms=100 ≤1500ms=80 ≤2000ms=65 ≤2500ms=50 >2500ms=30
ms
Throughput & media
HTTP DL avg?
HTTP Download session average
App-layer speed across 6 sessions. Source: http_download_session_throughput_avg.≥100Mbps=100 ≥50=80 ≥20=60 ≥5=40 <5=20
Mbps · app layer
HTTP UL avg?
HTTP Upload session average
App-layer upload across 6 sessions.≥50Mbps=100 ≥20=80 ≥10=60 ≥2=40
Mbps
NR 5G signal
NR SS-RSRP avg?
NR SS-RSRP average
Primary 5G signal strength. Source: nr_cell_meas.nr_servingbeam_ss_rsrp_1.≥-80=Excellent −80–-95=Good −95–-105=Marginal <-105=Poor
dBm
NR SS-SINR avg?
NR SS-SINR average
Signal quality (interference ratio). Drives modulation order and MIMO rank. Source: nr_cell_meas.nr_servingbeam_ss_sinr_1.≥20=Excellent ≥10=Good ≥5=Marginal <0=Poor
dB
NR SS-RSRP range?
RSRP min / avg ✕ / max
Floating bar shows full drive range. ✕ marker = average. Wider spread = more RF variability.
dBm · min/avg✕/max
NR SS-SINR range?
NR SS-SINR range
Min/avg/max SINR over full drive. Shows signal quality variation across route.Source: nr_cell_meas.nr_servingbeam_ss_sinr_1
dB
NR SS-RSRQ avg?
NR SS-RSRQ average
Reference Signal Received Quality — combines RSRP and interference. Used for cell reselection.Source: nr_cell_meas.nr_servingbeam_ss_rsrq_1
dB
NR samples?
NR measurement samples
Total rows in nr_cell_meas for this operator. More = better route coverage picture.Source: COUNT(*) from nr_cell_meas
rows in nr_cell_meas
LTE signal
LTE RSRP avg?
LTE RSRP average
LTE anchor signal (5G NSA mode). Source: lte_cell_meas.lte_inst_rsrp_1.
dBm
LTE RSRQ avg?
LTE RSRQ average
LTE signal quality ratio. Degraded RSRQ despite good RSRP = high interference.
dB
LTE RSRP range?
LTE RSRP range
Min/avg/max LTE RSRP over full drive. Shows LTE anchor signal variation.Source: lte_cell_meas.lte_inst_rsrp_1
dBm
Carrier aggregation & utilisation
NR CA %?
NR Carrier Aggregation %
% of NR measurements where a secondary component carrier is active (nr_band_2 IS NOT NULL). Higher = more bandwidth stacking.
% NR meas with SCC active
NR active (RAT %)?
NR active % — NR RSRP confirmed
% of GPS samples where NR serving beam RSRP was actively measured (nr_cell_meas.nr_band_1 IS NOT NULL AND nr_servingbeam_ss_rsrp_1 IS NOT NULL). Previous method using raw row count was wrong — nr_cell_meas has rows at every posid even when UE is LTE-only, inflating NR% to near 100%. on the route.
% of drive on 5G
ENDC success rate?
ENDC (EN-DC) Success Rate
% of LTE+NR (E-UTRA/NR Dual Connectivity) addition attempts that succeeded. Source: pp_events_no_pause — "ENDC SgNB Addition Success" / "ENDC SgNB Addition Attempt". Low ENDC SR = devices struggle to attach to 5G.
% SgNB Addition success
NR avg bandwidth?
NR PCC average bandwidth
Average configured NR bandwidth in MHz for the Primary Component Carrier. Source: pp_nr_rb_stat.nr_bw_1. Berlin deployments typically use 80MHz on Band 78 (n78, 3.5GHz).
MHz · PCC
NR band distribution?
NR PCC band distribution
% of NR measurement rows per primary serving band. Source: GROUP BY nr_band_1. Berlin operators predominantly use n78 (3.5 GHz Sub-6 GHz). n3 (1800 MHz) used as SCC or fallback.
% measurements per band
LTE band distribution?
LTE PCC band distribution
% of LTE measurement rows per band, computed by mapping EARFCN → band number. DT uses B3 (1800 MHz) as primary anchor. O2 uses B3+B1. VF and 1&1 use B1 (2100 MHz).
% measurements per band
NR channel quality
NR 256QAM %
% of NR samples · modulation quality
NR avg MIMO rank?
NR average MIMO rank
Average Rank Indicator (1–4). Number of parallel spatial MIMO streams. Higher = better channel conditions.Source: nr_cell_meas.nr_ri_1
weighted avg · 1–4
NR resource utilisation & modulation
NR DL RB %?
NR DL Resource Block utilisation %
Average % of available DL resource blocks actively scheduled. Source: pp_nr_rb_stat.nr_dl_rb_percent_1. Low % = network not congested. High % during test = heavy traffic demand or small cell.
% avg · pp_nr_rb_stat
NR UL RB %?
NR UL Resource Block utilisation %
Average % of UL resource blocks used. Source: pp_nr_rb_stat.nr_ul_rb_percent_1. UL RB% typically lower than DL reflecting asymmetric mobile traffic patterns.
%
NR CQI avg?
NR Channel Quality Indicator average
CQI (0–15) reported by UE. Higher = better channel. CQI 8 → typically 64QAM. CQI 12+ → 256QAM. Source: pp_statement_sum_nr_dl_modulation_changes.nr_cqi.
0–15
NR RI avg (MIMO rank)?
NR Rank Indicator average
Number of MIMO spatial streams (layers) used. RI=1 = single stream, RI=2 = 2-layer MIMO (doubles theoretical peak). Source: nr_dl_modulation_changes.nr_ri.
1=single · 2=2×MIMO
NR DL modulation distribution?
NR DL modulation distribution
% of modulation-change events per order. Source: pp_statement_sum_nr_dl_modulation_changes.nr_dl_modulation_order_1.
QPSK: 2 bits/sym — poor signal
16QAM: 4 bits/sym — medium signal
64QAM: 6 bits/sym — good signal
256QAM: 8 bits/sym — excellent signal
More 64QAM/256QAM = better spectral efficiency.
% of modulation events
NR vs LTE CA %?
NR CA % vs LTE CA %
Side-by-side comparison of NR and LTE carrier aggregation usage. NR CA = nr_band_2 IS NOT NULL. LTE CA = lte_earfcn_2 IS NOT NULL.
dark=NR CA · light=LTE CA
TWAMP · UDP · files.azenqos.com:862 · 49 sessions · 106,459 pkts
RTT avg?
TWAMP RTT average
UDP, 7500 pkts/session. Source: twamp.twamp_rtt_avg.
ms
RTT p90?
TWAMP RTT 90th percentile
90% of ~7500 UDP packets had RTT below this. VF p90=947ms vs avg=566ms reveals high tail variance from routing asymmetry.
ms
Jitter — Gaming Grade?
TWAMP Gaming Grade Jitter
From ~7500 per-packet RTT diffs (twamp_sub.twamp_sub_rtt). Meritech Gaming Grade KPI.
ms · ~7500 per-packet diffs
Outbound vs inbound?
TWAMP one-way delay
Outbound = device→server. Inbound = server→device. Asymmetry indicates routing differences. VF shows 401ms outbound vs 165ms inbound.
ms · one-way delay
First packet time?
TWAMP first packet time
Time to receive first TWAMP response packet after session start.Source: twamp_sub — first row timestamp − session_start
ms · tr6 attempt → tr12 first UL pkt
TWAMP session SR?
TWAMP session success rate
% of TWAMP sessions completed without timeout or error.Source: statement_sum_twamp twamp_timing_tr19a_twamp_operation_success
% · tr19a success
HTTP DL connection timing
DL TTFB avg?
HTTP Download Time To First Byte
server_connecting → first_byte_received. Includes TCP handshake + DNS resolution + server processing. Source: statement_sum_http_download timestamps.≤50ms=100 ≤100ms=85 ≤200ms=70
ms · connecting → first byte
TCP setup avg?
TCP Handshake time
server_connecting → server_connected (ms). Pure SYN/ACK RTT — directly reflects network round-trip to CDN edge. Excludes DNS and server processing.
ms · SYN/ACK RTT
DNS + req processing?
DNS + server request processing
Time after TCP handshake until first data byte — DNS lookup and server processing delay.Source: statement_sum_http_download first_byte_received − server_connected (post-handshake)
ms · TTFB − TCP
Transfer duration?
HTTP DL transfer duration
Time from first byte to last byte. Pure data transfer time at network speed.Source: statement_sum_http_download last_byte_received − first_byte_received
ms · first → last byte
UL TTFB avg?
HTTP UL Time To First Byte Sent
Time from connection start to first upload byte transmitted.Source: statement_sum_http_upload first_byte_sent_time − server_connecting_time
ms · connecting → first byte sent
UL transfer duration?
HTTP UL transfer duration
Time from first to last upload byte. Measures sustained UL throughput window.Source: statement_sum_http_upload last_byte_sent − first_byte_sent
ms · first → last byte sent
OpenAI · 23 sessions each
TTFT avg?
Time To First Token — average
Source: access_time_to_first_token_ms. Meritech AI Prompting TTFT KPI. Includes network RTT + AI inference.≤1000ms=100 ≤1500ms=80 ≤2000ms=65 ≤2500ms=50
ms · Meritech AI TTFT
Response time avg?
Total AI response time
First send → last token. Source: response_ms. Meritech AI Response Time KPI.≤1500ms=100 ≤2000ms=80 ≤2500ms=65 ≤3000ms=50
ms · Meritech AI Response
Generation time avg?
AI token generation time
first_token_received → completion. Time for model to stream all tokens after first. Separates server queue delay from generation throughput. Source: statement_sum timestamps.
ms · first_token → completion
TTFT p50 / p90 / p95?
OpenAI TTFT percentiles
P50=typical, P90=near worst-case, P95=worst-case AI response start time.Source: statement_sum_open_ai_prompt_test first_token_received_time − start_time → percentiles
ms
HTTP Download · 52 sessions
DL avg?
HTTP DL average speed
Session-average throughput. Source: http_download_session.http_download_session_throughput_avg. 52 sessions per operator.≥100Mbps=100 ≥50Mbps=80 ≥20Mbps=60
Mbps · Meritech Basic Speed
DL max?
HTTP DL peak throughput
Maximum download speed in any single session.Source: pp_statement_sum_http_download.app_tp_dl_mbps_max
Mbps · peak burst
DL p95 / p5?
HTTP DL 95th percentile
95% of sessions above this. Meritech Basic Speed 95% KPI. Computed: pct(session_avgs, 95).
Mbps
DL vs UL avg?
DL vs UL average comparison
Side-by-side DL vs UL average throughput for this test variant.Source: pp_statement_sum_http_download.app_tp_dl_mbps_avg pp_statement_sum_http_upload.app_tp_ul_mbps_avg
Mbps · dark=DL light=UL
HTTP DL · Fixed (10 MB) · 26 sessions
DL Fixed avg?
DL Fixed avg
HTTP DL avg — Fixed test (10 MB, 1 session/loop).pp_statement_sum_http_download app_tp_dl_mbps_avg WHERE session_count=1
Mbps · 10 MB file
DL Fixed max?
DL Fixed max
HTTP DL peak — Fixed test sessions.pp_statement_sum_http_download app_tp_dl_mbps_max WHERE session_count=1
Mbps
DL Fixed p95?
DL Fixed p95
HTTP DL 95th percentile — Fixed test.pp_statement_sum_http_download app_tp_dl_mbps_95th_percentile WHERE session_count=1
Mbps
DL Fixed TTFB?
DL Fixed TTFB
Time To First Byte — Fixed test. TCP connect to first data byte.statement_sum_http_download first_byte_received − server_connecting_time
ms
HTTP DL · Capacity (500 MB) · 26 sessions
DL Capacity avg?
DL Capacity avg
HTTP DL avg — Capacity test (500 MB, period-time).pp_statement_sum_http_download app_tp_dl_mbps_avg WHERE session_count>1
Mbps · 500 MB file
DL Capacity max?
DL Capacity max
HTTP DL peak — Capacity test sessions.pp_statement_sum_http_download app_tp_dl_mbps_max WHERE session_count>1
Mbps
DL Capacity p95?
DL Capacity p95
HTTP DL 95th percentile — Capacity test.pp_statement_sum_http_download app_tp_dl_mbps_95th_percentile WHERE session_count>1
Mbps
DL Capacity TTFB?
DL Capacity TTFB
TTFB — Capacity test. Connect overhead on large file.statement_sum_http_download first_byte_received − server_connecting_time
ms
HTTP Upload · 49 sessions
UL avg?
HTTP UL average speed
Session-average upload throughput. Source: http_upload_session. 49 sessions per operator.≥50Mbps=100 ≥20Mbps=80 ≥10Mbps=60
Mbps
UL max?
HTTP UL peak throughput
Maximum upload speed in any single session.Source: pp_statement_sum_http_upload.app_tp_ul_mbps_max
Mbps
UL p95?
HTTP UL 95th percentile
High-end consistent upload speed, excluding top 5% outliers.Source: pp_statement_sum_http_upload.app_tp_ul_mbps_95th_percentile
Mbps
UL transfer duration?
HTTP UL transfer duration
Time from first to last upload byte. Measures sustained UL throughput window.Source: statement_sum_http_upload last_byte_sent − first_byte_sent
ms · first → last byte
HTTP UL · Fixed (5 MB) · 24 sessions
UL Fixed avg?
UL Fixed avg
HTTP UL avg — Fixed test (5 MB, 1 session/loop).pp_statement_sum_http_upload app_tp_ul_mbps_avg WHERE session_count=1
Mbps · 5 MB file
UL Fixed max?
UL Fixed max
HTTP UL peak — Fixed test sessions.pp_statement_sum_http_upload app_tp_ul_mbps_max WHERE session_count=1
Mbps
UL Fixed p95?
UL Fixed p95
HTTP UL 95th percentile — Fixed test.pp_statement_sum_http_upload app_tp_ul_mbps_95th_percentile WHERE session_count=1
Mbps
UL Fixed TTFB?
UL Fixed TTFB
First upload byte sent — Fixed test.statement_sum_http_upload http_upload_first_byte_sent − server_connecting_time
ms
HTTP UL · Capacity (500 MB) · 25 sessions
UL Capacity avg?
UL Capacity avg
HTTP UL avg — Capacity test (500 MB, period-time).pp_statement_sum_http_upload app_tp_ul_mbps_avg WHERE session_count>1
Mbps · 500 MB file
UL Capacity max?
UL Capacity max
HTTP UL peak — Capacity test sessions.pp_statement_sum_http_upload app_tp_ul_mbps_max WHERE session_count>1
Mbps
UL Capacity p95?
UL Capacity p95
HTTP UL 95th percentile — Capacity test.pp_statement_sum_http_upload app_tp_ul_mbps_95th_percentile WHERE session_count>1
Mbps
UL Capacity TTFB?
UL Capacity TTFB
First upload byte sent — Capacity test.statement_sum_http_upload http_upload_first_byte_sent − server_connecting_time
ms
YouTube · ? sessions · all SR 100%
Init Buffer avg?
YouTube Initial Buffer Time (ms)
Time before first frame rendered. Source: pp_statement_sum_youtube.youtube_first_buffer ×1000.≤500ms=100 ≤1000ms=85 ≤2000ms=70 ≤4000ms=50 >4s=30
ms · Init Buffer / VST
VST p90 / Init Buf
ms
VST range?
YouTube VST range
Min/avg/max Video Start Time. Shows spread of startup experience.Source: pp_statement_sum_youtube.youtube_duration_to_first_play_secs × 1000
ms · min/avg✕/max
NR DL tput during YT?
NR DL throughput during YouTube
Avg NR DL speed during YouTube sessions — actual network load under video streaming.Source: nr_throughput joined to youtube posids nr_p_plus_scell_nr_pdsch_tput_mbps
kbps · NR PDSCH
Browse · ? sessions · all SR 100%
Page load avg?
Browse page load time average
Source: browse.browse_duration (seconds). Includes DNS + TCP + resource load.≤3s=100 ≤5s=85 ≤8s=70 ≤12s=50
s
Page load p90?
Browse page load 90th percentile
Worst-case load time for 90% of sessions.Source: pp_statement_sum_browse.duration_time_secs × 1000
s
Browse throughput?
Browse session throughput
Avg throughput during browse session (total bytes / duration).Source: statement_sum_browse total_bytes / load_duration
kbps
YouTube vs Browse tput?
YouTube vs Browse NR throughput
NR DL throughput comparison during YouTube vs Browse. Shows how different apps load the network.Source: nr_throughput joined to posids during each test nr_p_plus_scell_nr_pdsch_tput_mbps
kbps · YT=dark · Browse=light
Voice M2M — Paired Calls · POLQA SWB MOS · MO ↔ MT timing
Pair Success Rate?
Pair Success Rate (Option A)
paired / (paired + mo_unpaired + mt_unpaired). Section 28.5 algorithm: an MO leg paired with its MT counterpart within 5s constitutes a successful pair. Unpaired legs are call attempts whose other side was never seen.
paired / total attempts
Pair Delta?
Pair Delta (seconds)
Time between MO call_init_time and MT call_init_time within a paired record. Smaller is better; expected ~1s on healthy networks.
avg · min/max
MO Call SR?
MO Call Success Rate (Option B)
Fraction of paired records where call_result_mo == 'Success'. Distinct from Pair SR: this measures call completion within paired calls, not pairing success.
call_result_mo
MT Call SR?
MT Call Success Rate (Option B)
Fraction of paired records where call_result_mt == 'Success'.
call_result_mt
MO Setup Duration
ms · avg · min/max
MT Setup Duration
ms · avg · min/max
POLQA MOS · MO side?
POLQA SWB MOS (MO)
ITU-T P.863 Super-Wideband POLQA score for the MO leg of each paired call. Range 1.0 to 5.0, higher is better.
1.0–5.0 · avg · min/max
POLQA MOS · MT side
1.0–5.0 · avg · min/max
WhatsApp Call — Paired Calls · MO ↔ MT timing · Conversation duration
Pair Success Rate?
Pair Success Rate (Option A)
paired / (paired + mo_unpaired + mt_unpaired). Section 28.5 algorithm (reciprocal phone match plus 5s time window) extended to WhatsApp per Section 32. Unpaired legs are call attempts whose other side was never seen.
paired / total attempts
MO Call SR?
MO Call Success Rate (Option B)
Fraction of MO records (paired plus unpaired_mo) where call_result_mo == 'Success'. Distinct from Pair SR: this measures call completion across all MO attempts, including unpaired ones.
call_result_mo
MT Call SR?
MT Call Success Rate (Option B)
Fraction of MT records (paired plus unpaired_mt) where call_result_mt == 'Success'.
call_result_mt
Pair Delta?
Pair Delta (seconds)
Time between MO call_init_time and MT call_init_time within a paired record. Smaller is better; sub-second is typical on healthy WhatsApp connections.
avg · min/max
MO Setup Duration
ms · avg · min/max
MT Setup Duration
ms · avg · min/max
Conversation Duration · MO side?
MO Conversation Duration
Time between call established and call end as observed by the MO leg. Source: paired[].mo_side.call_call_duration_ms.
ms · avg · min/max
Conversation Duration · MT side?
MT Conversation Duration
Time between call established and call end as observed by the MT leg. Source: paired[].mt_side.call_call_duration_ms. MO and MT durations typically differ by a few hundred milliseconds due to state machine timing.
ms · avg · min/max
Generic OTT — WebRTC Voice MOS (ViSQOL) · Independent per-car runs combined
MOS DL?
ViSQOL MOS · Downlink
Per-segment ViSQOL score for the receiving direction of each WebRTC OTT call. Range 1.0 to 5.0, higher is better. Aggregated across both cars (Section 33.1 replica-combine, weighted by n_segments_dl).
1.0–5.0 · avg · min/max
MOS UL?
ViSQOL MOS · Uplink
Per-segment ViSQOL score for the transmitting direction. Weighted by n_segments_ul. UL typically scores lower than DL on cellular uplink-limited networks.
1.0–5.0 · avg · min/max
MOS DL p5?
MOS DL 5th percentile
The worst 5% of DL segments. Recomputed from raw _raw.segments[] across both cars (not averaged from per-car p5). Reflects the bottom of the quality envelope.
worst 5% segments
MOS UL p5
worst 5% segments
Packet Loss DL?
DL Packet Loss percentage
Per-segment packet loss on the receiving direction, weighted by n_segments_dl. Healthy WebRTC connections show under 1%.
% · avg
Jitter DL?
DL Jitter (ms)
Per-segment DL jitter weighted by n_segments_dl. WebRTC typically tolerates jitter up to about 30ms before audio quality degrades noticeably.
ms · avg
App Throughput DL?
App-layer DL Throughput (Mbps)
Codec-level DL throughput observed during the OTT call. Source: pp_ott_voice_mos.ott_app_tp_dl_mbps_avg, weighted by n_segments_dl.
Mbps · avg
App Throughput UL
Mbps · avg
OpenAI — full detail · 23 sessions each
TTFT avg?
OpenAI Time To First Token
Time from API request sent to first token received. Meritech AI TTFT KPI. Source: pp_statement_sum_open_ai_prompt_test.access_time_to_first_token_ms.≤1000ms=100 ≤1500ms=80 ≤2000ms=65 ≤2500ms=50
ms
TTFT p50 / p90 / p95?
OpenAI TTFT percentiles
P50=typical, P90=near worst-case, P95=worst-case AI response start time.Source: statement_sum_open_ai_prompt_test first_token_received_time − start_time → percentiles
ms
Response time avg?
Total AI response time
First send → last token. Source: response_ms. Meritech AI Response Time KPI.≤1500ms=100 ≤2000ms=80 ≤2500ms=65 ≤3000ms=50
ms
Generation time avg?
AI token generation time
first_token_received → completion. Time for model to stream all tokens after first. Separates server queue delay from generation throughput. Source: statement_sum timestamps.
ms · first_token → completion
TTFT range?
OpenAI TTFT range
Min/avg/max Time To First Token across all sessions.Source: statement_sum_open_ai_prompt_test first_token_received_time − start_time
ms
RF context during AI sessions?
RF context during OpenAI sessions
NR RSRP/SINR during OpenAI sessions. Shows correlation between signal quality and AI latency.Source: nr_cell_meas joined via posid during openai sessions nr_servingbeam_ss_rsrp_1, nr_servingbeam_ss_sinr_1
NR RSRP avg / NR SINR avg · per session
AI Connection Test · ICMP · 6 AI service hostnames · per Section 24.2.4
Success ratio?
ai_connection_test.aggregate.success_ratio
Aggregate ICMP success rate across all AI service hostnames. Section 24.2.4 Reliability KPI.
% · Section 24.2.4
Basic latency p5?
ai_connection_test.aggregate.basic_latency_p5
Best 5% of ICMP latencies across all AI hostnames. Section 24.2.4 Performance KPI.
ms · Section 24.2.4
Top latency p95?
ai_connection_test.aggregate.top_latency_p95
95th percentile of ICMP latencies. Worst-of-2 replica-combine fallback. Section 24.2.4 Performance KPI.
ms · Section 24.2.4
Jitter?
ai_connection_test.aggregate.jitter
Mean of |RTT[i]-RTT[i-1]| across per-packet samples. Section 24.2.4 Performance KPI.
ms · Section 24.2.4
Per-server breakdown · keyed by hostname · Section 24.3.4 per_server
Web Browsing · aggregate across all URLs · per Section 24.2.3
Success ratio?
web_browsing.aggregate.success_ratio
Aggregate success rate across all browse URLs. Section 24.2.3 Reliability KPI.
% · Section 24.2.3
Session time avg?
web_browsing.aggregate.session_time
Average page load time across all sessions. Section 24.2.3 Performance KPI.
seconds · Section 24.2.3
N sessions?
web_browsing._raw.n_sessions
Total browse sessions executed across all URLs and bundles.
count
N URLs?
web_browsing._raw.n_urls
Distinct URLs tested. URL list comes from data (not hardcoded) per Section 24.4.2 Q4.
count
Per-URL breakdown · Section 24.3.5 per_url
YouTube Video · isLive=false · per Section 24.2.3 / Section 24.4.3 item 4
Success ratio?
youtube_video.aggregate.success_ratio
YouTube on-demand video test success rate. Section 24.2.3 Reliability KPI.
% · Section 24.2.3
Video start time?
youtube_video.aggregate.video_start_time
Loading-time to first-play. Derived from event timestamps when pp_statement_sum_youtube unavailable. Section 24.2.3 Performance KPI.
seconds · Section 24.2.3
VSQI?
youtube_video.aggregate.vsqi
Video Service Quality Index (VMOS). Section 24.2.3 Performance KPI. Not derivable from current merged.db schema - emitted as null with _raw.vsqi_status flag.
VMOS · Section 24.2.3
N sessions
count
YouTube Live · isLive=true · per Section 24.2.3 / Section 24.4.3 item 4
Success ratio?
youtube_live.aggregate.success_ratio
YouTube live-stream test success rate. Section 24.2.3 Reliability KPI.
% · Section 24.2.3
Video start time?
youtube_live.aggregate.video_start_time
Loading-time to first-play for live streams. Section 24.2.3 Performance KPI.
seconds · Section 24.2.3
VSQI
VMOS · Section 24.2.3
N sessions
count
Benchmark Results — 2026-05-22
KPI / Metric
KPI ↕Cat ↕ UnitBetter
Layer:
Distributions — CDF & PDF overlay

Lines = CDF (left axis)  ·  Bars = PDF (right axis)  ·  RF Signal charts show raw distributions — test charts can be filtered by RF condition below.

RF Signal
NR SS-RSRP
dBm · per measurement
NR SS-SINR
dB · per measurement
LTE RSRP
dBm · per measurement
Latency
Filter by RF condition:
Ping RTT avg
ms
Ping RTT p95
ms
Ping jitter
ms
TWAMP RTT avg
ms
TWAMP RTT p90
ms
Throughput
Filter by RF condition:
HTTP DL avg
Mbps
HTTP DL p95
Mbps
HTTP DL TTFB
ms
HTTP UL avg
Mbps
Browse load
ms
Media & AI
Filter by RF condition:
YouTube VST
ms
YT Init Buffer
ms
OpenAI TTFT
ms
Teams setup
ms
AVEQ MOS
P.1203 · 1-5
Call Detail Records (CDR)
Download
Workbook:
Sheet:
Loading CDR data…
Loading signalling data... Checking data/signalling_EQ1.json
Test Events