Template:SHORTDESC:
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
Mariner
Discontinued
Netscape Communications
NPL
Netscape Communicator 5.0
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
These tables summarize what stable engines support.
The operating systems that engines can run on without emulation.
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[ 33]
No[ 34]
Partial[ 33]
Yes[ 33]
No[ 35]
No[ 36]
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[ 37]
No
Trident
Partial[ 38]
Partial[ 38]
Yes[ 39]
No[ 40]
Yes[ 41]
No[ 42]
^ Must be built from source code.
^ Only available via QtWebEngine .
^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ a b Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ a b Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ a b c Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ a b c Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ a b c Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ a b Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ a b Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
Stable Experimental Discontinued