Experimental

For a given set of browsers what APIs are still considred experimental, and how long have they been experimental?

Example Comparisons
Browsers
Features

Summary

Experimental APIs

Below is a list of features that are marked as "Experimental" in Firefox and Safari

Raw Data

Quick Links:

DOM API Data

API First Browser Date Last Browser Date Days in experimentation Notes
api.Animation.commitStyles.endpoint_inclusive_commitStyles 📋Firefox8/19/2025 212
api.AudioSession 📋Safari3/27/2023 1088
api.AudioSession.type 📋Safari3/27/2023 1088
api.AudioWorklet.port 📋Firefox4/29/2025 324
api.AudioWorkletGlobalScope.port 📋Firefox4/29/2025 324
api.BarcodeDetector 📋Safari9/18/2023 913
Chrome: Supported on ChromeOS and macOS only.Chrome: Before Chrome 113, on macOS Ventura (13) and above, this interface silently failed. See bug 40245611.Chrome: Supported on macOS only.Edge: Supported on macOS only.Edge: Before Chrome 113, on macOS Ventura (13) and above, this interface silently failed. See bug 40245611.Opera: Supported on macOS only.Opera: Before Chrome 113, on macOS Ventura (13) and above, this interface silently failed. See bug 40245611.
api.BarcodeDetector.BarcodeDetector 📋Safari9/18/2023 913
Chrome: Supported on ChromeOS and macOS only.Chrome: Supported on macOS only.Edge: Supported on macOS only.Opera: Supported on macOS only.
api.BarcodeDetector.detect 📋Safari9/18/2023 913
Chrome: Supported on ChromeOS and macOS only.Chrome: Supported on macOS only.Edge: Supported on macOS only.Opera: Supported on macOS only.
api.BarcodeDetector.getSupportedFormats_static 📋Safari9/18/2023 913
Chrome: Supported on ChromeOS and macOS only.Chrome: Supported on macOS only.Edge: Supported on macOS only.Opera: Supported on macOS only.
api.BufferedChangeEvent 📋Safari9/18/2023 913
api.BufferedChangeEvent.BufferedChangeEvent 📋Safari9/18/2023 913
api.BufferedChangeEvent.addedRanges 📋Safari9/18/2023 913
api.BufferedChangeEvent.removedRanges 📋Safari9/18/2023 913
api.CSSCustomMediaRule 📋Firefox12/9/2025 100
api.CSSFontFaceDescriptors 📋Safari9/15/2025 185
api.CSSFontFaceDescriptors.font-display 📋Safari9/15/2025 185
api.CSSFontFaceDescriptors.font-family 📋Safari9/15/2025 185
api.CSSFontFaceDescriptors.font-feature-settings 📋Safari9/15/2025 185
api.CSSFontFaceDescriptors.font-stretch 📋Safari9/15/2025 185
api.CSSFontFaceDescriptors.font-style 📋Safari9/15/2025 185
api.CSSFontFaceDescriptors.font-weight 📋Safari9/15/2025 185
api.CSSFontFaceDescriptors.font-width 📋Safari9/15/2025 185
api.CSSFontFaceDescriptors.fontDisplay 📋Safari9/15/2025 185
api.CSSFontFaceDescriptors.fontFamily 📋Safari9/15/2025 185
api.CSSFontFaceDescriptors.fontFeatureSettings 📋Safari9/15/2025 185
api.CSSFontFaceDescriptors.fontStretch 📋Safari9/15/2025 185
api.CSSFontFaceDescriptors.fontStyle 📋Safari9/15/2025 185
api.CSSFontFaceDescriptors.fontWeight 📋Safari9/15/2025 185
api.CSSFontFaceDescriptors.fontWidth 📋Safari9/15/2025 185
api.CSSFontFaceDescriptors.size-adjust 📋Safari9/15/2025 185
api.CSSFontFaceDescriptors.sizeAdjust 📋Safari9/15/2025 185
api.CSSFontFaceDescriptors.src 📋Safari9/15/2025 185
api.CSSFontFaceDescriptors.unicode-range 📋Safari9/15/2025 185
api.CSSFontFaceDescriptors.unicodeRange 📋Safari9/15/2025 185
api.CSSPageDescriptors.page-orientation 📋Firefox8/6/2024 590
api.CSSPageDescriptors.pageOrientation 📋Firefox8/6/2024 590
api.CSSPseudoElement 📋Firefox4/7/2020 2172
api.CSSPseudoElement.element 📋Firefox4/7/2020 2172
api.CSSPseudoElement.type 📋Firefox4/7/2020 2172
api.CompressionStream.CompressionStream.zstd Firefox4/29/2025 324
api.Credential.isConditionalMediationAvailable_static 📋Safari9/12/2022 1284
api.DataCue 📋Safari9/19/2017 3103
api.DataCue.DataCue 📋Safari9/19/2017 3103
api.DataCue.type 📋Safari9/19/2017 3103
api.DataCue.value 📋Safari9/19/2017 3103
api.DataTransfer.addElement Firefox6/30/2009 6106
api.DataTransfer.mozCursor Firefox6/30/2009 6106
api.DataTransfer.mozSourceNode Firefox3/22/2011 5476
api.DataTransfer.mozUserCancelled Firefox6/30/2009 6106
api.DecompressionStream.DecompressionStream.zstd Firefox4/29/2025 324
api.DeprecationReportBody 📋Firefox1/29/2019 2606
Firefox: Not supported in workers
api.DeprecationReportBody.anticipatedRemoval 📋Firefox1/29/2019 2606
api.DeprecationReportBody.columnNumber 📋Firefox1/29/2019 2606
api.DeprecationReportBody.id 📋Firefox1/29/2019 2606
api.DeprecationReportBody.lineNumber 📋Firefox1/29/2019 2606
api.DeprecationReportBody.message 📋Firefox1/29/2019 2606
api.DeprecationReportBody.sourceFile 📋Firefox1/29/2019 2606
api.Directory Firefox6/10/2014 4300
api.Directory.getFiles Firefox8/2/2016 3516
api.Directory.getFilesAndDirectories Firefox11/3/2015 3789
api.Directory.name Firefox6/10/2014 4300
api.Directory.path Firefox11/3/2015 3789
api.Document.featurePolicy Firefox9/3/2019 2389
api.Document.getBoxQuads 📋Firefox7/22/2014 4258
api.Document.parseHTML_static 📋Firefox2/24/2026 23
api.Element.animate.options_iterationComposite_parameter 📋Firefox8/25/2020 2032
api.Element.getBoxQuads 📋Firefox7/22/2014 4258
api.FeaturePolicy Firefox1/29/2019 2606
api.FeaturePolicy.allowedFeatures Firefox1/29/2019 2606
api.FeaturePolicy.allowsFeature Firefox1/29/2019 2606
api.FeaturePolicy.features Firefox10/22/2019 2340
api.FeaturePolicy.getAllowlistForFeature Firefox1/29/2019 2606
api.FetchEvent.respondWith.resource_url Firefox3/13/2018 2928
api.Gamepad.hand 📋Firefox8/8/2017 3145
api.Gamepad.hapticActuators 📋Firefox8/8/2017 3145
api.Gamepad.pose 📋Firefox8/8/2017 3145
api.Gamepad.secure_context_required Firefox8/10/2021 1682
api.GamepadButton.secure_context_required Firefox8/10/2021 1682
api.GamepadEvent.secure_context_required Firefox8/10/2021 1682
api.GamepadPose 📋Firefox8/8/2017 3145
api.GamepadPose.angularAcceleration 📋Firefox8/8/2017 3145
api.GamepadPose.angularVelocity 📋Firefox8/8/2017 3145
api.GamepadPose.hasOrientation 📋Firefox8/8/2017 3145
api.GamepadPose.hasPosition 📋Firefox8/8/2017 3145
api.GamepadPose.linearAcceleration 📋Firefox8/8/2017 3145
api.GamepadPose.linearVelocity 📋Firefox8/8/2017 3145
api.GamepadPose.orientation 📋Firefox8/8/2017 3145
api.GamepadPose.position 📋Firefox8/8/2017 3145
api.GamepadPose.secure_context_required Firefox8/10/2021 1682
api.HTMLAnchorElement.attributionSourceId 📋Safari3/14/2022 1466
api.HTMLIFrameElement.featurePolicy Firefox9/3/2019 2389
api.HTMLInputElement.alpha 📋Safari3/31/2025 353
api.HTMLInputElement.colorSpace 📋Safari3/31/2025 353
api.HTMLOutputElement.HTMLOutputElement 📋Safari9/20/2021 1641
api.IDBDatabase.transaction.mode_parameter_readwriteflush Firefox8/11/2015 3873
api.InputEvent.inputType.insertFromPasteAsQuotation Firefox5/21/2019 2494
api.IntersectionObserverEntry.IntersectionObserverEntry 📋Safari3/25/2019 2551
api.ManagedMediaSource 📋Safari9/18/2023 913
api.ManagedMediaSource.ManagedMediaSource 📋Safari9/18/2023 913
api.ManagedMediaSource.endstreaming_event 📋Safari9/18/2023 913
api.ManagedMediaSource.startstreaming_event 📋Safari9/18/2023 913
api.ManagedMediaSource.streaming 📋Safari9/18/2023 913
api.ManagedSourceBuffer 📋Safari9/18/2023 913
api.ManagedSourceBuffer.bufferedchange_event 📋Safari9/18/2023 913
api.MediaDevices.selectAudioOutput 📋Firefox8/1/2023 961
api.MediaSession.setScreenshareActive 📋Safari3/31/2025 353
api.Navigator.audioSession 📋Safari3/27/2023 1088
api.Navigator.getAutoplayPolicy 📋Firefox4/11/2023 1073
api.Navigator.getGamepads.secure_context_required Firefox8/10/2021 1682
api.Navigator.globalPrivacyControl 📋Firefox11/21/2023 849
Firefox: Opt-in to GPC using the Website Privacy Preference setting (about:preferences#privacy) checkbox 'Tell websites not to sell or share my data', or by setting the preference privacy.globalprivacycontrol.enabled to true.Firefox for Android: Opt-in to GPC using the Enhanced Tracking Protection toggle 'Tell web sites not to share & sell data', or by setting the preference privacy.globalprivacycontrol.enabled to true.
api.Navigator.registerProtocolHandler.scheme_parameter_ftp Firefox3/8/2022 1472
api.Navigator.registerProtocolHandler.scheme_parameter_ftps Firefox3/8/2022 1472
api.Navigator.registerProtocolHandler.scheme_parameter_sftp Firefox3/8/2022 1472
api.Notification.navigate 📋Safari3/31/2025 353
api.PerformanceResourceTiming.contentType 📋Firefox8/6/2024 590
api.PushEvent.notification 📋Safari3/31/2025 353
Safari on iOS: Notifications are supported in web apps saved to the home screen.
api.RTCDataChannel.priority 📋Safari9/20/2021 1641
api.RTCIdentityAssertion 📋Firefox8/11/2015 3873
Firefox: The RTCIdentityAssertion interface itself is not present, but an object with the same properties is usedFirefox for Android: The RTCIdentityAssertion interface itself is not present, but an object with the same properties is used
api.RTCIdentityAssertion.idp 📋Firefox8/11/2015 3873
api.RTCIdentityAssertion.name 📋Firefox8/11/2015 3873
api.RTCStatsReport.type_inbound-rtp.estimatedPlayoutTimestamp 📋Firefox8/19/2025 212
api.RTCStatsReport.type_inbound-rtp.framesAssembledFromMultiplePackets 📋Firefox8/19/2025 212
api.RTCStatsReport.type_inbound-rtp.freezeCount 📋Firefox8/19/2025 212
api.RTCStatsReport.type_inbound-rtp.pauseCount 📋Firefox8/19/2025 212
api.RTCStatsReport.type_inbound-rtp.totalAssemblyTime 📋Firefox8/19/2025 212
api.RTCStatsReport.type_inbound-rtp.totalFreezesDuration 📋Firefox8/19/2025 212
api.RTCStatsReport.type_inbound-rtp.totalPausesDuration 📋Firefox8/19/2025 212
api.RTCStatsReport.type_outbound-rtp.totalEncodedBytesTarget 📋Firefox6/28/2022 1360
api.RTCStatsReport.type_remote-inbound-rtp.packetsReceived 📋Firefox1/7/2020 2263
api.ReadableStream.from_static 📋Firefox8/29/2023 933
api.ReportingObserver.worker_support Firefox6/2/2020 2116
api.Request.destination.speculationrules Safari12/12/2025 97
api.SVGPathElement.getPathData 📋Firefox4/1/2025 352
api.SVGPathElement.getPathSegmentAtLength 📋Firefox4/1/2025 352
api.SVGPathElement.setPathData 📋Firefox4/1/2025 352
api.SVGScriptElement.defer Firefox8/29/2023 933
api.ShadowRoot.referenceTarget Safari9/15/2025 Firefox3/24/2026190
api.ShadowRoot.setHTML 📋Firefox2/24/2026 23
api.SourceBuffer.appendBufferAsync Firefox9/5/2018 2752
api.SourceBuffer.removeAsync Firefox9/5/2018 2752
api.SourceBuffer.textTracks 📋Safari10/16/2014 4172
Safari on iOS: Exposed in Mobile Safari on iPad but not on iPhone.
api.Text.getBoxQuads 📋Firefox7/22/2014 4258
api.VideoTrackGenerator 📋Safari9/16/2024 549
api.VideoTrackGenerator.VideoTrackGenerator 📋Safari9/16/2024 549
api.VideoTrackGenerator.muted 📋Safari9/16/2024 549
api.VideoTrackGenerator.track 📋Safari9/16/2024 549
api.VideoTrackGenerator.writable 📋Safari9/16/2024 549
api.WebGLActiveInfo.worker_support Firefox9/20/2022 1276
api.WebGLBuffer.worker_support Firefox9/20/2022 1276
api.WebGLContextEvent.worker_support Firefox9/20/2022 1276
api.WebGLFramebuffer.worker_support Firefox9/20/2022 1276
api.WebGLProgram.worker_support Firefox9/20/2022 1276
api.WebGLRenderbuffer.worker_support Firefox9/20/2022 1276
api.WebGLRenderingContext.worker_support Firefox9/20/2022 1276
api.WebGLShader.worker_support Firefox9/20/2022 1276
api.WebGLShaderPrecisionFormat.worker_support Firefox9/20/2022 1276
api.WebGLTexture.worker_support Firefox9/20/2022 1276
api.WebGLUniformLocation.worker_support Firefox9/20/2022 1276
api.Window.pushManager 📋Safari3/31/2025 353
Safari on iOS: Notifications are supported in web apps saved to the home screen.
api.WindowClient.ancestorOrigins 📋Safari9/12/2022 1284
api.WorkerNavigator.globalPrivacyControl 📋Firefox11/21/2023 849
Firefox: Opt-in to GPC by setting the preference privacy.globalprivacycontrol.enabled to true.Firefox for Android: Opt-in to GPC using the Enhanced Tracking Protection toggle 'Tell web sites not to share & sell data', or by setting the preference privacy.globalprivacycontrol.enabled to true.