Optimize & compress Lottie files
Shrink a Lottie or dotLottie file's size — reduce numeric precision and strip authoring metadata, then download the smaller result.
How it works
- 1Upload a Lottie file (.json, .lottie, or .tgs), or try the example
- 2Adjust frame rate, quality, resolution and transparency
- 3Export to any format — or optimize and repackage as dotLottie
Nothing is uploaded. SVG output uses SMIL and needs no JavaScript; APNG and WebM keep the full color and transparency GIF can't.
About optimizing Lottie files
Lottie files are often heavier than they need to be: long keyframe and path arrays store far more numeric precision than any screen can show, plus authoring metadata that never affects rendering. Optimizing trims both, which reduces file size, DOM weight, and Largest-Contentful-Paint impact.
Upload your animation and click Optimize to see the before/after size and savings, then download the optimized JSON — or repackage it as a smaller dotLottie. It's a safe, conservative pass focused on the largest, lowest-risk wins.
Which format should I use?
| Format | Type | Transparency | Color | Best for |
|---|---|---|---|---|
| GIF | Animated image | 1-bit (hard edges) | 256 colors | Email, chat, universal support |
| APNG | Animated image | 8-bit (smooth) | Full 24-bit | Icons, logos, quality over size |
| WebM | Video | Yes (VP9 alpha) | Full | Small web video, transparent overlays |
| MP4 | Video | None | Full | Social, ads, video editors |
| SVG | Vector (SMIL) | Yes | Full | Runtime-free embeds |
| PNG / WebP | Still image | Yes | Full | Posters, thumbnails, placeholders |
Frequently asked questions
How much smaller will my file get?+
It depends on the animation, but precision reduction alone commonly trims a meaningful percentage; you'll see exact before/after numbers.
Does optimizing change how it looks?+
It's conservative — precision is rounded to a visually safe level and only non-visual metadata is removed.
Can I get an even smaller file?+
Yes — export as dotLottie (.lottie), a zipped container that's typically 30–50% smaller than raw JSON.