SPRITE WORKFLOW
Sprite Sheet Splitter
Slice a sprite sheet into individual PNG frames — columns × rows, fully in-browser.
LOCAL IMAGE TOOL
Split a sprite sheet
Sprite sheet guide
Sprite sheets are everywhere in game dev — one image holding every frame of a walk cycle or every tile in a level. When you need individual frames for a prototype, a tool, or a quick edit, this splitter slices the sheet into PNG frames right in your browser.
How it works
Tell the tool how many columns and rows your sheet is laid out in, and it cuts each cell out into its own PNG — numbered top-left to bottom-right, which matches how Unity's Sprite Editor and Godot's AnimatedSprite2D expect frames. The image never leaves your device.
Choosing the right grid
Most sheets are a clean grid: a 4×4 walk cycle, a 8×1 animation strip. If your sheet has uneven frames (different-sized sprites packed together), a grid splitter won't do — look for an atlas tool with per-frame bounds instead. This one is for the common case: uniform grids.
Tip: Export frames as PNG (not JPEG) to keep transparency. For pixel art, keep the original resolution — downscaling destroys the crisp pixel look.
Frequently asked questions
Does this upload my sprite sheet?
No. The file is read locally in your browser and processed with the canvas API. Nothing is sent anywhere.
What order are frames numbered?
Left to right, top to bottom — row 1 first, then row 2, matching most engines' sprite editors.
My frames have different sizes, can I split them?
This tool handles uniform grids. For packed atlases with varied sprite sizes, you need an atlas tool with per-sprite bounds (e.g. TexturePacker) — or re-export a clean grid.
Privacy note: sprite sheets are processed locally in your browser. Nothing is uploaded.