Dojo vs JQuery vs MooTools vs Prototype Performance Comparison

Updated: MooTools vs JQuery vs Prototype vs YUI vs Dojo Comparison Revised

As part of my Mootools lecture at Codecamp I showed a brief speed comparison between the most used Javascript Frameworks running in the major browsers. Now as the Mootools team has extended their performance test tool (slickspeed) it is time to revise my benchmarks and extend them over more browser/platforms.

Test results (Lower is better):

Speed Comparsion Graph

*For example FF (XP-NA) is Firefox with no addons (extensions) enabled running under Windows XP

You can check the actual numbers (in ms) and the full browsers information in the table bellow:

Dojo 1.0.2JQuery 1.2.3MooTools 1.2beta2Prototype
Mozilla Firefox – no addons – winxp128266115259
Mozilla Firefox – winxp144290127260
Mozilla Firefox – linux253438255384
Opera 9.26 – winxp32136148194
Opera 9.26 – linux110188238364
Internet Explorer 7 – no addons – winxp2633306621563
Internet Explorer 7 – winxp2643346741583
Internet Explorer 63876009452279
Internet Explorer 6 – linux (wine)69297813102616
Safari 3.0.4 Beta 3 – winxp367684116
Konqueror – linux324450XX


  • Safari under Windows XP is really blazing fast
  • Mootools and Prototype JS do not work under Konqueror (KDE’s default browser)
  • Dojo performs great. If we take only these test into consideration it safe to say it is the fastest Javascript Framework
  • Linux browsers are relatively slower against their Windows versions
  • Prototype is insanly slow under Internet Explorer

Disclaimer: This benchmark is somehow subjective because the test results depend on the current OS load and other factors. If you have any corrections or comments on this topic I will gladly review them and will revise the results if needed.

47 Replies to “Dojo vs JQuery vs MooTools vs Prototype Performance Comparison”

  1. Peter,

    I don’t want to sound rude but could you provide us more info about this benchmark ? Because saying that one framework is slower that other without info but some numbers, it is not quite useful. What did you test ? Rendering ? Effects ? Iteration over complex structures ? Environment specifications ? Stuffs like that …

  2. @Gomera

    As written in the article i have used for testing. As said on the website this tests speed/validity of the selectors. In other words how many seconds will be needed for the framework to return pointer to the needed dom element(s). Testing environment was standard Windows XP SP2 with all updates

  3. @Jorge as I said above the test is a bit subjective for many reasons – one as pointed in the blog post – most used selectors. Other reason is that mootools is still beta and therefore things might change.

    If you like post your figures and chart and I will attach them in the post.

  4. Thanks for sharing this information.
    Can we have detailed screenshot/information of each selector you run through as these scores are sum of each selector and selector usage will be basically matter of choice most of the time.

    FYI scores on my firefox 3 Beta5 were like following: (although all this highly depends on machine configuration)

    Dojo 1.0.2 JQuery 1.2.3 MooTools 1.2beta2 Prototype
    62 103 83 179

    I am using jQuery heavily and it seems to be it’s average when it comes to speed but the selectors I am using it’s fastest on them as long as I know.

  5. Thanks for this article. I don’t have a windows machine but I’ve suspected for a while that Prototype might be easier for me than it is for the machine it’s running on.

  6. Whe can see if the test is based on find element, maybe for others situation, for example: create dom element or UI widgets the results will be diferent.

  7. Why are linux browsers always slower than their windows counterparts? Is it because of the system (linux is slower)? Less time is taken to optimize linux versions?

  8. Heh Linux is faster in many things than windows so it should be the second.

    I will be putting updated review soon, since most of the frameworks are updated and there are new browsers on the horizon

  9. what about the compatibility of jQuery and/or Prototype with some server-side frameworks(like JSF + Richfaces, which are my goal).
    I’m researching about the compatibility of them and also the possibility of replacing the Ajax-based server-side libraries with a client-side.

  10. on a note from Mehdi, I have recently used JSF + Richfaces and using JQuery along side it. Richfaces uses JQuery as one of its libraries (look to what the browser chucks out on the JS includes on the top of the pages) and as I can tell from my experiances with it, it uses a custom built library.

    you can use the Juery library Richfaces offers but I find you have to reference not the “$()” but directly “jQuery()”. What I do to decrease the code is to create a reference to the jQuery function, such as “var jQ = jQuery;”.

    I have not tried adding the other plugins that you can download from the jQuery site, or for that matter custom plugins, something worth experimenting with.

    Hope that helps.

  11. So I think for most fatest frame work is Dojo, is Dojo easy to use as prototype or YUI??
    please help me to decide which one I should use in my Site developing??

  12. 1. This test are a bit old by now so speed might have changed
    2. JQuery will be somehow supported by MS
    3. Don’t have much experience with Dojo
    4. I’m a fan of Mootools but as Aaron said almost all frameworks now have similar functionality just implemented differently

    My choice would be JQuery or Mootools

  13. are you sure you’re not working for dojo? just kidding. i’ve used prototype, mootools and spry. i haven’t tried dojo so this article will probably make me try it.

  14. Numbers I got from same page.

    MooTools 1.2 JQuery 1.2.6 Prototype YUI 2.5.2 Selector beta Dojo 1.1.1

    Ubuntu 8.0.4, Firefox 3.0.5 316 330 427 639 238
    Ubuntu 8.0.4, Epiphany 2.22.2 299 306 425 634 235

  15. so the speed test, huh,
    and what about memory leaks?
    what about ease of use?

    i will be invest the few coming days to see how better is MooTools compared with Prototype( which i have been using couple of times). for a first look, the easiness of selecting elements by ID and by selectors using $() and $$() are similar .. which makes me eager to really start testing couple of mootools effects and manipulation of the dom objects in an HTML page not just plain text.

  16. Interesting… BTW, you should update this data: jQuery 1.3 is much much faster in many things (starting from selectors).
    Also, it would be interesting to see how Chrome and SquirrelFish Extreme (the engine of Safari 4, which Apple claims is the fastest in the world) behave

  17. Prototype selectors are so significantly slow on IE (and not so fast on other browsers) only because Prototype extends many elements during search (and not because of poor algorithm or implementation). This issue is known to developers of Prototype, and they will sooner or later release some improvements.

  18. my first choice is mootools then go to jquery. When you are doing everything in mootools why do we need jquery. I heard about the compressed version of js(framework) will not support in chrome… is that real?

  19. Always good to see more benchmarking information. Having used both Dojo and Jquery (but not the others you mention) I was somewhat disappointed to discover that Dojo appeared to cause pages to initially render without Dojo-applied styling, causing a rather unpleasant visual flashing as objects were replaced by their fully-styled counterparts.

    Is this a known issue with Dojo which I was perhaps triggering by some omission? To me (in limited testing on FF 2.X and 3.0 under Windows Vista and Ubuntu) Jquery seems to have the edge for user experience.

  20. please consider running these comparisons again with the latest versions of the toolkits and browsers. it would really help!!

  21. This is my result of test with latest versions of the frameworks (firefox on debian squeeze)
    jquery1.4.3 mootools 1.3 prototype1.6.1 protytpe1.7.0rc3
    88 167 141 74

  22. This article has been a great help in understanding which is the best framework that we can use

  23. Great post, loved the comparison! Personally I am glad you did not include YUL as I believe it to be optimized for IE over other browsers and IE is a non starter for many any more. Likewise I do not miss Chrome not being included, but suspect you would want to include it in future comparisons. Personally I like the finer control over my browsing experience with Firefox to Chrome, especially with respects to privacy related issues. The Safari and Dojo results were impressive. I wonder if the new Dojo would beat out the new jQuery now?

    Thanks to @PatrickS for recommending

    Here were my results today using that website, everyone can run their own tests, 110919 if anyone cares: 132 120 229 426 494 152 13815 142

    DOMAssistant 2.8(132); jQuery 1.4.2(120); Prototype 1.6.1(229); Mootools 1.2.4(426); ExJS Core 3.1(494); Dojo 1.4.1(152); YUI 2.8.0(13815); YUI 3.0.0(142) ~ as you can see version updates, the new jQuery is impressive.

    jQuery 1.4.2 was the fastest, followed by YUL 3.0.0 and Dojo 1.4.1. On this system I was running FireFox 3.6.11 on Ubuntu 10.04 w/ an older Kernel 2.6.32.xx but that should not matter…FYI. I wonder how my Linux Mint or Debian boxes will do? What will I discover when I install Arch on a small netbook with only 512 MB of RAM?

    The test in this post makes me want to check out Dojo and Safari specifically.

    It appears that adoption/news of the jQuery framework is significantly increasing and perhaps your comparison hints at why:

    I did not include Dojo or YUI in the Google -dance listing above because of Karate references (Dojo) and the Japanese singer (YUI) which greatly skew the results. I know its not scientific, so please do not flame, I just find it interesting.

    Comparison of PHP Frameworks: (Interesting, not scientific):

    It will be interesting to see how jQuery, and Dojo specifically interface with various PHP Frameworks, my current focus. Are they easy to integrate with each PHP framework, etc… I expect few issues based on past experience.

    I ignored the Linux v Windows OS comparison, as should others IMO, over the years we have observed many tests invalidated based on optimizations automatically turned ON in either IE or Windows that skew the results….some sleuthing would need to be done to highlight them and apply the equivalent optimizations on the Linux system (…in Linux all the optimizations will exist, whatever they are) in order to get an accurate comparison from an OS perspective. [obviously not the primary focus here] Rarely is a Linux system slower than Windows. Start dropping memory to lower levels (I run one Linux “server” with only 256MB for coding/testing in lower memory conditions, ie Linux handhelds) the new windows would not be an option at 512MB and below, perhaps not even at 1GB of RAM. Even Linux w/ WINE usually runs faster for the one or two MS games that will never be optimized for Linux users. With Linux, since the OS requires such a small memory footprint, there is more memory available for applications and data, as it should be.

    I agree with posters above, this article helped me decide which JavaScript framework(s) to focus on. After all in the long run, we all want our websites to perform and keep performing as they scale! While the latest version of jQuery really performs, I intend to keep my eye on DoJo. Thank you!

Comments are closed.