Last updated: April 7, 2026

ICE-TCP is an extension to the ICE protocol that allows WebRTC connectivity checks to be performed over TCP instead of only UDP.

Why ICE-TCP exists

Some restrictive corporate firewalls and networks block all UDP traffic, which would completely prevent standard WebRTC connections. ICE-TCP provides a fallback path by attempting to establish connectivity over TCP, which is more commonly allowed through firewalls.

ICE-TCP vs TURN/TCP

ICE-TCP attempts a direct TCP connection between peers, while TURN/TCP relays media through a TURN server over TCP. ICE-TCP is preferred when direct connectivity is possible because it avoids the cost and added latency of a relay server.

The browser implementation of WebRTC offers an ICE-TCP client only. ICE-TCP kicks in and is attempted to connect when the media server supports it and signals that support towards the client. In many cases, ICE-TCP is used as a replacement of TURN/TCP.

ICE-TCP doesn’t work between two browsers in peer-to-peer mode. It can be used in browser to media server deployments.

Looking to learn more about WebRTC? 

Check my WebRTC training courses

About WebRTC Glossary

The WebRTC Glossary is an ongoing project where users can learn more about WebRTC related terms. It is maintained by Tsahi Levent-Levi of BlogGeek.me.