Static sprites are dead sprites
You've got a character. Maybe you drew it pixel by pixel in Aseprite. Maybe you generated it with Sprite AI and tweaked it in the pixel editor. Either way, it just... sits there. No breathing, no movement, no life.
Animation fixes that.
Learning how to animate pixel art is the single biggest upgrade you can give your game's feel. A character with even a basic 2-frame idle loop feels infinitely more alive than a perfectly rendered static sprite. And here's the thing most tutorials won't tell you — you don't need to be good at drawing to animate well. Animation is more about understanding movement patterns than raw artistic skill. If you can shift a few pixels per frame, you can animate.
This guide walks through every common animation type from the ground up. We'll start with the absolute easiest (idle loops) and build toward more complex sequences. No theory dumps. Just practical steps you can follow right now.
What you need before starting
Don't open your animation tool yet. You need three things first.
A finished base sprite
Your character (or object) needs to be done. Not "mostly done." Done. Animating a half-finished sprite means you'll redesign mid-animation and lose work. If you don't have a base sprite yet, the pixel art fundamentals guide covers everything, or you can generate one and refine it.
A plan for which animations to build
Not every game needs every animation. Figure out what you actually need before burning hours on a jump animation for a top-down RPG.
| Animation | Typical frames | Priority | When you need it |
|---|---|---|---|
| Idle | 2-4 | Essential | Always — it plays when nothing else does |
| Walk | 4-6 | Essential | Any game with movement |
| Run | 6-8 | Medium | Only if walk AND run are separate actions |
| Attack | 3-6 | High | Any game with combat |
| Jump | 3-5 | High | Platformers and action games |
| Death | 3-5 | Medium | Games where characters can die on screen |
| Hit/hurt | 2-3 | Medium | Combat games — shows damage feedback |
Your tools
Aseprite ($20) is the gold standard. Onion skinning, timeline, frame management, export to sprite sheet — it's built for this exact workflow. Worth every penny if you're serious.
Piskel (free, browser-based) works fine for simple animations. It's limited, but for 2-4 frame loops you won't notice. Good starting point.
Sprite AI + manual editing is the hybrid approach. Generate base poses, then edit individual frames in the pixel editor to create the in-between frames. More on this later.
LibreSprite (free, open source) is a fork of an older Aseprite version. Clunky but functional.
Your first animation: the idle loop
Start here. Always.
Idle is the easiest animation to create and it's the one players see most. Your character stands in idle during menus, dialogue, inventory screens, waiting for input. If you only animate one thing, make it this.
The 2-frame idle
Two frames. That's it. Here's the process:
Frame 1: Your base sprite exactly as it is. Don't change anything.
Frame 2: Copy the base sprite. Now make tiny modifications:
- Shift the head or body down by 1 pixel (simulates breathing)
- If the character has hair or a cape, shift those elements 1 pixel in the opposite direction
- Blink the eyes (fill them with the skin color for one frame)
- Slightly adjust arm position if they're at the sides
That's the whole technique. One pixel of vertical movement creates a breathing effect that reads as "alive" at game speed. Set both frames to 400-500ms duration and loop.
Making it smoother with 4 frames
Want something less snappy? Use four frames:
- Base position
- Shifted down 1px (exhale)
- Base position again
- Shifted up 1px (inhale) — optional, some people skip this
The timing matters more than the frame count. Most idle loops in actual shipped games (think Shovel Knight, Celeste's NPCs, early Final Fantasy) use 2-4 frames with long hold times. Players don't consciously notice the idle animation. They notice its absence.
Walk cycle basics
This is where most beginners hit a wall. Walk cycles look deceptively simple in finished games, but getting them right requires understanding a specific pattern.
The 4-frame walk cycle
Every walk cycle, from the NES to now, breaks down into the same four poses:
- Contact (right) — Right foot forward, left foot back, arms opposite to legs
- Passing (right) — Legs cross in the middle, body slightly higher (the "up" moment)
- Contact (left) — Mirror of frame 1, left foot forward
- Passing (left) — Mirror of frame 2
That's the entire walk cycle. Four frames, looped.
The "pogo stick" mistake
Beginners almost always make characters bounce straight up and down like they're on a pogo stick. Real walking has a subtle bob — the body rises during the passing pose (when legs cross) and drops slightly during contact poses.
How much bob? At 16x16, one pixel is enough. At 32x32, one to two pixels. More than that and your character looks like they're bouncing on the moon.
Building it step by step
Start from your idle sprite:
Frame 1 (contact right): Move the right leg forward 2-3 pixels. Move the left leg back 2-3 pixels. Swing arms opposite to legs (right arm back, left arm forward). Body drops 1 pixel.
Frame 2 (passing right): Both legs center under the body, nearly together. Body rises 1 pixel above the contact position. Arms at sides.
Frame 3 (contact left): Mirror of frame 1. Left leg forward, right leg back.
Frame 4 (passing left): Same as frame 2 (or mirror if your character is asymmetric).
Set each frame to around 100-150ms for a natural walking pace. Test it immediately. Don't draw all four frames and then check — preview after every frame so you catch issues early.
Run cycle
A run cycle isn't just a faster walk. The poses are different.
The key differences: the body leans forward (2-3 pixels at 32x32 scale), the stride is longer, and there's an airborne frame where neither foot touches the ground. Walk cycles always have one foot on the ground. Run cycles don't.
6-frame run
- Contact (right foot lands, body leaning forward)
- Push-off (right foot pushes, body rises)
- Airborne (both feet off ground, compact pose)
- Contact (left foot lands)
- Push-off (left foot pushes)
- Airborne again
Frame timing: 80-100ms each. Faster than walking.
When to skip the run cycle entirely
Here's an unpopular opinion: lots of games don't need separate walk AND run animations. If your character always moves at one speed, just make that speed's animation and call it done. Stardew Valley's characters walk everywhere and nobody complains. Don't build animations you won't use.
Attack animation
Attack animations are where things get fun. They follow a three-act structure, just like a story.
Wind-up, strike, recovery
Wind-up (1-2 frames): The character pulls back. Sword goes behind the head, fist cocks back, staff raises. This telegraphs the attack to the player — without wind-up, attacks feel like they come from nowhere.
Strike (1-2 frames): The weapon swings through. This is where the damage happens. Here's the crucial technique: hold the impact frame longer. Set the frame where the weapon is fully extended to 150-200ms while other frames are 80ms. That extra pause creates a satisfying sense of impact. Hollow Knight does this masterfully — the nail hangs in the air for just a beat.
Recovery (1-2 frames): The character returns to idle or ready stance. This creates "recovery time" which is important for game feel and balance.
Smear frames
For fast attacks, try a smear frame. Instead of drawing the weapon in a specific position, draw a blurred arc showing the path of motion. It's one frame where the weapon becomes a streak of color. At game speed it reads as blinding speed. At 32x32 and below, even a 2-pixel-wide color trail works.
Look at how the old Castlevania games handle whip attacks. That's smear frames in action, and they used like three pixels to sell it.
Jump animation
Jumps need five phases, but you can absolutely cheat and use fewer frames.
The full sequence
- Anticipation crouch — Character squishes down (1-2 pixels), knees bend. This is the "about to jump" signal.
- Launch — Body stretches vertically, arms go up. The sprite is actually taller than normal for this frame.
- Apex — Top of the jump. Relaxed pose, maybe slightly curled.
- Fall — Body stretches downward, legs extend to prepare for landing.
- Land — Squish back down briefly (like the crouch), then return to idle.
The 3-frame cheat
Most indie platformers? Three frames. Crouch, airborne pose, land. That's it. Celeste's Madeline barely animates during jumps — the game communicates jumping through speed, particles, and screen shake more than sprite animation. Don't over-animate what the game systems already communicate.
At 16x16 resolution, a 3-frame jump is genuinely all you have room for. The pixels are too big to show subtle differences between launch and apex.
Tips that save hours
These aren't optional. Ignore them and you'll waste time redoing work.
Use onion skinning
Onion skinning shows a ghosted overlay of the previous (and next) frame while you edit the current one. It's the single most important animation feature in any tool. In Aseprite it's on by default. In Piskel, toggle it in the preview panel.
Without onion skinning, you're guessing where pixels were in the last frame. With it, you can see exactly what changed. The difference in workflow speed is ridiculous.
Copy-paste-modify beats drawing from scratch
Never draw frame 2 from nothing. Copy frame 1, then move the parts that change. Most pixels in an animation frame don't move at all — the torso, the head shape, the core body mass stays put. Only the limbs and small details change between frames. Redrawing the entire character per frame is a trap that wastes hours.
Test at game speed constantly
Your animation might look great at 2 frames per second in the editor timeline. It'll look completely different at 10fps in your game. Preview at the target speed after every single frame you add. Not after finishing. After each frame.
In Aseprite, hit Enter to play the animation. In Piskel, the preview panel runs continuously. If you're editing exported frames, drop them into your game engine and test there.
Less is more (seriously)
Beginners always add too many frames. A 12-frame walk cycle at 32x32 is overkill for most games. Four frames works. Six is luxurious. Twelve is Triple-A production quality and you probably don't need it for your jam game.
Start with the minimum. Add frames only when the animation looks choppy at game speed. You'll be surprised how few frames you actually need.
Using AI to speed up the process
Here's where things get interesting. The traditional pixel art animation workflow is: draw frame 1, copy, modify, repeat. It works, but it's slow, especially if you're not confident with anatomy and poses.
The hybrid approach: use Sprite AI to generate different poses of your character, then clean them up and connect them into an animation sequence. You won't get a perfect walk cycle out of an AI generator — the frames won't be consistent enough pixel-for-pixel. But you can get base poses that are 70-80% there, then manually adjust the remaining pixels for consistency.
The workflow looks like this:
- Generate your character's base idle pose
- Generate the same character in a walking pose, running pose, attack pose
- Import each into your animation tool (or the pixel editor)
- Align them to the same canvas size and position
- Edit pixels so the character reads as the same entity across frames
- Add in-between frames where transitions feel too abrupt
It's not magic. You still need to understand the animation principles above. But it replaces the hardest part — drawing distinct poses from scratch — with editing and refinement, which is significantly easier for most people.
For packing your finished frames into a game-ready format, the sprite sheet generator guide covers the export pipeline.
Common mistakes and how to fix them
Floaty movement
Your character moves but it feels like they're underwater. The fix: add anticipation frames. Before any movement, the character should briefly move in the opposite direction. Crouch before jumping. Pull back before attacking. Lean back before walking forward. These tiny counter-movements ground the animation and make it feel weighty.
Robotic feel
Every frame plays for the same duration, creating a mechanical rhythm. Fix this by varying your frame timing. Hold important poses longer (contact frames in a walk, impact frames in attacks). Speed through transitions. This is called "easing" and it's the difference between animation that feels alive and animation that feels like a metronome.
Too many frames
You animated a 16-frame walk cycle and it took six hours. Cut it in half. Seriously. Play the animation, identify which frames are doing the least work (usually the in-betweens), and remove them. If the animation still reads correctly, those frames were unnecessary. Most professional pixel art animations in shipped indie games use fewer frames than you'd expect.
Inconsistent volume
The character seems to grow and shrink between frames. This happens when you redraw parts instead of moving them. Your character's total pixel mass should stay roughly constant across frames. If the torso is 8 pixels wide in frame 1, it should be 8 pixels wide in frame 4. Use onion skinning to check.
Not testing in context
An animation that looks perfect in Aseprite's preview can look wrong in your actual game because of movement speed, camera zoom, and surrounding art. Always test in the real context. Export early, test often.
Where to go from here
You've got the fundamentals. The best way to improve is to animate something today — not tomorrow, today. Pick your character, build a 2-frame idle, and go from there. It won't be perfect. That's fine. The first one never is.
If you want to understand the underlying sprite craft better, the pixel art fundamentals guide is worth reading. For beginners just getting started with static sprites, easy pixel art for beginners covers the basics without overwhelming you.
And if you want to generate base sprites quickly and spend your time on animation instead of drawing from scratch, Sprite AI handles the generation so you can focus on bringing things to life.
Animation is patience plus patterns. You know the patterns now. Go make something move.
Related posts
2D pixel art for games: complete style guide
A practical style guide for 2D pixel art in games. Covers pixel art styles from 8-bit to modern HD, resolution choices, color theory, and keeping your assets consistent.
Anime pixel art — the JRPG tradition that never left
How anime pixel art evolved from SNES JRPGs to modern indie games. Techniques for eyes, hair, poses, and palettes at small scales.
How to make a pixel art game — the practical roadmap
A step-by-step plan for making your first pixel art game. Engine choice, art pipeline, scope control, and the tools that save the most time.