I published my results of running ten different SVG implementations through the SVG Test Suite.

I ran the tests on various flavours of Firefox, Opera, Konqueror, Safari, Adobe SVG Viewer, Renesis, and Batik. Go check out how your favourite web browser or SVG plugin scored when I ran it through all 280 tests: Click Here.

This is one of those times when I almost hesitate to even publish this because people will officially know I wasted hours of my life browsing web pages to obtain these results. Then again, we all waste hours of our lives browsing web pages - the only difference is we don't record our findings in a spreadsheet.

I hope some people will find this interesting. Some people might consider it a challenge. Other people may find it discouraging, disappointing, a waste of time, an over-simplification, or even offensive. Oh well, at least now I have my own scoring system for anybody who wants to put out a SVG plugin or support for SVG (Microsoft, care to give it a whirl?).

§362 · April 21, 2007 · Adobe, Firefox, Opera, Safari, Software, SVG, Technology, Web · Tags: · [Print]

197 Comments to “Grading SVG Browsers”

  1. stelt says:

    Renesis 1.0 was just released.
    Hopefully it throws out ASV at many places.

  2. stelt says:

    Opera has released Beta2. How will it stand out against a Batik nightly ? 🙂

  3. @stelt: I’m currently having an issue with my Opera 9.5 beta builds that is under investigation. But to be honest, now that Opera and Batik score so high I’m not as concerned about them. I’m more concerned with the ‘long poles of the tent’ (Renesis and Mozilla and WebKit). Maybe it’s time to bust out the SVGT 1.2 Tiny test suite and start a new chart to keep Opera in the races? 🙂

  4. Charles says:

    I keep hoping to see some evidence that there will be a replacement “SVG plugin” for IE (Instead of the Adobe one) but I guess if you don’t even mention that, it does not exist. I’m suspecting that IE does not like SVG because it wants to promote it’s own Vector Graphics “Browser extension” (Silverlight). Does anyone else think that SVG will become so important at some stage that IE will WANT to support it?

  5. Hi Charles,

    There is a SVG plugin for Internet Explorer that is under active development (and it is on my chart): the Renesis Plugin 1.0.

    Does anyone else think that SVG will become so important at some stage that IE will WANT to support it?

    Yes someone does think so. Me. 😉 Of course I am admittedly biased.

  6. Charles says:

    Thats interesting. I’m wondering if it’s possible for a user who surfs to an SVG webpage to be offered a plugin if necessary? I mean if the user is using a Mozilla Firefox browser for example this option would not be offered (native support). The code would of course “know” which browser the user was using and ideally offer the relevent download and would not if the relevent plugin was NOT in place. Is this possible?, I have yet to see and implementation of this.

  7. @Charles: It’s definitely something worth considering. You can probably do this by the fact that browsers that do not understand SVG will render the ‘fallback’ content inside the object element.

  8. stelt says:

    As most of the changes to the SVG wiki are updates to the Viewer Matrix, mostly meaning new ‘releases’ of SVG viewers, you might find the following RSS-feed handy:

  9. @Stelt: Nice, except that it’s an empty feed… 😉

  10. stelt says:

    Argh 🙁
    svg.org in general has trouble with feeds it seems

  11. stelt says:

    I think you meant Firefox (instead of 2.0.1)

    Maybe strike-through versions that are overtaken in all respects (equal/better on (all) test(s), equal/better on status/version (nightly/alpha/beta/RC/release) by other versions mentioned?
    As i expect many people to not care about those versions much (only IE users stick to old versions, and there’s no difference between 0% and 0% anyway), except of course for seeing how much the percentage is changing over time.
    At this moment that would mean Fx1.5 and Fx3preB4 (others that are equal/better on status/version have regressions)

    When you have absolutely nothing better to do, 🙂 , ordered by my preference:
    Renesis 1.1
    Konqueror newest (KDE is at 4.0.4 already)
    Safari 3.1.1
    Opera 9.50b2
    Opera 9.27
    WebKit newest nightly
    Batik newest nightly
    Opera weekly (last one fixed a Windows specific SVG bug)

  12. Helder Magalhães says:

    Are Firefox+SMIL builds publicly available or one must build them from scratch (i.e., by downloading the source code, applying the relevant patch(es) and building the result)?

  13. @Helder: If you go visit the Bugzilla bug the current assignee (Daniel Holbert) has some instructions on building his branch/repository. Chris Double also posted some earlier snapshot binaries for download. Hope this helps.

  14. stelt says:

    ‘manual RSS for wiki.svg.org’: Firefox 3 RC2 released

  15. stelt says:

    Opera 9.5 released. Does it add to its score ?

  16. @stelt: I don’t think so. I wouldn’t expect much shift in Opera or Batik’s SVG 1.1. score going forward. I think there are errors in the test suite that prevent 100% pass anyway.

    I’ll probably do Firefox 3 and Opera 9.5 official releases at the same time, just to officially run them through the paces and then remove the alphas and betas from the chart…

    At some point in time, I’ll have to start getting dirty with the SVGT 1.2 suite. That thing is several times larger than the SVGF 1.1 suite and nearing completion now.

  17. stelt says:

    I listed:
    – tests no viewer passes (more likely to be wrong?)
    – tests that both Batik and Opera don’t pass, but at least 1 viewer passes (a bit more likely to be wrong?)

    to Cameron(Batik) and Erik(Opera) on IRC

    I hope that helps prioritizing in fixing the tests and implementations.

  18. @stelt: I saw Erik had updated the SVG WG wiki with this information, so thank you for providing it to him! 🙂

  19. stelt says:

    Looks like Batik killed a few more bugs since the 1.7 release: http://xmlgraphics.apache.org/batik/status.html#test
    And as Opera 9.5 had a regression setting it back the minimal 0.18 difference, I say Batik has a small lead at the moment, towards a 100% score on this test.
    I’m however mostly looking forward to a Firefox 3.1 release and someone wrapping up Batik into an IE plug-in.

  20. stelt says:

    Based on the link in the above entry i calculated the score of Batik nightly: 96.18%

  21. Helder Magalhães says:

    >Have you considered running the SVG tests on the Amaya browser?
    > I’ve found it to be slightly below Opera, but above most of the others – it supports animation, etc…

    Well, unfortunately Amaya support not as strong as in recent native browsers, although supporting a subset of SVG animation surely deserves attention. 🙂

    @Jeff Schiller
    >I’ll have to check it out eventually.

    Could this be the right time to take Amaya into consideration…? The browser/editor is in the process of releasing 10.1 which is expected to inclusively support some SVG editing. Recently 10.1-pre3 was made available [1]: although some noticeable bugs are still present, it would be great seeing it listed and tested in SVG implementations! 😉


    Helder Magalhães

    [1] http://www.w3.org/Amaya/User/BinDist.html

  22. @Helder: Since February, my chart/table has Amaya 10. Based on my last experience, I doubt I’ll have any time in the short term for preview versions of Amaya 10.1 unless significant improvements are being made to its level of support.

  23. Helder Magalhães says:

    @Jeff Schiller

    What happened to me? Was I woken up? 😀
    Yes, of course Amaya is there [1], I was probably just filtering (mentally) the table as there are several rows per implementation. Sorry ’bout the false alarm! 😉

    [1] http://www.codedread.com/svg-support.php

  24. Helder Magalhães says:

    Have you considered adding SVG Map Toolkit [1] (currently at 0.6) to the list? 😉

    On one hand, it is being (or at least seems to be) actively developed. 🙂
    On the other hand, its support seems rather incomplete (no script!) and buggy and there’s lack of a better feedback mechanism (such as a bug tracker tool) – aside from the (apparently formal and almost invisible) email contact [2]. :-|

    The limitations vs. benefit make me wonder if this is a good idea, though I’d like to leave that for your consideration… 🙂

    [1] http://blog.svg-map.com/2007/09/svg_map_toolkit.html
    [2] http://blog.svg-map.com/about/index.html

  25. Helder Magalhães says:

    Well, somehow related, I just found out GPAC features something like a developer builds repository [1]. The framework features SVG support, which can be used as standalone or as a plug-in – Internet Explorer, Mozilla and Opera supported.

    Support compliance seems to be fairly good [2] – at least, much better then the results achieved during the last interim implementation report [3], where most were marked “Unknown” (probably not tested).

    A specific section dedicated SVG status and support within the framework [3] is available.

    [1] http://www.tsi.enst.fr/~concolat/GPAC/?C=M;O=A
    [2] http://gpac.sourceforge.net/gpac_svg_testsuite_status.xml
    [3] http://www.w3.org/Graphics/SVG/Test/20070907/matrix.html
    [4] http://gpac.sourceforge.net/feat_n_svg.php

  26. @Helder: I was contacted two days ago by Cyril (lead dev on GPAC) and he sent me a build. I’m going through the test cases (slowly). The IE plugin still needs a little work…

  27. Helder Magalhães says:

    It seems that the “IE8 Beta 1” and respective date can be updated to “IE8 Beta 2”, “2008-08-27” [1]. Although I didn’t test for sure, I guess 0% still applies… 😀

    I’d also suggest removing the “ten different SVG implementations”: it seems outdated (or are you simply not counting Internet Explorer? 😉 ) and may easily deprecate as more reasonable implementations are made available. 🙂

    [1] http://blogs.msdn.com/ie/archive/2008/08/27/internet-explorer-8-beta-2-now-available.aspx

  28. Nicholas says:

    Just another request to update for FF3.1, a recent Webkit nightly, Opera 9.6, IE8b2 (ahem) and to drop old beta versions (especially all those WebKits). Kudos for including Amaya though 🙂

  29. Nicholas: Yeah, I’ll have to find some time for Firefox 3.1 (probably only when it gets closer to being released though) and a more recent Webkit nightly. I don’t anticipate a need for an Opera 9.6 column (just like I didn’t for Opera 9.2), but if I do find myself with some extra time or something I’ll give it a go.

    Just an FYI: No updates planned this month though.

  30. Richard Trigaux says:

    Good job Tim 🙂
    however my concern as a prospective SVG creator is not about the 100% implementation of SVG, but of some key features which will make it useable for everybody’s creations:

    -prefetch functions
    -download progress bars, starting the animation when download is complete.

    These features were implemented from the firsts versions of flash, and made of it at once a very successful, versatile and powerful language, widely used by millions of coders. Having only the ability to code static images has very little practical uses (zoomable maps) as most of the time it is much easier to display classical raster images (at worse animated gifs).
    So I am already astonished that we had to wait several years for a version 1.2 implementing these features. Worse, even the today best implementations still don’t implements audio, which make them unuseable in most cases. And on every SVG forum, we find a guy who says that SVG is not intended for audio, what is your psychology trouble for wanting audio…

    It is a bit as if we had nice cars, but still no wheels, no engine, no steering wheel. Ok, those cars are free, but, how to say, a bit useless. Car collectors may be happy with them, but you will not see them on the roads.

    So I strongly suggest that, in your test suites, you give different marks to the various features. The lack to implement basic features such as audio would make a bad overal mark, even if elsewhere the implementation is good.

  31. A thing I liked in svg is the accurate definitions of namespaces according to the XML frame. This may look a bit disconcerting when we are not warned, but it is very useful for keeping correct implementations of the norms, and further keeping of interoperability among various browsers.

    Especially this will avoid the mess which happened in HTML, when the elephant in the living room tried to make its own norms.

    At a pinch, I prefer that the elephant in the living room don’t implement SVG, as they will implement it wrongly.

  32. If some more “political” comments are allowed here, it seems that we are going toward a new browser war, not directly between software editors, but this time between sites. For instance I could not pay with Paypal from Ebay, using Opera, when it worked fine with Internet Explorer. Same with shoutcast servers. So some sites just block browsers they don’t like, even at the cost of a part of their audience (and money).

    In the case of SVG, we are going toward a SVG/silverlight competition. We have some advantages in it, because silverlight will probably be something complicated, that only professionnals with a strong formation (and some confidential infos) will be a ble to work with, when anybody with basic programmation skills can start SVG right now. But this cannot alone ensure us the victory: in a very similar situation, VRML/X3D (3D modeling languages) are losing the fight against 3DSmax and Second Life, by lack quite simply of a browser/plugin which really answers the needs of 3D developpers (auto-install, simple to run, free, crossplatform and crossbrowsers, without ads, 100% standard compliant).

    So the threat of Silverlight is to be considered seriously, and the only efficient parade is to hurry developping a full SVG capacity for all the browsers. This means, as I stated above, not just graphics, not more complicated functions, but the full set of basic capacities which alone can ensure the success of SVG, by making of it a practical answer to all the needs:
    -prefetch functions
    -download progress bars, starting the animation when download is complete.

    and we don’t need 50% of this, even not 90%, but 100%. Just as a car runs with 100% of its wheel. Even with 90% of its wheels it doesn’t run.

  33. Having all features ok is not enough. When trying to do my first SVG, I did a button opening an image which comes over the button in order to hide it once used. But I went on a strange bug: the animation was working, but when I was clicking on the image, not on the button! (I used Opera 9.6, and the image is much larger than the button).

    This tells us that a browser can be said 100% compliant only when each feature produces the expected behavior, not only tested alone, but also when they are combined with others. For instance a rotation followed by a translation must give the expected mathematical result, whatever they are applied in two steps or into the same line of code. In the example above, each feature is ok when used alone, but it looks like superimposing an image over a clickable zone is messing with the definition of this clickable zone. Expectable behaviours are that the clickable zone is hidden, or still sensitive through the image, but not enlarged.

  34. @Richard – Agreed, feature interaction is very important when designing a specification.

    For your particular problem, I can’t say I fully understand what your specific problem is, but SVG clearly defines a painters model in which elements placed afterwards in the DOM are ‘on top’ of the elements underneath it. If you want to be able to click a region that is now under another element, you should set that element’s pointer-events property to “none”. I invite you to join Yahoo Group’s svg-developers for further questions.

  35. Thanks Jeff for the useful link to the forum. I am now a member of it 🙂
    The example above was just an example of something which looked wrong or odd, I don’t intended to discuss in on this page. Perhaps it is myself who is in a mistake :).

  36. ccprog says:

    I’m asking again about librsvg, which is now an integral part of Gnome, the Sourceforge page is deprecated. You said above that you were not sure about it – it’s not as complicated as it may seem. A standard Gnome installation will also have librsvg, and the standard picture viewer EyeOfGnome uses it for displaying SVGs. In addition, there is a package librsvg2-bin that includes a small viewer programm (commandline-invoked).

    I would even offer to do the tests myself and send you the results (…hope I will not regret this sentence)

  37. @ccprog: Thanks for the interest. In fact, I do have a GNOME-based install at home and I will take your recommendation under advisement the next time I update this chart (definitely before end of year).

  38. It seems that the website hasn’t been updated for 3 years. Too bad, I was looking for more information.

  39. ccprog says:

    Normally I’d post the link for you, but the gnome.org servers are almost unreachable at this time, so I can’t look it up.

    I am playing around with the tests just now, and it seems you definitely need to use rsvg-view, since EOG has additional issues – I found at least one test with differing results, and for filters it is interesting to play around with scaling, which EOG will not do at all.

  40. ccprog says:

    What documentation there is of librsvg, is at http://library.gnome.org/devel/rsvg/

  41. T. Henrik says:

    I’d echo Michael’s concerns. I don’t think the Silverlight/Flash giants will just roll over without a fight. What would make web developers commit to a standard that has limited support, when something like Flash has 98% coverage. (Not a rhetorical but a genuine question – who is this technology for and how can we evangelize it?)

  42. stelt says:

    @ T.Henrik

    > What would make web developers commit to a standard that has limited support, when something like Flash has 98% coverage.

    The wide variety of tools (not nearly all web-focused) that can “save as SVG” and also many that can read it.
    SVG coverage when ‘only’ limited to browsers is about 100% minus the shrinking IE marketshare, while the number of options to fix IE with is growing.

    > who is this technology for ?

    A wide variety of people, looking at http://svg.startpagina.nl

    > how can we evangelize it?

    be active on the starting http://planetsvg.com and make sure browsers in use are SVG capable.

  43. stelt says:

    I’m looking forward to seeing new releases (alphas, betas at the moment) improve their percentages.

  44. @stelt: Yes, I need to make some time for the Opera 10 alpha out there, for a latest Webkit, and for Firefox 3.1…

  45. To reply to 91 T Henrik, when it will be possible for a person with little programming skills to do basic things like a sound player or a download status bar, which work the same with Opera, Safari and Firefox, then whant IE, flash or silverlight are doing will be of no concern. Developpers are waiting this to start working.

  46. NeXur says:

    First of all: Thank you for putting time into this!
    How about adding FF3.2 minefield & Opera 10 new-year snapshots to the list?

  47. Gyrobo says:

    Jeff, I hope you don’t mind, but I’ve created an interactive SVG support chart using your data and color scheme:


    I left off some of the older/developmental implementations because the whole thing is assembled on-the-fly.

    Ironically, it uses no SVG, though if you want, you could use the arrays I created to build one in SVG. I even created a small utility to build test suite arrays:


  48. cousin333 says:

    Opera 10 cannot be 2008-06, it came out later. Good test anyway, must be a lot of time, to do it.

  49. mabdul says:

    how about to add a amaya (11.1 were released to weeks ago!)?

  50. mabdul says:

    wegen releasedate of corel svg player look here: http://svg.org/story/2002/12/19/210000/00

    some hints