Runs locally · nothing is uploaded

Sprite Sheet Cutter

To slice or split a sprite sheet into individual frame images, choose Into a grid, then use By number of pieces for a regular sheet with a known number of rows and columns, or By exact pixel size for a known cell width and height. Both cut from the top-left. Neither removes gutters, skips an outer margin, or detects irregular frames. Choose PNG to keep transparency and download the pieces as a ZIP; the image is processed in your browser.

  1. 1 Upload the sheet
  2. 2 Set rows × columns
  3. 3 Check the preview
  4. 4 Download the ZIP

Drop your images here

or · PNG, JPG/JPEG or WebP

How to split
Piece size
Quick presets

Rows × columns or fixed pixel size?

Use rows × columns throughout: 2 rows × 4 columns means two horizontal rows with four cells across each row. Before cutting, identify the full sheet size, the actual cell size, and whether there are gaps or an outer border.

By number of pieces

Choose this when a regular grid fills the whole image and you know its row and column counts. Enter those counts in Rows and Columns. The tool divides the full width across the columns and the full height across the rows; it does not locate sprite outlines.

By exact pixel size

Choose this when you know one cell's width and height and the grid starts at the image's top-left corner. Enter Piece width (px) and Piece height (px). Cuts occur at those fixed intervals. Rightmost or bottom pieces can be smaller if the sheet is not divisible by that size.

Check alignment first

Exact pixel size is not an alignment repair. A shifted grid, gutters, outer margins or tightly packed irregular rectangles need preparation elsewhere or a tool with those explicit controls. This splitter has no offset, gutter-removal, transparent-trimming or automatic frame-detection setting.

What happens to remainder pixels and edge pieces?

Count mode: each column starts with floor(image width ÷ columns) pixels; one extra pixel goes to each of the first remainder columns, from the left. Rows work the same way from the top. All pixels are retained. The difference is at most one pixel per axis; it is not added only to the last piece.

Pixel mode: full pieces keep the requested size. Any remainder becomes a smaller piece on the right or bottom, including a small bottom-right corner. It is not spread across the full pieces and is not padded up to the requested size.

In pixel mode, leave Drop the leftover edge pieces that are smaller than the size above unchecked to keep those smaller pieces. Check it to omit any piece that is too narrow or too short in a grid split. This discards source pixels; it does not redistribute them, remove blank cells, or detect whether a piece contains useful artwork. Count mode does not use this checkbox.

Measured with our own numbered 481 × 321 px transparent PNG, set to 2 rows × 4 columns or 120 × 160 px:

SettingActual outputSource coverage
Count: 2 rows × 4 columns8 pieces. Widths left to right: 121, 120, 120, 120 px. Heights top to bottom: 161, 160 px.All 481 × 321 pixels; cells can differ in size.
Pixel: 120 × 160; keep edges15 pieces: 3 rows × 5 columns. Eight 120 × 160 pieces, two 1 × 160, four 120 × 1, one 1 × 1.All pixels, with smaller right and bottom pieces.
Pixel: 120 × 160; drop edges8 pieces, each 120 × 160 px.Only the top-left 480 × 320 area. The final right column and bottom row of source pixels are omitted.

For equally sized frames, count mode needs the sheet width divisible by its column count and its height divisible by its row count. Pixel mode can retain exact full-cell sizes while producing smaller edge pieces; dropping them is a deliberate crop.

Worked example: eight numbered transparent sprites

We made a 480 × 320 px PNG with eight original numbered geometric sprites, 01–08, on a transparent background. Each cell is 120 × 160 px; there are no gutters or outer margins between the cell boundaries. Transparent space inside a cell belongs to that cell and is retained.

Our original transparent sprite test sheet: 01 to 04 across the first row, 05 to 08 across the second
Original test sheet, 480 × 320 px. Checkerboard shows transparency; it is not part of the PNG. Download the numbered test PNG to reproduce this example.
  1. Use browse files above to select the PNG. Confirm the filename and sheet dimensions in the queue.
  2. Select Into a grid and By number of pieces. Set Rows = 2 and Columns = 4, then choose PNG.
  3. Click Split images. Inspect the result previews: 01–04 across the top row, then 05–08 across the bottom. Each output must read 120×160; check the numbered artwork and transparent borders, not just the total count.
  4. Click Download all as ZIP on that image's result card. Unzip it and inspect all eight PNGs. For our file c004-regular-480x320.png, names run from c004-regular-480x320_r1c1.png through c004-regular-480x320_r2c4.png.
  5. Alternatively select By exact pixel size, enter width 120 and height 160, and split again. This divisible, edge-aligned example produces the same eight source regions in either sizing mode.

The ZIP is assembled row by row, left to right, starting at the top-left. Grid filenames use _r1c1, _r1c2, then the next row. Names use unpadded grid numbers, so a file manager's alphabetical sort can put c10 before c2; use row/column numbers or natural sorting. Single-row or single-column output uses _part01 style names instead. See the ZIP filename and export-order guide.

Gutters, outer margins and irregular sprite atlases

Our spaced-grid fixture has 2 rows × 3 columns of 100 × 80 px cells, 10 px gutters and a 12 px outer margin, making a 344 × 194 px sheet. Fixed 100 × 80 px cuts start at (0, 0), (100, 0), and so on, while the cell origins start at (12, 12), (122, 12), (232, 12). The exported regions therefore include border/gutter pixels and do not isolate those six cells. Keeping edges produces 12 pieces, not six clean frames. Dropping partial pieces cannot fix those misplaced cut lines.

If you are assembling a new uniform sheet from separate frames, the existing sprite sheet maker is a different tool. For a simple row or column cut, use the full image splitter; this does not add offset or gutter controls.

Transparency and common reasons for a wrong cut

What do “sprite sheet slicer,” “sprite cutter,” and “split sprite sheet” mean?

On this page, all three phrases describe the same task: cutting one sprite sheet into individual frame images. Use the grid-count or exact-pixel method above for a regular layout; neither method detects irregular frame boundaries or skips gutters and outer margins.

Will PNG keep transparent pixels?

Yes. Choose PNG to keep the alpha channel, including transparent padding within each cut region. Our regular-grid ZIP retained the source pixels and transparent borders without trimming or resizing. JPG cannot store transparency; this tool composites JPG output on white. A checkerboard preview is only a display aid, so inspect the downloaded PNG in an alpha-aware viewer.

Why are some frames one pixel wider or taller?

First check the pixel width and height of the exact file you uploaded. Then multiply the intended cell width by the number of columns and the intended cell height by the number of rows. For example, four 120 px columns and two 160 px rows make a 480 × 320 px sheet when there are no gaps or outer margins. If the uploaded file is 481 × 321 px, it is one pixel larger on each axis than that expected grid; the arithmetic shows the difference, not what caused it.

In count mode, a non-divisible sheet keeps all pixels by distributing remainder pixels to the first columns and rows. For the measured 481 × 321 px output sizes, see the remainder comparison above. Exact-pixel mode can leave smaller pieces at the right and bottom; dropping them discards their source pixels. Check the actual file and grid before changing settings, and do not assume another cell size repairs gutters, margins or an irregular layout.

Why did pixel mode create extra tiny pieces?

The sheet has remainder pixels at the right or bottom. Keep them if you need every source pixel. Drop them only if you intend to discard those strips; partial does not mean blank. Check the full-size pieces and the smaller edges before downloading.

Why are sprites shifted, clipped, or mixed with their neighbors?

Check for swapped Rows and Columns, a width/height mix-up, gutters, an outer border, or a packed atlas. This splitter begins at the top-left and cuts regular intervals; it has no offset, gap-removal or frame-detection controls. Fix the source layout elsewhere when needed.

Why does the preview or download show an earlier layout?

After changing the mode, dimensions or output format, click Split images again and inspect the new result card before downloading. A queue preview shows the input; it is not proof that each exported frame is aligned.

Is there a size limit?

Available browser memory limits practical sheet sizes. Start with a small representative sheet, close unnecessary image tabs and avoid an excessive number of pieces. See the browser memory and image-size guide and the guide to preserving image quality.

← Back to the full image splitter — for columns, rows and exact pixel sizes.