A Brief History of SVG: From Format Wars to the Web’s Lingua Franca
By 2026, SVG is on roughly two out of every three websites in existence. It draws almost every icon you tap, every logo you scroll past, every chart in every dashboard. And yet the format almost didn’t happen, almost died twice, and spent its first decade as a mostly-failed plug-in. This is the story of how a file format survived a corporate war, a decade of indifference, and a competing technology called Flash to become the silent default of the modern web.
A web without vectors (1989–1996)
When Tim Berners-Lee invented the Web at CERN in 1989, graphics were not part of the plan. The first browser, WorldWideWeb, displayed text. Inline images arrived in 1993 with Mosaic, and they were either GIFs (limited to 256 colours and patented compression) or, soon after, JPEGs (great for photos, terrible for anything with sharp edges). Both formats were rasters: grids of pixels, baked at export time, with all the resolution they would ever have.
For roughly the entire 20th century, the answer to “what about vector graphics?” on the Web was “there aren’t any.” PostScript existed, but it was a print language. CGM (Computer Graphics Metafile) existed, but it was an ISO standard from 1987 designed for technical illustration on mainframes. Macromedia Flash existed from 1996, but it was a proprietary, closed binary format that required a plug-in to view.
In 1996, a W3C staffer named Chris Lilley sat down and wrote Scalable Graphics Requirements for the Web, a short document arguing that the Web needed an open, text-based, scalable vector format with proper internationalisation, accessibility, and integration with the rest of the web stack. It was the first official sentence in a story that would take five years to reach a Recommendation, and another decade to reach actual users.
1998: Six formats walk into a W3C
By early 1998, the industry had figured out that the Web needed vectors. The industry, however, had not figured out how to agree on anything. Within a single year, six different XML-based vector graphics specifications were submitted to the W3C as Notes:
- Web Schematics — submitted 31 March 1998 by CCLRC.
- PGML (Precision Graphics Markup Language) — 10 April 1998, by Adobe, IBM, Netscape and Sun. Built on the imaging model of PostScript and PDF.
- VML (Vector Markup Language) — 13 May 1998, by Microsoft, Macromedia, Autodesk, Hewlett-Packard and Visio. Already shipping inside Office and Internet Explorer.
- HGML (Hyper Graphics Markup Language) — 19 June 1998, by Orange, PCSL and PRP, aimed at low-bandwidth mobile browsers.
- WebCGM — by Boeing, CCLRC, Inso, JISC and Xerox, an XML-friendly profile of the older CGM standard.
- DrawML — by Excosoft of Sweden.
The two heavyweights were obviously PGML and VML, and the two camps had completely different ideas about what they were even doing. Adobe and friends openly told the W3C that PGML was just a proposal and they were happy to see it modified in any way. Microsoft, in what would surprise nobody who lived through the late 1990s, informed the W3C that VML was already a shipped product and that the Working Group was not authorised to make any changes to it whatsoever.
That kind of negotiating position will not surprise you if you remember the browser wars. It was 1998. Internet Explorer was about to obliterate Netscape. The W3C had a roomful of vendors, none of whom wanted to use anyone else’s format, all of whom needed an open standard so the Web could keep being a Web.
From standoff to standard
The W3C’s Advisory Committee met in Geneva in June 1998, looked at the situation, and made the only sane decision available: they would take none of the submissions and design something new. The SVG Working Group was formally chartered on 24 July 1998, with Chris Lilley as chair and Adobe’s Jon Ferraiolo as the lead editor.
The Working Group’s opening move was diplomatically brilliant: they declared that SVG would not be derived from any submission. It would be informed by all of them. That defused the political fight (no one’s baby was being chosen, no one’s baby was being rejected) and freed the group to focus on the technical commonalities — Bézier curves, gradients, masks, compositing, transforms — that everyone actually agreed on.
You can still see the influences in modern SVG. The compact path microsyntax (M 10 20 L 30 40 C ...) came from VML, after the Working Group ran experiments showing that even gzip-compressed XML benefited massively from a terse path notation. The coordinate system, transforms, colour spaces, and the general approach to text and fonts came from PGML, which itself inherited them from PostScript. The decision to put text content as readable text inside a <text> element (rather than as opaque attribute soup) came from the W3C’s deep CSS and internationalisation culture. The Working Group spent three years drafting, redrafting, and herding implementers.
4 September 2001: SVG 1.0 becomes a Recommendation
On 4 September 2001, exactly one week before the world’s attention was elsewhere, SVG 1.0 became a W3C Recommendation. Alongside it, SMIL Animation became a Recommendation too — and SVG used SMIL to describe declarative, time-based animation.
What landed in that 600-page specification is, with small revisions, what we still use today: the <path> element with its compact notation; basic shapes (<rect>, <circle>, <ellipse>, <line>, <polyline>, <polygon>); linear and radial gradients; clipping and masking; a complete filter primitives system (the ancestor of every CSS filter you have ever used); a coordinate system with arbitrary transforms; CSS styling; full DOM scripting; and, crucially, the viewBox attribute that lets a single SVG render correctly at 16×16 pixels and at 1600×1600 pixels with no quality loss.
The press response was respectful but muted. The New York Times ran a short piece, Online Images That Stay True to Form on Any Screen, the following month. XML.com declared SVG “along with W3C XML Schema, one of the most important technologies to emerge from the W3C this year.” SVG 1.1 followed on 14 January 2003 — a modularised reorganisation that also introduced SVG Tiny and SVG Basic, two stripped-down profiles aimed at mobile phones. Within a year, a handful of Sony Ericsson, Siemens and Sharp handsets were shipping with SVG Tiny viewers. Nobody outside Japan really cared.
The plugin decade (2001–2011)
The dirty secret of SVG’s first decade is that almost no browser could render it. Internet Explorer — which held the vast majority of the desktop market — had no native SVG support at all. Adobe filled the gap with the Adobe SVG Viewer (ASV), a free plug-in first released in 2000 and updated regularly through version 6. ASV was excellent, free, and ran in Internet Explorer, Netscape, and even early Firefox builds on Windows and Mac. For most of the early 2000s, “viewing SVG” meant “installing the Adobe plug-in.”
Native browser support arrived slowly:
- Opera 8 shipped on 19 April 2005 with native SVG Tiny support — the first major browser to do so.
- Firefox 1.5 followed on 30 November 2005 with integrated SVG rendering, including SMIL animation soon after.
- Safari / WebKit added native SVG over 2006-2008, maturing rapidly.
- Chrome launched in September 2008 with native SVG from day one.
- Internet Explorer, holding more than 60% market share at the time, refused to budge.
And then, in late 2005, Adobe acquired Macromedia for $3.4 billion. With it came Flash, the proprietary vector animation runtime that was, by 2006, on something like 98% of internet-connected desktops. Adobe’s strategic calculus around SVG changed overnight: why support a free open standard with a plug-in that competes against the multi-hundred-million-dollar product you just bought?
On 9 September 2006, Adobe announced end-of-life for the SVG Viewer. After community outcry, support was extended once and then fully terminated on 1 January 2009. SVG content on the open Web became a coin toss: it might render in Firefox, Opera, and the small but growing pool of WebKit users — but in IE6, IE7, and IE8, with no plug-in, your beautiful vector image silently became nothing at all.
It is hard to overstate how close the format came to dying in this stretch. Search engineers were writing The Death of SVG blog posts. Designers who had bet on it were quietly migrating back to PNG sprites and Flash. The mobile profiles (Tiny / Basic) had been swallowed by the iPhone, which launched in 2007 and supported SVG natively but discouraged plug-ins of any kind. Flash was riding high. SVG was, charitably, an academic curiosity.
14 March 2011: IE9 ships, and SVG goes mainstream
The thing that saved SVG was, of all entities, Microsoft. In 2009 Microsoft quietly joined the SVG Working Group. At MIX 10 in March 2010, they demonstrated native SVG rendering in a preview build of Internet Explorer 9. And on 14 March 2011, IE9 shipped — with hardware-accelerated SVG 1.1 rendering through Direct2D, integrated with the DOM, fully eligible to be styled with CSS. For the first time in history, every major desktop browser supported SVG natively.
The next two years rewrote the front-end industry. The retina iPhone 4 (2010) and the wave of high-DPI displays that followed made bitmap icons look blurry; SVG looked perfect. GitHub launched Octicons as all-SVG. Twitter Bootstrap shifted to icon fonts (still vector, just packaged differently) and shortly after that, the industry shifted again from icon fonts back to inline SVG once people realised SVG could be styled with CSS, animated with JavaScript, and made accessible with a properly authored title and ARIA attributes. By 2014 the average front-end developer’s toolbox contained no PNG icons at all.
A nice side note for the historical record: by 2017 Adobe Flash was deprecated; on 31 December 2020, Adobe killed it for good. The plug-in that was supposed to make SVG unnecessary disappeared, and SVG, the format Adobe had given up on, kept going.
SVG 2: the sequel that never quite came
With SVG 1.1 firmly established, the Working Group started in on SVG 2.0, an ambitious overhaul that promised gradient meshes (a feature Inkscape and Illustrator users had wanted for years), better text wrapping, hatching patterns, native <tspan> improvements, and tighter integration with HTML and CSS. Working Drafts appeared from 2014 onward.
Then reality intruded. Browser vendors had pivoted hard toward the CSS working groups for things like filters, transforms, and animations — a lot of what SVG 2 wanted to add was being added to CSS instead. The economic incentive for any vendor to spend a year implementing gradient meshes was essentially zero. SVG 2 was published as a Candidate Recommendation on 4 October 2018 and has, in the words of the W3C’s own tracker, stalled there ever since. The current SVG Working Group charter, in effect through June 2026, explicitly limits the group’s mission to maintenance and interoperability testing of the existing core specification. Most of the SVG 2 features sit on a permanent “at risk” list.
This is, oddly, fine. SVG 1.1 is what every browser implements; SVG 1.1 is what every designer learns; SVG 1.1 is what shows up in every Figma export, every SVGO output, every icon sprite. The format won by being good enough and shipping everywhere. Twenty-five years after its 1.0 Recommendation, that is a stronger position than most standards ever reach.
The vector future (2026 and beyond)
As of April 2026, SVG is the dominant image format on the Web for everything that is not a photograph. The most-cited industry survey puts SVG on roughly 65% of all websites, ahead of PNG and well ahead of WebP and AVIF. Icon fonts are largely a legacy concern; modern design systems ship SVG components from React, Vue and Svelte libraries. The dashboards of cloud providers, the icon sets of operating systems, the maps in your banking app — almost all of it is SVG, sometimes inline, sometimes referenced, almost never seen by name.
Three contemporary trends are worth a paragraph each:
Lottie and animation
Airbnb’s open-source Lottie format (a JSON serialisation of After Effects animations) became the dominant way to ship interactive vector animation in the late 2010s. Lottie’s reference renderers can output to native canvases, but its design draws directly on SVG’s primitives — and many Lottie players actually render to inline SVG under the hood. SMIL animation, baked into SVG 1.0 in 2001, has fallen out of fashion in favour of CSS animations and the Web Animations API, but the underlying vector model is the same.
Design tools as vector-first
Figma, the dominant design tool of the 2020s, uses a vector model that is basically SVG with a few extensions. Sketch and Adobe XD did the same. Exporting SVG from a modern design tool is now the canonical path from design to production, which is also the reason your Figma exports are usually obscenely bloated and need to be optimised before they hit a browser.
AI-generated SVG
A development the 1998 Working Group could not have anticipated: large language models can write SVG. Claude, GPT, and Gemini will all happily produce hand-coded vector illustrations from a textual prompt, and a growing ecosystem of specialised tools turns prompts into ready-to-ship icons. The format that almost died because nobody could be bothered to implement it natively in a browser is now being generated by neural networks at scale. The three diagrams in this article were hand-coded SVG, not AI-generated, but the line between the two is thinning week by week.
Closing
SVG’s history is not a story of brilliance triumphing over inertia. It is a story of a thoughtful committee designing a deliberately boring format, a single browser holding it back for a decade, a corporate acquisition nearly killing it in the cradle, and a slow, grinding accumulation of native implementations that eventually made it the path of least resistance. By 2026, SVG is the format you reach for without thinking — for icons, for logos, for charts, for diagrams, for the buttons in your design system, for the avatars in your sidebar. It is, in the most flattering possible sense, unremarkable.
That was always the goal. A scalable, open, text-based vector format that anyone can read, anyone can edit, anyone can serve, and every browser can render. It just took twenty-five years to get there.
Sources for this article include the W3C SVG History page, the W3C’s own “Secret Origin of SVG”, the original PGML and VML W3C Notes, the Internet Explorer 9 launch materials, and contemporaneous press from XML.com and the New York Times.
Optimize SVGs instantly — no setup needed
500 free optimizations per month. No credit card required.
Get a free API key →