Ref TL 02 · Tools and formats Flash animation history and SWF files
Reference Edition of 20/08/2026 also filed under: file formats, web history, preservation
SWF: the compiled file format that Flash published, a compact binary container holding vector shapes, timelines, bitmaps, sound and bytecode, designed to play identically everywhere through a single browser plugin.
In short
- FLA is the editable project. SWF is what was published. They are not interchangeable.
- Flash Player reached end of life on 31/12/2020 and Adobe began blocking Flash content on 12/01/2021.
- Old SWF files still play, through emulators rather than through browsers.
1. What Flash was
Flash was two things that shared a name: an authoring program, where an animator drew vector artwork on a timeline, and a browser plugin, which played the file that program published. Because the plugin was installed nearly everywhere and behaved the same in every browser, an animator could publish one file and be confident it would look the same to everyone. For roughly fifteen years that was a promise no web standard could match.
2. The dates
| When | What happened | Why it mattered |
|---|---|---|
| 1996 | Macromedia acquires FutureWave Software and its FutureSplash Animator, releasing it as Macromedia Flash 1.0 | The vector animation tool that everything else grew from |
| 1999 | Flash 4 adds streaming MP3 audio | Sound and music become practical over dial up |
| 2000 | Flash 5 introduces ActionScript | Animation gains programming, and games follow |
| 2003 | Flash MX 2004 introduces ActionScript 2.0 | Larger projects become maintainable |
| 2005 | Flash Player 8 adds the On2 VP6 video codec and filters | Web video arrives inside the plugin |
| 03/12/2005 | Adobe completes its acquisition of Macromedia | Flash changes hands |
| 2006 | Flash Player 9 ships ActionScript 3.0 and a new virtual machine | A faster, stricter language, and a break with older code |
| April 2010 | Apple publishes its open letter on Flash | The public statement that iOS will never carry the plugin |
| November 2011 | Adobe stops developing Flash Player for mobile browsers | The write once, run anywhere promise breaks |
| February 2016 | Flash Professional is renamed Adobe Animate | The tool survives the format, retargeted at HTML5 and video |
| July 2017 | Adobe announces end of life for the end of 2020 | Three years of notice for the whole industry |
| 31/12/2020 | Flash Player reaches end of life | Support and distribution stop |
| 12/01/2021 | Adobe begins blocking Flash content from running | The remaining installed players stop playing |
Wide table: scroll it sideways.
3. Inside a SWF file
A SWF is a binary file made of a header followed by a stream of tagged records. Each tag declares its type and length, then its payload: define a shape, place an object on the display list, show a frame, embed a sound, load bytecode. A player reads the tags in order and builds the animation as it goes, which is what made streaming playback possible on slow connections.
The first three bytes tell you how the file is stored:
- FWS: uncompressed, the original form.
- CWS: zlib compressed, available from SWF version 6 onward.
- ZWS: LZMA compressed, introduced with SWF version 13.
The scripting inside was ActionScript. Versions 1 and 2 were loose and forgiving, derived from the same ECMAScript family as JavaScript. ActionScript 3.0 arrived with Flash Player 9 in 2006 alongside a new virtual machine, and was a genuinely different, stricter language, which is why so much old material stopped being maintainable at that point.
4. Why it took over
- Vector at dial up sizes. A cartoon that would have been an enormous video file fitted in a few hundred kilobytes as shapes and instructions.
- One runtime everywhere. The same file, the same result, in every browser that had the plugin, at a time when browsers agreed on almost nothing.
- A timeline, not a compiler. The authoring tool was made for animators. You could build something substantial without writing code, then add code when you needed it.
- Sound in sync. Streaming audio from Flash 4 onward meant music and dialogue could carry a whole short film.
- Distribution. Portal sites accepted a single self contained file, so an animator could publish to a large audience without owning a server.
5. Why it ended
No single cause. The plugin was a large, universally installed target and attracted a steady stream of security vulnerabilities, which meant a permanent patch cycle for every user and every administrator. Mobile arrived and it did not fit: iOS never shipped the plugin, and Adobe stopped developing Flash Player for mobile browsers in 2011, which broke the promise that one file would run everywhere. Battery and processor cost on laptops made browsers restrict it further. Meanwhile the open web standards caught up, with video, the canvas element, WebGL and CSS animation covering most of what Flash had been needed for. Adobe announced the end of life in July 2017, giving three years of notice, and the plugin stopped on schedule.
6. Reading old files today
A SWF file that no longer opens in a browser is not lost. Three routes exist, and they serve different needs.
- Ruffle: an open source Flash Player emulator written in Rust. It runs in a browser through WebAssembly and also as a desktop application, and the Internet Archive uses it to make its archived Flash collection playable in a normal browser. Support for older ActionScript is strong; support for the later, stricter version is still catching up.
- BlueMaxima's Flashpoint: a preservation project launched in 2018 that collects web games and animations together with the runtimes and server behaviour needed to make them work, and plays them offline on your own machine.
- Newgrounds Player: a desktop application from the portal that hosted a great deal of this material, made so its own archive stayed playable.
7. Keeping the work
If you have old Flash work, or you are handed a folder of it, four steps preserve most of the value:
- Keep the FLA files. A SWF is a compiled result. Decompilers exist and they lose things: layer names, guides, unused symbols, editable text. The project file is the only real source.
- Record a video capture of each piece as it actually plays, with sound. That is the version that will still open in thirty years.
- Write down the dependencies. Fonts, external asset files, anything loaded from a server that no longer exists. A file that needs a missing server is a file that will not run.
- Store it twice, in two places, and check it opens once a year. Preservation is a routine, not a folder.
- Software for cartoon animation: what animators use now, including the descendant of Flash
- Designing funny cartoon characters: the design discipline that outlived the format
- What an illustrator delivers: where SWF sits among file formats
- Building an online art portfolio: keeping old work playable and visible