You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Safari 14 misses some core APIs we rely on in our web vitals instrumentation, requiring us to ship outdated code or apply some annoying workarounds:
performance.timeOrigin - this was introduced in Safari 15. Right now, we fall back to performance.timing?.navigationStart, which a) is deprecated and b) adds ~100bytes of otherwise unnecessary code
visibilitychange event - this event is used by web-vitals in all code paths after they dropped Safari 14 support. We have to patch our vendored version of the lib to also listen to pagehide events for Safari 14, since visibilitychangeisn't fully supported by 14.0. Removing pagehide allows us to save some bytes and also streamline our own pagehide listening logic in the SDK in other places.
I therefore propose we drop support for Safari 14.x and Safari iOS 14.x. Global usage for these versions is around 0.45% at the time of writing.
Activity
linear commentedon Jan 7, 2026
JS-1412
ref(core): Streamline and test `browserPerformanceTimeOrigin` (#18708)
ref: Drop Safari 14 support - remove performance.timing.navigationSta…
ref: Drop Safari 14 support - remove performance.timing.navigationSta…
ref: Drop Safari 14 support - remove performance.timing.navigationSta…
ref: Drop Safari 14 support - remove performance.timing.navigationSta…
ref(browser)!: Drop Safari 14 support - remove `navigationStart` fall…
github-actions commentedon Sep 23, 2026
A PR closing this issue has just been released 🚀
This issue was referenced by PR #21293, which was included in the 11.0.0 release.