Skip to main content

Why is UDP Used for Video Calls Instead of TCP?

🎯 The Question​

"If TCP guarantees 100% packet delivery without data loss, why do real-time apps like Zoom, Google Meet, and Discord use UDP for voice and video streaming?"


⚑ 30-Second Elevator Pitch​

In real-time audio and video calls, latency is far more critical than 100% lossless delivery.

When a packet is lost in TCP:

  1. TCP stops transmitting new frames until the missing packet is retransmitted and acknowledged (Head-of-Line Blocking).
  2. This creates stutter, freezes the video, and increases latency by hundreds of milliseconds.

With UDP:

  1. Packets are streamed continuously without waiting for ACKs.
  2. If a video frame packet is lost, the video codec simply drops that tiny artifact or interpolates the pixel data.
  3. The conversation continues in real-time (<150Β ms<150\text{ ms} delay) with zero lag.

🧠 Under-the-Hood: Head-of-Line Blocking vs. Real-Time Stream​


πŸ”¬ Timeliness vs. Completeness​

In live communication, late data is completely useless data:

  • If frame #11 arrives 400 ms late (after frame #14 is already rendered on screen), discarding it is better than pausing the entire live video stream to wait for it.
  • WebRTC and RTP protocols layer minimal jitter buffers, forward error correction (FEC), and packet concealment on top of UDP to smooth out minor packet losses.

πŸ“Œ Comparison Matrix: TCP vs. UDP for Media Streaming​

Streaming PropertyTCP (e.g. Netflix, YouTube VOD)UDP (e.g. Zoom, Discord, WebRTC)
Delivery Model100% Lossless, in-order byte streamLow-latency datagrams, loss-tolerant
Packet Loss BehaviorPauses playback for retransmission (Buffering)Skips lost frame, maintains real-time sync
Head-of-Line Blocking❌ Yes (Transport layer stall)βœ… None (Independent packets)
Target LatencySeconds (Prefetched buffer allows delay)Sub-150 milliseconds (Interactive live voice)
Ideal ForPrerecorded movies & file downloadsLive video conferencing, online multiplayer games

πŸ’‘ What Interviewers Ask Next (Follow-Up Traps)​

  1. "Why does YouTube / Netflix use TCP (HTTPS) instead of UDP for video streaming?"

    • Answer: YouTube and Netflix are Video-on-Demand (VOD), not real-time 2-way calls. The video player prefetches 30–60 seconds of video into a buffer ahead of playback. A 500ms TCP retransmission is completely unnoticeable to the viewer, and users prefer high quality without missing frames.
  2. "What is Forward Error Correction (FEC) in UDP video streaming?"

    • Answer: FEC is a technique where the sender transmits redundant parity packets alongside video datagrams. If 1 out of 5 packets is lost, the receiver mathematically reconstructs the lost frame instantly using the parity data without requesting a network retransmission.

Placement & Interview Takeaway

Interview Answer: Live video conferencing uses UDP because real-time interactivity requires low latency (<150ms<150\text{ms}). TCP retransmissions cause Head-of-Line blocking and audio/video freezing. Human perception easily ignores an occasional dropped video pixel, but cannot tolerate conversation-stopping lag.


πŸ“Ί Video Explanation​

πŸš€ Level Up Your Engineering Mindset

Never Study in Isolation. Join Binary Dose.

Connect with fellow engineers, clear conceptual doubts, and get 2 visual breakdowns & engineering mental models daily across our community channels.

Discord
Official Hub

Discord Community

Start at #welcome-and-rules, say hello in #general-chat, clear doubts, and collaborate with engineers worldwide.

Join Discord Server→
⚑
Daily Knowledge Drops

Daily Visual Deep-Dives

Bite-sized system design schematics, core OS internals, and DSA intuition served right into your feeds every single day.

πŸ’‘Have handwritten notes, cheat-sheets, or want to publish a technical article?
Learn How to Contribute→