FrameLoop troubleshooting
The status bar at the bottom of the plugin reports every step and every failure. Start there.
The frames play in the wrong order
Check Frame order. By frame name needs names that sort: "Step 1" to "Step 12" works, but "Intro", "Middle", "End" sort alphabetically. If the frames sit in a row or grid on the canvas, choose By canvas position. If you arranged them in the layers panel, choose By layer order.
A frame ignores the duration in its name
The duration must be the last thing in the name: a number followed by "ms", such as "Intro 1200ms". "Intro 1200ms copy" or "Intro 1.2s" use the global duration. Values are kept between 20 and 60000 ms.
The animation is longer than the durations add up to
Transitions add time between frames, and when the animation loops there is also a transition from the last frame back to the first. Set the transition to 0 ms or choose Cut to get exactly the frame durations.
A frame has bars around it
That frame is a different size from the first frame, which sets the animation size. FrameLoop centers it without stretching. Make all frames the same size, or put the frame with the size you want first.
The GIF shows banding or blotchy colors
A GIF has at most 256 colors per frame. Turn on Dithering for gradients and photos, or switch the palette to Per frame when frames use very different colors. For full color, export an APNG or WebM (Pro).
The file is large
Each transition step is a full frame: a 300 ms transition adds 8 frames. Shorten or remove transitions, turn off dithering for flat designs (dithering noise compresses poorly), use one palette, or export at 0.5x. WebM is usually the smallest format for long or colorful animations.
Transparent edges look hard or jagged in the GIF
GIF transparency is on or off per pixel, so soft shadows and anti-aliased edges cannot fade into what is behind them. Turn off Keep transparency and pick a background color that matches where the GIF will sit, or export an APNG, which keeps full alpha.
The WebM has a background instead of transparency
WebM export does not keep transparency. Transparent areas get the Background color. Use APNG when you need transparency.
WebM export takes as long as the animation
The video is recorded in real time from the composed frames, so a 10 second animation takes 10 seconds, times the loop count when it is 2 or more. Keep the plugin open until the status bar says the WebM is ready.
"This Figma version cannot record video" or "WebM recording is not supported here"
The browser engine running the plugin has no video recorder. Update the Figma desktop app or try Figma in Chrome, or export a GIF or APNG instead.
"The recording came out empty"
The video recorder produced no data, which can happen when the plugin window is hidden or the computer is busy during recording. Try again with the plugin in view, or export a GIF.
The APNG does not animate
The file is fine, but the app showing it does not support animated PNG and shows the first frame. Browsers play APNG; some image viewers, design tools and chat apps do not.
Smart move did not move a layer
Smart move pairs direct children of the frames, by exact name, and only visible ones. Layers inside a group or another frame are part of the background and crossfade with it. Rename the layer the same in both frames and keep it directly inside the frame. If the status bar said "Smart move skipped" for a frame, that frame could not be exported layer by layer; the transition then uses the normal crossfade.
"The selected frames are gone"
The frames were deleted or moved to another page after you selected them. Select the frames again and press Preview.
Encoding is slow
Large frames at 2x make big canvases, and every transition step is encoded as a full frame. The status bar warns about large canvases. Export at 1x, shorten transitions, or select fewer frames.
"... needs Pro"
The free tier exports GIFs of up to 30 frames at 0.5x or 1x with cut and crossfade. WebM, APNG, 2x, slide transitions, smart move and more than 30 frames need Pro.