11FAQ
Common questions about the SVGA format, cross-platform players, and Web Lite.
Basics
What SVGA is, where it fits, and its open-source ecosystem.
What is SVGA?
SVGA is an open-source, cross-platform animation format compatible with iOS, Android, Flutter, Web, HarmonyOS and more, delivering high-performance playback. See the official docs repo.
What animation scenarios fit SVGA?
SVGA fits gift animations, campaign badges, onboarding motion, and interaction effects that need high-fidelity playback across platforms.
How is SVGA different from GIF or frame animation?
SVGA keeps the timeline and asset structure, similar to Dragonbones / CreateJS, which usually makes file size easier to control than frame-by-frame images and makes playback control and cross-platform reuse easier.
Is SVGA open source?
Yes. SVGA players, converters, and format specs are community-maintained. Review source code, open issues, or contribute on the GitHub svga organization.
Format spec
SVGA file structure and the 1.x / 2.x version differences.
What format versions does SVGA have?
SVGA has 1.x and 2.x. Version 1.x uses JSON to describe animations; 2.x uses ProtoBuf. Because JSON files grow too large for complex animations (slower parsing, higher memory), JSON was deprecated starting from 2.0.
What is the difference between 1.x and 2.x?
What is the file extension and structure?
SVGA files use the
.svga extension, are ZIP-compressed, must not contain subdirectories after decompression, and file names must not contain non-standard characters (no Chinese, Japanese, etc.). Bitmaps must be PNG-8 or PNG-24; pngquant compression is recommended.How do players handle format compatibility?
A 2.0.0 Player plays 2.x format files and is backward compatible with 1.x; a 1.x Player only plays 1.x format files and cannot play 2.x.
What is the SVGA format roadmap?
2.0.0 plans Audio and Bitmap Mask features; 1.x only guarantees stability. See the SVGA-Format repo.
Players and integration
Multi-platform player options, converters, and community resources.
Which platforms does SVGA support?
Official players are provided for iOS, Android, Flutter, Web, Web Lite, WeChat Mini Program, and HarmonyOS NEXT. The full list is in svga/docs.
What is the difference between Web and Web Lite?
SVGAPlayer for Web is the full player; SVGAPlayer-Web-Lite targets mobile web with a smaller footprint (<60kb, gzip <18kb) and better performance, but does not support SVGA 1.x or audio playback.
How do designers export SVGA files?
Designers can use SVGAConverter to export .svga files from After Effects or Animate.
What developer and designer guides are available?
Official guides include the developer guide, the designer guide, and a cross-platform feature support table.
What third-party community resources exist?
Community contributions include a React Native player (BANG88), a UWP player (LancerComet), and a VSCode SVGA preview plugin (ETTTTT).
Web Lite specific
SVGAPlayer-Web-Lite features, limits, and usage.
What is SVGAPlayer-Web-Lite?
It is a lightweight SVGA player for mobile web, aiming to be smaller and faster. Its size is <60kb (gzip <18kb) and it supports Android 4.4+ / iOS 9+. See the repo.
What tech does Web Lite use for performance?
It parses file data with multi-threading (WebWorker) and renders with OffscreenCanvas / ImageBitmap, with better async handling. Experimental features include running the render engine in a WebWorker, replacing WebWorker with WebAssembly, and GPU-accelerated computation.
What are the limitations of Web Lite?
It does not support SVGA 1.x format files and does not support audio playback. If you need 1.x compatibility or audio, use the full SVGAPlayer for Web.
How do I install SVGAPlayer-Web-Lite?
Install via npm with
yarn add svga or npm i svga; or include via CDN: <script src="https://unpkg.com/svga/dist/index.min.js">.What advanced features does Web Lite support?
It supports replacing and inserting dynamic elements (by modifying parsed data), persisting parsed data in IndexedDB to avoid repeated download/parse, IntersectionObserver-based viewport detection to pause off-screen rendering, and frame caching to speed up repeated playback.