Lottie compatibility
After Effects has dramatically more features than the Lottie format supports. This page is the canonical reference for which AE features convert cleanly, which convert partially, which need a workaround, and which don't convert at all.
Compatibility legend
✅ Full — converts cleanly with no caveats.
🟡 Partial — converts with limitations; see Notes.
🔧 Workaround — possible with manual setup or pre-composing; see Notes.
❌ Unsupported — cannot be exported. Either silently dropped or causes a render error.
Layers and transforms
| Feature | Support | Notes |
| Shape layers | ✅ Full | The cleanest path. Use vector shape layers wherever possible. |
| Solid layers | ✅ Full | — |
| Text layers (basic) | ✅ Full | Single-style text with standard fonts converts. |
| Text layers (advanced animators) | 🟡 Partial | Per-character animators are partially supported; complex range selectors may drop. [needs testing] |
| Vector raster (Illustrator paste) | 🔧 Workaround | Convert pasted Illustrator artwork to shape layers via Create > Create Shapes from Vector Layer. |
| Raster image layers | ✅ Full | Image data is embedded as a base64 PNG inside the Lottie JSON, which inflates file size. |
| Pre-composed (nested) compositions | ✅ Full | Each nested comp becomes a referenced asset. Avoid unnecessary nesting for performance. |
| Adjustment layers | ❌ Unsupported | Drop or bake the effect into the layer beneath. [needs testing] |
| 3D layers (Z position) | 🟡 Partial | Z position is respected; layer ordering by Z may not be. |
| 3D layers (X/Y rotation) | 🟡 Partial | Limited; complex 3D camera interactions don't render. [needs testing] |
| Camera layers | ❌ Unsupported | Use simulated 2D scale/position animation instead. |
| Light layers | ❌ Unsupported | — |
| Null objects | ✅ Full | Useful as parents for hierarchical motion. |
| Guide layers | ❌ Unsupported | Marked as guides in AE so they're skipped — this is intentional behavior. |
Effects
Lottie only natively supports a small set of AE effects. Most others are silently dropped from the export. [needs testing — populate this section from empirical tests + relottie capability list]
| Effect category | Support | Notes |
| Drop Shadow | 🟡 Partial | Basic offset, color, opacity supported; some properties may not animate. |
| Glow | ❌ Unsupported | Bake into the artwork or use a pre-rendered raster. |
| Tint / Fill | 🟡 Partial | Static color overrides work; some animated forms drop. |
| Blur (Gaussian / Box / etc.) | 🟡 Partial | Limited support; behavior varies by renderer. |
| CC Particle World, Liquify, Turbulent Displace, etc. | ❌ Unsupported | None of the procedural AE effects export. Bake to keyframes on a shape layer, or use a pre-rendered fallback. |
Masks and mattes
| Feature | Support | Notes |
| Mask (alpha) | ✅ Full | — |
| Mask (subtract) | ✅ Full | — |
| Mask (intersect / lighten / darken / difference) | 🟡 Partial | Renderer support varies. [needs testing] |
| Track matte (alpha) | ✅ Full | — |
| Track matte (alpha inverted) | ✅ Full | — |
| Track matte (luma) | 🟡 Partial | Less consistent across renderers; alpha is preferred where possible. |
| Mask animation (path keyframes) | ✅ Full | Animated paths convert. |
Properties and animation
| Feature | Support | Notes |
| Position / Scale / Rotation / Opacity | ✅ Full | The four core animatable properties. |
| Anchor point | ✅ Full | — |
| Stroke and fill (animated) | ✅ Full | On shape layers. |
| Trim Paths | ✅ Full | The canonical Lottie reveal/draw animation. |
| Repeater | ✅ Full | On shape layers. |
| Gradient fill / stroke | 🟡 Partial | Two-stop linear gradients are best supported; complex gradients may simplify. [needs testing] |
| Path animations (shape morphing) | ✅ Full | Both shape paths must have the same vertex count. |
Expressions and time
| Feature | Support | Notes |
| Expressions (any) | ❌ Unsupported | Bake to keyframes before export: select the property, then Animation > Keyframe Assistant > Convert Expressions to Keyframes. |
| Time remapping | 🟡 Partial | Linear remaps work; expression-driven remaps don't. |
| Hold keyframes | ✅ Full | — |
| Easy ease / custom easing | ✅ Full | Standard temporal interpolation converts. |
| Roving keyframes | 🟡 Partial | Renderer support varies. [needs testing] |
Text-specific behavior
| Feature | Support | Notes |
| System fonts | ✅ Full | Font face is referenced by name; runtime must have the font available. |
| Custom (TTF/OTF) fonts | 🔧 Workaround | Outline the text (Create > Create Shapes from Text) before export, or ship the font file with your runtime. |
| Per-character offset / opacity | 🟡 Partial | Basic animators work; complex range-selector chains drop. |
| Text on a path | 🟡 Partial | [needs testing] |
Audio
| Feature | Support | Notes |
| Audio layers | ❌ Unsupported | Lottie has no audio channel. Add audio in the runtime alongside the Lottie. |
What this matrix doesn't cover
Specific renderer differences. Lottie playback differs across runtimes (web, iOS, Android, Flutter, Skottie). A feature marked ✅ here means the AE plugin exports it correctly; whether your target runtime plays it back exactly the same is a separate question.
Performance characteristics. A feature can be supported and still be expensive to render at runtime. Large repeaters, heavy nested comps, and many simultaneous masks can hurt frame rate even when they "work."
Future Lottie spec features. The Lottie format evolves; check the Lottie specification for the canonical source.
Related
Exporting compositions as Lottie — the export flow, with a Troubleshooting section that uses this matrix.
Preparing comps for Lottie — best practices that work around most rows above.