This is an experimental technology
Check the Browser compatibility table carefully before using this in production.

The read-only property RTCPeerConnection.defaultIceServers returns an array of objects based on the RTCIceServer dictionary, which indicates what, if any, ICE servers the browser will use by default if none are provided to the RTCPeerConnection in its RTCConfiguration. However, browsers are not required to provide any default ICE servers at all.


 var defaultIceServers = RTCPeerConnection.defaultIceServers;


An array of ICE servers, specified as objects based on RTCIceServer,  which the browser will use if none are specified in the configuration of the RTCPeerConnection. If there are no defaults provided by the browser, the returned array is empty; this property's value is never null.


var pc = new RTCPeerConnection();
var iceServers = pc.defaultIceServers;

if (iceServers.length === 0) {
  // Deal with the lack of default ICE servers, possibly by using our own defaults


Specification Status Comment
WebRTC 1.0: Real-time Communication Between Browsers
The definition of 'RTCPeerConnection.defaultIceServers' in that specification.
Candidate Recommendation Initial specification.

Browser compatibility

FeatureChromeEdgeFirefoxInternet ExplorerOperaSafari
Basic support56 Yes22 ?


37 — 43

FeatureAndroid webviewChrome for AndroidEdge mobileFirefox for AndroidOpera AndroidiOS SafariSamsung Internet
Basic support5656 Yes44


37 — 43


1. Promise based version.

See also

Document Tags and Contributors

Contributors to this page: fscholz, jpmedley, Sheppy
Last updated by: fscholz,