Sprite sheet splitter
Set the frame size. Check the cuts. Export individual PNGs.
Images stay on your device. Your original is unchanged.
Try a sprite sheet
See the frame boundaries before you export.
One sheet, individual frames
How to split a sprite sheet
A sprite sheet splitter extracts fixed-size rectangles from one image. Set the cell size and spacing, inspect the boundaries, then save each frame as a PNG with its original dimensions and transparency.
Open a sheet
Choose a local still image or try the original examples. For a transparent pixel-art sheet, start with PNG. Your source stays on your device.
Line up the cells
Enter the frame width and height, then the starting offsets and gaps. Every preview rectangle should contain one complete frame without a neighboring sprite.
Export ordered PNGs
Choose rows first or columns first. Generate the frames and download the ZIP with its dimensions and coordinate manifest, or save individual frames.
Try it. Compare the files.
Eight cells, including an empty one
This illustrated creature sheet is 1064 × 536 px. It contains four columns and two rows of 256 × 256 px cells, with an 8 px starting offset on each axis and 8 px gaps. The final 8 px at the right and bottom remain outside the frames.









To reproduce this set in the tool, use 256 × 256 px frames, offsets 8 / 8, gaps 8 / 8, rows first, and keep empty frames. The ZIP includes a manifest with source coordinates. It is a PicMason record, not an animation or a game engine atlas.
Pixels between the pictures matter
Frame size, starting offsets and gaps
Frame dimensions describe the rectangle you want to keep. Offsets move the first rectangle. Gaps move the next rectangle past the space between cells. No margins or gaps are added to the exported frame dimensions.
| Setting | Value | What it does |
|---|---|---|
| Frame width / height | 256 / 256 px | Every extracted PNG is 256 × 256 px. |
| Horizontal / vertical offset | 8 / 8 px | The first frame begins at source x=8, y=8. |
| Horizontal / vertical gap | 8 / 8 px | Frame starts are 264 px apart on each axis. |
| Grid found | 4 columns × 2 rows | Only complete 256 × 256 rectangles are included. |
| Unused right / bottom area | 8 / 8 px | These trailing strips are not extra frames. |
Read the source coordinates
In this example the first row starts at x=8, 272, 536 and 800, all at y=8. The second row uses the same x positions at y=272. Coordinates are measured from the top-left of the decoded image.
Keep only complete rectangles
For a 101 × 67 px source with 32 × 32 frames and zero offsets or gaps, the result is 3 columns × 2 rows: six frames, with 5 px unused on the right and 3 px at the bottom. Those strips are reported, not stretched into the last frame.

A sheet without gaps
The second original example is 96 × 64 px: six 32 × 32 tiles. Use zero offsets and zero gaps. The tiles touch in the source, and no pixels remain outside the six frames.
Download the terrain sheetSame rectangles, different sequence
Choose how your sprite frames are ordered
Reading order changes the sequence numbers, not the crop rectangles. Each filename also identifies its source row and column, so a missing transparent frame is easy to trace.
Rows first
Left to right, then down. In this order the empty creature cell is 07.
Columns first
Top to bottom, then right. The same empty source cell becomes 06.
Example name: sprite-character-sheet-frame-0008-r002-c004.pngSequence 8 · source row 2 · source column 4
Know what will be exported
Sprite sheet splitter FAQs
For fixed-size cells in a static image. Set the layout yourself and check the preview before exporting.
How do I split a sprite sheet into individual images?
Choose a local still image, enter the frame width and height in pixels, then set the starting offset and gaps. Check that the preview boxes follow the intended cells. Choose a reading order, generate the frames and download individual PNGs or the complete ZIP.
Can I extract 16 × 16 or 32 × 32 sprites?
Yes. Enter the actual width and height of each fixed cell. The frame can also be rectangular. PicMason extracts complete cells at their original pixel dimensions; it does not scale the sprite to another size or trim the transparent area around it.
What is the difference between an offset and a gap?
The horizontal and vertical offsets locate the top-left corner of the first frame, measured from the source image’s top-left corner. Horizontal and vertical gaps are the pixels between neighboring cells. Offsets, gaps and any area after the last complete cell are left out of the PNG frames.
Can the sprite sheet extractor detect frames automatically?
No. This tool uses the frame dimensions, offsets and gaps you supply. It does not find separate objects, infer animation poses or unpack rotated or irregularly placed sprites from a packed atlas. An atlas JSON file cannot be imported here.
What happens to an incomplete row or column?
Only full rectangles that fit inside the source are exported. A smaller strip at the right or bottom is not resized or made into an extra frame. The preview and export manifest report the unused area. Check the settings if those pixels were supposed to belong to a frame.
Does skipping empty frames remove faint sprites?
No. The option skips a cell only when every pixel has alpha zero. A frame containing even one partly visible pixel stays in the export. JPEGs have no transparent pixels, so a white or black JPEG cell is not treated as empty. Skipping a cell leaves a gap in the source sequence numbers.
Which order will the frame files use?
Rows first reads left to right, then moves down to the next row. Columns first reads top to bottom, then moves to the next column. Filenames include the sequence number and the one-based source row and column. The manifest records each file’s source coordinates and any skipped transparent cells.
Can this create a GIF or a game engine atlas?
No. The outputs are individual still PNG files and a PicMason manifest for checking coordinates and filenames. The manifest is not a Unity, Godot, Phaser or TexturePacker import format. Animation playback, timing, animated GIF export and game project files are not included.
Which inputs and limits are supported?
Choose a JPEG/MPO, PNG, WebP or HEIC/HEIF still image, up to 20 MB, 50 megapixels and 16,384 pixels on either side. A plan may contain at most 1,024 complete cells before any empty frames are skipped. For pixel art with transparent edges, a PNG source avoids JPEG compression artifacts. Animated inputs and video are not supported.
Are sprite sheets uploaded, and is the tool free?
The tool is free to use without an account. Your source image is processed in your browser and is not uploaded to PicMason. The original file stays unchanged. Exported PNGs do not preserve the source file’s EXIF, GPS, ICC, DPI or HDR metadata.
Technical references: Tiled’s image-based tilesets describe fixed-size cells with margins and spacing. Phaser’s frame configuration also defines frame dimensions, margin and spacing. These explain grid concepts; PicMason does not export either application’s project format.
Original examples and instructions by the PicMason team · Updated .