| CDN | Speed1 | Updated | Quantity | Submit | CSS too | Combiner | ES Modules | SRI Hashes | Multi-CDN |
|---|---|---|---|---|---|---|---|---|---|
| jsDelivr | Fast | Automated2 | Yes | Yes | Yes | Yes3 | Yes | Yes | Yes4 |
| CDNJS5 | Fast | Yes | Yes | Yes | Yes | No | Yes | Yes | No |
| unpkg | Okay | Automated6 | Yes | No | Yes | No | Yes | No | No |
| esm.sh | Okay | Automated6 | Yes | No | Yes | No | Yes7 | No | No |
| Okay | Yes | No | No | No | No | No | No | No |
1. Speed statistics from CDNperf.
2. jsDelivr allows the addition of auto-update configuration for libraries they host.
3. jsDelivr can combine multiple files of either JavaScript or CSS into a single request simply by loading a specially formatted URL.
4. jsDelivr is not actually a CDN itself, instead it relies on multiple CDNs to guarantee performance and availability.
5. CDNJS is backed by Cloudflare, giving it enterprise-grade infrastructure and global availability.
6. unpkg and esm.sh serve any package published to npm automatically, with no submission process required.
7. esm.sh is purpose-built for ES modules, automatically converting CommonJS packages to ESM format for use with import statements and import maps.