alexi.sh
browser-privacy

The impact of iOS 16 Lockdown Mode in Safari (reviewed 2026)

PrivSec Lab··Updated on June 8, 2026·5 min read
Abstract cybersecurity padlock on dark digital background

iOS 16 Lockdown Mode disables JIT JavaScript compilation in Safari. Benchmarks on an iPhone 13 mini show a 95% Octane drop and 65% Speedometer hit — with 12 web APIs blocked.

Table of Contents

The iOS 16 beta 3 introduced a new privacy feature: Lockdown Mode. The idea is to disable some features in iOS to reduce the possibility of privacy-related attacks.

Apple provides a rough list of features disabled in Lockdown, including one that stands out immediately:

Web browsing: Certain complex web technologies, like just-in-time (JIT) JavaScript compilation, are disabled unless the user excludes a trusted site from Lockdown Mode.

Disabling JIT compilation in JavaScriptCore implies a significant performance drop given how JavaScript-heavy the modern web is. This article measures how large that impact really is, and catalogs what else gets disabled.

Disabled features

Through manual testing and Modernizr feature detection, the following features are disabled in Lockdown Mode:

Most of these are disabled to reduce passive user tracking vectors.

WebAssembly

WASM, while incredibly powerful, can be used to rapidly fingerprint clients through canvas rendering discrepancies or local port scanning, and makes it harder for ad blockers to detect trackers. This will break Blazor apps and other WASM-dependent frameworks that lack a JavaScript fallback.

MP3 Playback

MP3 support is an outlier here. Since most browsers support it, disabling it could identify the device as running in Lockdown Mode. One rationale: avoiding crafted MP3 decoding exploits. Sites relying on MP3 without AAC or OGG fallbacks will break.

MathML

MathML rendering varies slightly per device, which can enable tracking through the DOMRect object of a rendered MathML expression.

Gamepad API

Without fingerprinting mitigation, the Gamepad API can track users through the id and buttons properties after user interaction with the page. In-browser games and game streaming platforms relying on controller input will break.

Web Audio API

The Web Audio API enables fingerprinting of Safari users through the webkitOfflineAudioContext interface and signal variations between hardware implementations.

WebGL

WebGL fingerprinting is one of the oldest tracking techniques, exploiting rendering discrepancies between individual devices even running identical hardware. The WebGLRenderingContext also exposes hardware capabilities and supported WebGL versions.

JPEG 2000

JPEG 2000 support is today a reliable Safari identifier — it is the only mainstream browser that supports it.

Speech Recognition API

While the Web Speech API runs on-device on macOS and iOS, it can be accessed by a webpage to record users without obvious indication. This is separate from iOS dictation and Siri, which remain fully functional.

MediaDevices.getUserMedia()

The MediaDeviceInfo interface exposes a persistent deviceId property for cameras, microphones, and speakers, enabling cross-session tracking on a single origin. Sites requiring microphone or camera access will not function.

RTCDataChannel

The WebRTC API can leak both public and local IP addresses — even behind a VPN — when communicating with a STUN server.

PDF Viewer

The WebKit PDF viewer is disabled. Clicking a PDF link triggers a download instead. Documents can still be opened via the Files app after download.

SVG Fonts

SVG fonts are disabled, likely for the same reason as JPEG 2000: they are a Safari-only feature that can be used as a fingerprinting signal.

Note: These changes apply to all iOS and iPadOS browsers since they are all required to use WebKit. Chrome, Firefox, and Brave on iOS are equally affected.

Performance impact

Disabling JIT compilation in JavaScriptCore affects performance on virtually every website, with a likely secondary effect on battery life.

The benchmarks below are averages over 10 runs, recorded on an iPhone 13 mini running iOS 16 developer beta 3.

Octane

Octane is no longer maintained but remains a useful relative baseline for JavaScript performance within the same browser.

Result: ~95% drop in performance. This looks dramatic — and it is for pure JS workloads — but the overall browser is not 95% slower, since the rendering pipeline, layout, and networking are unaffected.

JetStream 2.0

JetStream could not be completed: its heavy focus on WebAssembly means it simply crashes in Lockdown Mode.

Speedometer 2.0

Speedometer benchmarks real-world JavaScript framework performance by simulating user interactions across multiple frameworks. This gives a more practical view of the impact.

Result: ~65% drop in performance. Significant, but not as extreme as the Octane result. For users who require the privacy trade-off, this shifts the decision from "completely impractical" to "a deliberate compromise."

MotionMark 1.2

Unlike most graphics benchmarks, MotionMark relies primarily on HTML and SVG rendering through CSS and canvas operations rather than WebGL.

Result: ~20% drop — largely imperceptible in everyday use.

Conclusion

For users at risk of targeted attacks, Lockdown Mode is a practical first line of defense. It is easy to enable and covers a meaningful set of browser-based tracking and exploitation vectors without requiring technical expertise.

It will not block all fingerprinting. Apple specifically targeted APIs that are difficult for non-technical users to control via conventional means. The 65% Speedometer penalty is the real cost — acceptable for a high-risk individual, prohibitive for general use.


Update 2026

Four years on, Lockdown Mode has been further hardened in iOS 17 and iOS 18. Apple has added protections outside the browser — restricting certain FaceTime features, USB accessories, and wireless connectivity options in extreme threat scenarios.

In Safari, the JIT trade-off is unchanged: JIT remains disabled in Lockdown Mode, and the performance gap is approximately the same on modern hardware. The list of blocked web APIs has grown slightly; WebGL2 and some advanced WebRTC features now join the blocklist.

The feature is no longer experimental. It is documented, supported, and used by journalists, activists, and security researchers worldwide. If you run iOS 18 and work in a sensitive context, the case for enabling Lockdown Mode — at least on a secondary device — is stronger than it was in 2022.

Photo: Towfiqu barbhuiya — Unsplash (source)

Also available in