Split an image into tiles or strips

Cut one image into a grid of equal tiles — the 3×3 layout a social grid post needs — or slice a long screenshot into strips you can read or print. Rows, columns, overlap and output format are all adjustable, and the whole thing runs on your own device.

Drop an image here or click to choose a file  ·  a square or long image works best
 

Which split do you actually need?

Splitting sounds like one operation but it serves three different jobs, and the settings that suit one are wrong for the others.

What you are doingSettingsWhy
Social grid post — the one image that appears as nine when you scroll past Grid, 3 × 3, crop to square on, overlap 0 Each tile is posted in order as its own image. The platform forces square tiles, so a non-square source would be cropped by the platform instead — in a place you did not choose.
Long screenshot or receipt — read or print in pieces Strips, fixed thickness, overlap 20–60 px Overlap matters here: it stops a line of text or a table row being cut in half at the seam.
Large image for a size-capped upload Grid 2 × 2 or 3 × 3, crop off Splitting into four roughly halves each side, so each tile is about a quarter of the pixels. Overlap 0 keeps them reassemblable.

How the cut lines are calculated

Pixel counts rarely divide evenly, which is where most splitters go wrong. A 1000 px image cut into three is not 333 px three times — that leaves the last pixel column unaccounted for. The rounding is done on the boundaries, not the tile widths:

boundary[i] = round(i × total / parts), with the first boundary pinned to 0 and the last pinned to the image edge.

For 1000 px in three parts that gives boundaries 0, 333, 667, 1000 — tiles of 333, 334 and 333 px. Every pixel belongs to exactly one tile, nothing is dropped from the edge, and the tiles can be stuck back together without a seam. The tool prints the exact numbers in the blue plan box above, so you can check before generating anything.

Why the square crop snaps down a little

Cutting a 2000 px square into 3 × 3 gives 667, 666 and 667 px — the middle row and column would be a pixel short, so the tiles would not be equal and the middle one would not even be square. A grid post needs uniform tiles, so the crop is first reduced to the largest size that divides evenly by both the column and row counts: 2000 becomes 1998, and every tile is exactly 666 × 666. You give up 2 px of the original to get a grid that lines up.

This only applies in grid mode with crop-to-square on. When you split an image without cropping, exact division is often impossible and the last row and column are a pixel shorter — the plan box tells you which of the two you are getting.

What overlap does

With overlap set to o, each tile is grown by o pixels on every interior side, clamped at the image edges. So a strip plan with no overlap produces strips of 300, 300, 300 px; with an overlap of 30 px the interiors become 360 px tall and contain 30 px of their neighbours' content on each side. Only turn this on when a human is going to read the pieces — for a social grid or for reassembling the image later, overlap is harmful.

Frequently asked

Is my image uploaded anywhere?

No. The split is done with the browser's canvas API and the file never leaves your device. You can disconnect from the network after the page has loaded and everything still works.

What order are the tiles numbered in?

Left to right, top to bottom — the same order you would post them in for a grid. So for a 3×3 split, tile-01 is the top-left and tile-09 is the bottom-right.

Why is my grid not square after splitting?

Because crop-to-square was turned off. A 3×3 split of a 3000×2000 image gives tiles of 1000×667, which the social platform will then crop to square on its own terms — usually by cutting the left and right edges. Turning the option on centre-crops to a square first, and snaps that square down to a size that divides evenly so every tile comes out identical.

Are the tiles always exactly the same size?

In grid mode with crop-to-square on, yes. Otherwise no: an image whose dimensions do not divide evenly produces a last row and column that are a pixel shorter, because the alternative is dropping a pixel column entirely. The blue plan box states which case applies to your image before you generate anything.

Can I put the tiles back together later?

Yes, as long as overlap is 0 and you keep the output at the same resolution — the tiles tile the image exactly. This is why the tool never resizes during a split; the tile size is reported so you can confirm the numbers add up. Note that JPEG is lossy, so reassembling JPEG tiles is not bit-identical to the original even though the geometry is exact.

What is the maximum grid size?

20×20. The column and row counts are also clamped to the image's own pixel dimensions, so asking for 20 columns of a 12-pixel-wide image gives you 12 columns rather than a set of empty tiles.

Related