Pixel Animation Maker
Animate pixel art frame by frame right in your browser. Draw with a pencil, fill and eyedropper, ghost neighbouring frames with onion skinning, preview the loop live, then export a real animated GIF or a sprite sheet PNG. It's free and nothing you make is ever uploaded.
Hold and drag to paint. Keys: B pencil · E eraser · G fill · I pick · , / . prev/next frame · Ctrl+Z undo.
How to use the Pixel Animation Maker
- Pick a grid size (16, 32 or 48) and a color, then draw the first pose with the pencil, fill and eyedropper. A sample bouncing ball is loaded so the tool is alive on first visit.
- Hit + Frame for a fresh cel or ⧉ Duplicate to keep drawing from the current one. Reorder with ◀ ▶ and remove with 🗑 Delete.
- Turn on onion skinning to ghost the previous and next frames underneath — nudge the shape a few pixels each frame for smooth motion, and use the strength slider to taste.
- Set the speed (1–24 fps), press play, and watch the live preview loop your frames.
- Export an animated GIF that loops forever, a horizontal sprite sheet PNG, or just the current frame — all encoded on your device.
Tips for smooth pixel animation
Good pixel animation is mostly about spacing. Onion skinning is the single most useful habit: with the previous frame ghosted in red and the next in cyan you can line up a walk cycle or a bouncing ball by eye, keeping the motion arc even instead of jumpy. Work on a small loop first — three or four frames of a blink, a bob, or a flame flicker read clearly and are easy to keep tidy. Duplicate a frame before you change it so each cel is a small edit of the last, and keep your palette tight; a handful of colors keeps the sprite readable and, as a bonus, keeps the exported GIF small because the encoder builds one shared color table from exactly the colors you used. When the timing feels right in the live preview, the animated GIF export will match it frame for frame, with transparent pixels preserved so the loop drops straight onto any background. Everything runs client-side, so this frame by frame animator never uploads your art.
Frequently asked
How does the animated GIF export work?
Every frame is encoded into a GIF89a file directly in your browser with a hand-written LZW compressor. A shared color table is built from the colors you drew, the delay per frame is set from your FPS, empty pixels are stored as a transparent color index, and a NETSCAPE loop block makes it play forever. No server or library is involved.
What is onion skinning and why use it?
Onion skinning ghosts the neighbouring frames underneath the one you're editing so you can see where a shape was and where it's going. The previous frame shows as a red ghost and the next as a cyan ghost, with an opacity slider to control how strong they appear. It's the fastest way to keep motion smooth.
Can I export a sprite sheet as well as a GIF?
Yes. Alongside the animated GIF you can export every frame packed horizontally into a single transparent PNG sprite sheet, or just the current frame as its own PNG. Both are drawn nearest-neighbour so the pixels stay crisp.
Is my animation uploaded anywhere?
No. Drawing, playback, GIF encoding and PNG export all happen on your device. Nothing you make is ever sent to a server, so your work stays private.