What Is Dropped Frame?
Short answer: A dropped frame is a scheduled visual frame that is not presented because it arrived too late or could not be rendered.
Dropped Frame belongs to the performance & quality layer of a real-time avatar system. Repeated dropped frames make facial and body motion look uneven even when audio remains continuous. The useful engineering question is not merely whether the feature exists, but which component owns it and which event proves it worked.
| Quick reference | Answer |
|---|---|
| Category | Performance & quality |
| Stack boundary | Quality telemetry |
| Primary concern | Repeated dropped frames make facial and body motion look uneven even when audio remains continuous. |
| Example | A browser avatar skips late motion frames during a CPU spike to remain synchronized with speech. |
Dropped Frame definition
A dropped frame is a scheduled visual frame that is not presented because it arrived too late or could not be rendered. Here the term is scoped to a live AI avatar: a system that listens, generates a response, produces speech and motion, and presents the result while the user remains in the interaction. In that setting, dropped frame must coexist with conversation state, interruption, synchronization, and device constraints.
An implementation definition should name the input, output, owner, and lifecycle. That prevents one team from using “dropped frame” for a local operation while another uses it for the user-visible outcome. Repeated dropped frames make facial and body motion look uneven even when audio remains continuous.
Why Dropped Frame matters in a real-time AI avatar
Repeated dropped frames make facial and body motion look uneven even when audio remains continuous. A healthy average can conceal a slow tail, repeated stalls, or a device-specific regression that users experience as an unreliable conversation. In practice, this makes dropped frame part of the product experience rather than an invisible implementation detail.
The risk is easiest to see in the article’s example: a browser avatar skips late motion frames during a CPU spike to remain synchronized with speech. The behavior needs to remain correct across the whole turn, including queued work and late events, not only at the instant the primary decision is made.
Where Dropped Frame sits in the avatar stack
The measures that reveal startup speed, tail latency, stalls, bandwidth, and sync quality. Telemetry converts visible avatar behavior into defined events and distributions. Startup, sustained production, network delivery, playback, and rendering are measured separately before they are combined into an end-to-end view.
For dropped frame, the upstream boundary is a precisely named start event. The downstream boundary is an observable user-facing result such as audible speech, visible motion, a presented frame, or a completed recovery. Maintain a shared event dictionary so product, client, and backend teams measure the same boundaries and can reproduce a regression. Any later component should consume the resulting state or data without silently redefining what the term means.
How Dropped Frame works
1. Define the input and configuration boundary.
Count missed presentation deadlines, not only renderer errors. Document the chosen value or rule alongside the environment in which it was tested; otherwise a change can alter dropped frame without a clear baseline.
2. Make runtime ownership explicit.
Correlate drops with main-thread tasks, GPU time, and asset uploads. Make the responsible component visible in logs and cancellation paths so two services do not make conflicting decisions about the same turn.
3. Turn the behavior into an observable contract.
Prefer skipping stale frames over displaying an ever-growing delayed queue. Capture the corresponding event or state in telemetry and test both the expected path and a failure path. This turns dropped frame from an assumption into a verifiable behavior.
Practical example
A browser avatar skips late motion frames during a CPU spike to remain synchronized with speech. A useful test recreates that moment and follows the term-specific controls in order:
- Count missed presentation deadlines, not only renderer errors.
- Correlate drops with main-thread tasks, GPU time, and asset uploads.
- Prefer skipping stale frames over displaying an ever-growing delayed queue.
How to test or measure Dropped Frame
Declare start and end events before comparing results. Use distributions rather than averages alone, retain sample counts, and correlate outliers with pipeline stages so a high-level metric remains actionable.
For dropped frame, track P50/P95/P99 latency, startup milestones, queue depth, stalls, frame deadlines, sustained throughput, bandwidth, and synchronization error. Review distributions and failure counts rather than relying on one successful demo. Segment the result by region, device, network type, browser or runtime, provider, model, utterance length, load level, and session phase; a global average can conceal a failure limited to one environment.
Minimum test checklist
- Boundary: Count missed presentation deadlines, not only renderer errors.
- Ownership: Correlate drops with main-thread tasks, GPU time, and asset uploads.
- Verification: Prefer skipping stale frames over displaying an ever-growing delayed queue.
- Run the same test once on the primary environment and once on a constrained or failure-prone segment.
- Keep start and end events unchanged when comparing releases.
Tradeoffs and failure modes
- Boundary mismatch: If the implementation violates the rule “Count missed presentation deadlines, not only renderer errors”, the observed behavior can vary by environment without a trustworthy baseline.
- Ownership conflict: If it violates “Correlate drops with main-thread tasks, GPU time, and asset uploads”, two components may act on different assumptions or leave stale work active.
- Invisible regression: If it violates “Prefer skipping stale frames over displaying an ever-growing delayed queue”, a release can change dropped frame without leaving enough evidence to isolate the cause.
Common misconception
A single average hides the shape of realtime performance; always define event boundaries and inspect distributions by device and network. For dropped frame, the reliable claim is the definition and test boundary documented on this page—not a broader promise about every stage of the avatar pipeline.
Frequently asked questions
Is Dropped Frame the same as Avatar Frame Rate?
No. The concepts interact, but they describe different boundaries. For dropped frame, the relevant definition is: A dropped frame is a scheduled visual frame that is not presented because it arrived too late or could not be rendered. For avatar frame rate, it is: Avatar frame rate is the number of visual frames actually presented per second. Instrumenting them separately makes the root cause of a failure easier to isolate.
What should a team define first for Dropped Frame?
Start with the event or data boundary: count missed presentation deadlines, not only renderer errors. Then name the component that owns the rule and the observable result that proves it worked. This prevents two implementations from using the same term for different behavior.
How does Dropped Frame connect to Frame Pacing and WebGL Context Loss?
Frame Pacing covers a neighboring concern: Frame pacing describes how evenly rendered frames are presented over time. WebGL Context Loss covers another: WebGL context loss occurs when the browser invalidates a page’s GPU rendering state and resources. Read the three definitions together, but keep their events and ownership separate in telemetry so one metric does not mask another.
Related glossary terms
- Avatar Frame Rate — Avatar frame rate is the number of visual frames actually presented per second.
- Frame Pacing — Frame pacing describes how evenly rendered frames are presented over time.
- WebGL Context Loss — WebGL context loss occurs when the browser invalidates a page’s GPU rendering state and resources.
Continue to implementation and evaluation
- Implementation path: PostHog observability integration
- Evaluation path: Best low-bandwidth AI avatar platforms
- Browse the complete real-time AI avatar glossary
References
Last reviewed: 2026-08-19. Review the linked specifications and current Spatius documentation before using this article as an implementation contract.