Browser Feature Detector
Instantly test your browser's support for 40+ Web APIs and get a compatibility score.
What Is Browser Feature Detection?
Browser feature detection is the practice of testing whether a particular Web API or capability exists in the current browser at runtime, rather than assuming support based on the browser name. This is the recommended approach for progressive enhancement and graceful degradation in modern web development.
Why Feature Detection Matters
The web platform evolves rapidly. New APIs ship in one browser months or years before others. Your users may be on Chrome, Firefox, Safari, Edge, or a mobile browser — and each has different levels of support. By detecting features at runtime, you can provide fallbacks for missing capabilities, add polyfills only when needed, and use modern APIs where available without breaking older browsers. Frameworks like Modernizr popularized this approach; this tool applies the same principle with no dependencies.
API Categories Tested
- Security APIs — Web Crypto API, SharedArrayBuffer, HTTPS detection, Cross-Origin Isolation, Trusted Types
- Workers & Threading — Service Workers, Web Workers, Worklets, SharedArrayBuffer
- Media & Graphics — WebGL, WebGL2, WebGPU, Canvas 2D, OffscreenCanvas, WebRTC, MediaDevices, Picture-in-Picture, Screen Capture
- Storage — IndexedDB, localStorage, sessionStorage, Cache API, File System Access API, Storage Manager
- Communication — WebSocket, WebRTC, Fetch API, BroadcastChannel, MessageChannel
- Device & Hardware — Geolocation, Battery API, Bluetooth, USB, Serial, NFC, Gamepad, Accelerometer/Gyroscope
- Observers — IntersectionObserver, MutationObserver, ResizeObserver, PerformanceObserver
- Permissions & Notifications — Notifications API, Push API, Permissions API
- Speech & AI — SpeechRecognition, SpeechSynthesis, AI/LLM browser APIs
Understanding the Score
The compatibility score is the number of detected APIs divided by the total APIs tested. A score of 100% is not expected or necessary — some APIs require specific hardware (WebGPU, Bluetooth), others require explicit permission (Notifications, Geolocation), and some are security-gated (SharedArrayBuffer requires cross-origin isolation headers). The score is most useful for comparing browsers side-by-side or tracking how a browser's support improves across versions.
Exporting for Bug Reports
The Export Report button generates a plain-text document listing every tested API, its support status, your user agent string, and your final score. This is useful when filing browser compatibility bug reports with development teams, comparing environments during QA testing, or documenting minimum browser requirements for a project's README.