CSP Browser Support 2026 โ Directive Compatibility Table
CSP Level 3 is now well-supported across all major browsers. A handful of newer directives โ Trusted Types, script-src-attr, navigate-to โ have partial support. Here is the full compatibility picture as of early 2026.
Last updated: 2026-04-03. Browser versions: Chrome 131+, Firefox 133+, Safari 18+, Edge 131+.
Core directives โ full support everywhere
| Directive | Chrome | Firefox | Safari | Edge |
|---|---|---|---|---|
| default-src | โ | โ | โ | โ |
| script-src | โ | โ | โ | โ |
| style-src | โ | โ | โ | โ |
| img-src | โ | โ | โ | โ |
| connect-src | โ | โ | โ | โ |
| font-src | โ | โ | โ | โ |
| frame-src | โ | โ | โ | โ |
| frame-ancestors | โ | โ | โ | โ |
| object-src | โ | โ | โ | โ |
| base-uri | โ | โ | โ | โ |
| form-action | โ | โ | โ | โ |
| worker-src | โ | โ | โ | โ |
| manifest-src | โ | โ | โ | โ |
| media-src | โ | โ | โ | โ |
| upgrade-insecure-requests | โ | โ | โ | โ |
| block-all-mixed-content | โ | โ | โ | โ |
Nonces, hashes, strict-dynamic
| Feature | Chrome | Firefox | Safari | Edge |
|---|---|---|---|---|
| 'nonce-value' | โ | โ | โ | โ |
| 'sha256-hash' | โ | โ | โ | โ |
| 'strict-dynamic' | โ | โ | โ 15.4+ | โ |
| 'unsafe-hashes' | โ | โ | โ 15.4+ | โ |
| 'wasm-unsafe-eval' | โ | โ | โ 16+ | โ |
Newer / partial support directives
| Directive | Chrome | Firefox | Safari | Edge | Notes |
|---|---|---|---|---|---|
| script-src-elem | โ 90+ | โ 105+ | โ 16+ | โ 90+ | Granular control over script elements vs inline handlers |
| script-src-attr | โ 90+ | โ 105+ | โ 16+ | โ 90+ | Controls inline event handlers separately from scripts |
| style-src-elem | โ 90+ | โ 105+ | โ 16+ | โ 90+ | |
| require-trusted-types-for 'script' | โ 83+ | โ ๏ธ Partial | โ | โ 83+ | Trusted Types โ Safari no support |
| trusted-types | โ 83+ | โ ๏ธ Partial | โ | โ 83+ | Define Trusted Type policies |
| navigate-to | โ | โ | โ | โ | Spec'd but no browser has shipped it |
| report-to | โ 70+ | โ ๏ธ Partial | โ ๏ธ Partial | โ 70+ | Use report-uri as fallback |
What changed in 2025โ2026
- Safari 18 โ Added full support for strict-dynamic and unsafe-hashes, closing the main Safari CSP gap
- Firefox 105+ โ script-src-elem and script-src-attr now fully supported
- Chrome 131+ โ Improved Trusted Types enforcement, better DevTools violation reporting
- SharePoint Online โ Began enforcing CSP for all tenant pages March 2026
- navigate-to โ Still unshipped in all browsers despite being in the spec since CSP3
Practical recommendation
For maximum browser compatibility in 2026, a nonce-based policy with strict-dynamic works across all major browsers including Safari 15.4+. Trusted Types remains Chrome/Edge only โ use it for those environments only and do not rely on it for Safari users.
Verify your config โ HttpFixer Tools