This article compares browser engines.
Some of these engines have shared origins. For example, the WebKit engine was created by forking the KHTML engine in 2001. [1] Then, in 2013, a modified version of WebKit was officially forked as the Blink engine. [2]
Engine | Status | Creators | License | Used in |
---|---|---|---|---|
WebKit | Stable | Apple, initially forked from KHTML | GNU LGPL, BSD-style | Safari browser, GNOME Web, Konqueror, Orion and all browsers for iOS [3] |
Blink | Stable | Google, initially forked from WebKit | GNU LGPL, BSD-style | All Chromium-based browsers |
Gecko | Stable | Mozilla | Mozilla Public | Firefox browser and its forks; SeaMonkey browser, Thunderbird email client |
Goanna | Stable | M. C. Straver, [4] initially forked from Gecko | Mozilla Public | Pale Moon, Basilisk, K-Meleon browsers |
NetSurf | Stable | NetSurf developers [5] | GNU GPLv2 | NetSurf browser |
Servo | Experimental [6] [7] | Linux Foundation | Mozilla Public | Experimental browsers [8] [9] |
LibWeb | Experimental; in pre-alpha [10] | Ladybird Browser Initiative [11] | 2-clause BSD | Ladybird browser [12] |
KHTML [13] | Discontinued | KDE | GNU LGPL | Formerly in the Konqueror browser [14] |
Tkhtml | Discontinued | Liem Bahneman [15] | BSD | Formerly in Html Viewer 3 browser |
Trident | Stable | Microsoft | Proprietary | Internet Explorer browser; Microsoft Edge IE mode |
Flow [16] | Experimental; in beta [16] | Ekioh [17] | Proprietary | Flow browser [18] |
EdgeHTML | Discontinued | Microsoft | Proprietary | Some UWP apps; [19] formerly Microsoft Edge browser [20] |
Presto | Discontinued | Opera | Proprietary | Opera Mini browser in Extreme/Mini mode, where contents arrive pre-rendered using this engine server-side [21] |
NetFront | Discontinued | Access Co., Ltd. | Proprietary | Formerly in the NetFront browser, Palm Blazer 3 and up, the Dreamcast web browser, the PSP web browser, and PS3 web browser versions prior to system software 4.10. |
Tasman | Discontinued | Microsoft | Proprietary | Internet Explorer 5 Macintosh Edition |
Mariner | Discontinued | Netscape Communications | Proprietary | Netscape Communicator 5.0 |
These tables summarize what stable engines support.
The operating systems that engines can run on without emulation.
Engine | Windows | macOS | Linux | BSD | Haiku | Android | iOS [3] |
---|---|---|---|---|---|---|---|
WebKit | Yes [note 1] | Yes | Yes | Yes | Yes | Yes | Yes |
Blink | Yes | Yes | Yes | Yes | Yes [note 2] | Yes | No |
Gecko | Yes | Yes | Yes | Yes | Yes | Yes | No |
Goanna | Yes | Yes [22] | Yes | Yes | No | No [23] | No |
NetSurf [24] | Yes | No | Yes | Yes | Yes | No | No |
Trident | Yes | No | No | No | No | No | No |
Engine | JPEG | JPEG 2000 | JPEG XL | JPEG XL HDR | JPEG ISO HDR | JPEG Adobe HDR | GIF | BMP | PNG | APNG | SVG | WebP | AVIF | AVIF HDR | HEIC | HEIC HDR |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
WebKit | Yes | Yes | Yes | No [25] | No [25] | No [25] | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No [25] |
Blink | Yes | No | No [26] [27] | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No |
Gecko | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No |
Goanna | Yes | No | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No |
NetSurf [28] | Yes | No | Yes | No | No | No | Yes | Yes | Yes | No | Yes | Yes | No | No | No | No |
Trident | Yes | No | No [29] | No | ? | ? | Yes | Yes | Yes | No | Partial | No | No [30] | No | No [31] | No |
Engine | VP9 | AV1 | HEVC | H264 | Opus | FLAC |
---|---|---|---|---|---|---|
WebKit | Yes | Yes | Yes | Yes | ? | Yes |
Blink | Yes | Yes | Yes | Yes | Yes | Yes |
Gecko | Yes | Yes | No | Yes | Yes | Yes |
Goanna | Yes | Yes | No | Yes | Yes | Yes |
NetSurf | No | No | No | ? | No | ? |
Trident | No [32] | No [33] | Partial [32] | Yes [32] | No [34] | No [35] |
Engine | TTF | OTF | WOFF | WOFF2 | @font-face CSS rule | Ligatures (font-variant-ligatures CSS property) |
---|---|---|---|---|---|---|
WebKit | Yes | Yes | Yes | Yes | Yes | Yes |
Blink | Yes | Yes | Yes | Yes | Yes | Yes |
Gecko | Yes | Yes | Yes | Yes | Yes | Yes |
Goanna | Yes | Yes | Yes | Yes | Yes | Yes |
NetSurf | ? | ? | No | No | Partial [36] | No |
Trident | Partial [37] | Partial [37] | Yes [38] | No [39] | Yes [40] | No [41] |
Engine | Web Components | WebGL | WebGPU [42] | XHTML |
---|---|---|---|---|
WebKit | Partial [43] | Yes | Yes | Yes |
Blink | Yes | Yes | Yes | Yes |
Gecko | Yes | Yes | Yes | Yes |
Goanna | Yes [44] | Yes | No | Yes |
NetSurf | No | No | No | ? |
Trident | No [43] | Yes [45] | No [46] | Yes [47] |
Due to constraints of the iOS platform, all browsers must be built on top of the WebKit rendering engine.
Please note that we're still early in development, and many web platform features are missing or broken. It's going to take a long time before Ladybird is ready for day-to-day browsing.
Removed for KF6, the 'kf5' branch contains the last maintained state.