Support in current browsers

Checked against the current browser versions recorded in MDN browser data 8.1.5.

BrowserMinimumOutcomeReason
Chrome155WorksEvery required mapped BCD feature is available without a recorded qualification.
Edge154WorksEvery required mapped BCD feature is available without a recorded qualification.
Firefox157WorksEvery required mapped BCD feature is available without a recorded qualification.
Safari27Not supportedAt least one required mapped feature is not available at this browser baseline.
Chrome for Android155WorksEvery required mapped BCD feature is available without a recorded qualification.
Firefox for Android157WorksEvery required mapped BCD feature is available without a recorded qualification.
Safari on iOS27Not supportedAt least one required mapped feature is not available at this browser baseline.
Android WebView155WorksEvery required mapped BCD feature is available without a recorded qualification.
Samsung Internet30.0WorksEvery required mapped BCD feature is available without a recorded qualification.
The release trace

How support changed

Each segment groups recorded releases with the same result. Gaps between recorded versions are not filled in. This is support at each release, rather than the planner’s check of every release above a minimum.

Chrome

http.headers.Sec-Fetch-Dest
  1. 1 – 7979 recorded releases
    Not supported
  2. 80 – 15575 recorded releases
    Works
http.headers.Sec-Fetch-Mode
  1. 1 – 7575 recorded releases
    Not supported
  2. 76 – 15579 recorded releases
    Works
http.headers.Sec-Fetch-Site
  1. 1 – 7575 recorded releases
    Not supported
  2. 76 – 15579 recorded releases
    Works
http.headers.Sec-Fetch-User
  1. 1 – 7575 recorded releases
    Not supported
  2. 76 – 15579 recorded releases
    Works

Edge

http.headers.Sec-Fetch-Dest
  1. 12 – 798 recorded releases
    Not supported
  2. 80 – 15474 recorded releases
    Works
http.headers.Sec-Fetch-Mode
  1. 12 – 187 recorded releases
    Not supported
  2. 79 – 15475 recorded releases
    Works
http.headers.Sec-Fetch-Site
  1. 12 – 187 recorded releases
    Not supported
  2. 79 – 15475 recorded releases
    Works
http.headers.Sec-Fetch-User
  1. 12 – 187 recorded releases
    Not supported
  2. 79 – 15475 recorded releases
    Works

Firefox

http.headers.Sec-Fetch-Dest
  1. 1 – 8992 recorded releases
    Not supported
  2. 90 – 15768 recorded releases
    Works
http.headers.Sec-Fetch-Mode
  1. 1 – 8992 recorded releases
    Not supported
  2. 90 – 15768 recorded releases
    Works
http.headers.Sec-Fetch-Site
  1. 1 – 8992 recorded releases
    Not supported
  2. 90 – 15768 recorded releases
    Works
http.headers.Sec-Fetch-User
  1. 1 – 8992 recorded releases
    Not supported
  2. 90 – 15768 recorded releases
    Works

Safari

http.headers.Sec-Fetch-Dest
  1. 1 – 16.336 recorded releases
    Not supported
  2. 16.4 – 2725 recorded releases
    Works
http.headers.Sec-Fetch-Mode
  1. 1 – 16.336 recorded releases
    Not supported
  2. 16.4 – 2725 recorded releases
    Works
http.headers.Sec-Fetch-Site
  1. 1 – 16.336 recorded releases
    Not supported
  2. 16.4 – 2725 recorded releases
    Works
http.headers.Sec-Fetch-User
  1. 1 – 2761 recorded releases
    Not supported

Chrome for Android

http.headers.Sec-Fetch-Dest
  1. 18 – 7956 recorded releases
    Not supported
  2. 80 – 15575 recorded releases
    Works
http.headers.Sec-Fetch-Mode
  1. 18 – 7552 recorded releases
    Not supported
  2. 76 – 15579 recorded releases
    Works
http.headers.Sec-Fetch-Site
  1. 18 – 7552 recorded releases
    Not supported
  2. 76 – 15579 recorded releases
    Works
http.headers.Sec-Fetch-User
  1. 18 – 7552 recorded releases
    Not supported
  2. 76 – 15579 recorded releases
    Works

Firefox for Android

http.headers.Sec-Fetch-Dest
  1. 4 – 8973 recorded releases
    Not supported
  2. 90 – 15768 recorded releases
    Works
http.headers.Sec-Fetch-Mode
  1. 4 – 8973 recorded releases
    Not supported
  2. 90 – 15768 recorded releases
    Works
http.headers.Sec-Fetch-Site
  1. 4 – 8973 recorded releases
    Not supported
  2. 90 – 15768 recorded releases
    Works
http.headers.Sec-Fetch-User
  1. 4 – 8973 recorded releases
    Not supported
  2. 90 – 15768 recorded releases
    Works

Safari on iOS

http.headers.Sec-Fetch-Dest
  1. 1 – 16.333 recorded releases
    Not supported
  2. 16.4 – 2725 recorded releases
    Works
http.headers.Sec-Fetch-Mode
  1. 1 – 16.333 recorded releases
    Not supported
  2. 16.4 – 2725 recorded releases
    Works
http.headers.Sec-Fetch-Site
  1. 1 – 16.333 recorded releases
    Not supported
  2. 16.4 – 2725 recorded releases
    Works
http.headers.Sec-Fetch-User
  1. 1 – 2758 recorded releases
    Not supported

Android WebView

http.headers.Sec-Fetch-Dest
  1. 1 – 7951 recorded releases
    Not supported
  2. 80 – 15575 recorded releases
    Works
http.headers.Sec-Fetch-Mode
  1. 1 – 7547 recorded releases
    Not supported
  2. 76 – 15579 recorded releases
    Works
http.headers.Sec-Fetch-Site
  1. 1 – 7547 recorded releases
    Not supported
  2. 76 – 15579 recorded releases
    Works
http.headers.Sec-Fetch-User
  1. 1 – 7547 recorded releases
    Not supported
  2. 76 – 15579 recorded releases
    Works

Samsung Internet

http.headers.Sec-Fetch-Dest
  1. 1.0 – 12.129 recorded releases
    Not supported
  2. 13.0 – 30.023 recorded releases
    Works
http.headers.Sec-Fetch-Mode
  1. 1.0 – 11.227 recorded releases
    Not supported
  2. 12.0 – 30.025 recorded releases
    Works
http.headers.Sec-Fetch-Site
  1. 1.0 – 11.227 recorded releases
    Not supported
  2. 12.0 – 30.025 recorded releases
    Works
http.headers.Sec-Fetch-User
  1. 1.0 – 11.227 recorded releases
    Not supported
  2. 12.0 – 30.025 recorded releases
    Works

BCD 8.1.5 · catalogue 2.3.0. Source corrections can change this trace without a new browser release.

What this feature can and cannot do

Helps protect against

  • Cross-site request forgery
  • Cross-site resource abuse

Does not guarantee

  • Requests from clients that do not send the headers
  • Authorisation flaws
  • Incorrect server-side policy decisions

What you need before using it

  • A server-side policy with explicit fallback behaviour

Fallback to keep in place

Retain CSRF tokens, SameSite cookies, origin checks, and ordinary authorisation controls.