mergepictureMerge photos

Merge pictures into oneMany photos, one seamless picture

Drop in two photos or twenty. They line up edge to edge and come out as one picture you can download in seconds.

or drop them here · paste with Ctrl+V

No photos handy? Try

Free · No sign-up · Joined on your computer, not on ours.

Two separate lake photos on the left of the handle, joined into one seamless panorama on the right

Real results

Separate photos in, one picture out

Every picture here was made from the same lake photograph — joined, gridded, paged and stacked.

Three steps

From a pile of photos to one file

  1. Add your photos

    Tap Choose photos, drop them on the page, or paste a screenshot. Two is enough; a hundred is fine.

  2. Pick how they join

    Side by side, stacked, a grid or one long screenshot. Sizes are matched for you; tweak gaps and colour if you like.

  3. Download one file

    Save it as JPG, PNG or WebP. You see the final size before you save, so nothing comes out squashed.

All tools

Every way to merge pictures here

For the fiddly ones

Overlaps and screenshots, lined up for you

  • Overlap, nudge, feather

    Slide each piece back over the last, line it up to the pixel, and choose a hard cut or a soft one.

  • Proposals, not surprises

    Local matching suggests where pieces overlap and how sure it is; nothing is cut until you accept.

  • Honest limits

    Up to 100 pieces, 120 MB each; a canvas stops at about 32,767 px a side, and you are told before it matters.

Six captures, five overlaps

Every joint is measured before it is closed.

  • Seam 1matched 98%
  • Seam 2matched 94%
  • Seam 3two positions scored alike
  • Seam 4matched 96%
  • Seam 5matched 91%

1080 × 9,240 px · well inside the ceiling

Six scrolling captures of one page. The band each phone repeated at the joint is found, scored and folded away, so the stack reads as one tall picture instead of six — and the joint nobody could score is flagged rather than guessed.

Four arrangements, one question

Where does the seam fall, and does anything have to be measured to find it?

Three of these are the easy case: the pictures touch along a straight edge, nothing overlaps, and every pixel you brought is still in the file you save. The fourth is the case the detector exists for. Each panel is the arrangement itself, drawn to the same whole-pixel geometry the planner works in.

  • A row

    1 joint

    Two or more pictures shoulder to shoulder, heights settled by the sizing policy before anything is drawn. Nothing overlaps, so nothing is lost.

    Open /side-by-side
  • A column

    2 joints

    The same job turned ninety degrees: widths settled first, then the pictures stacked in the order the tray holds them. This is the one a portal upload usually wants.

    Open the joiner
  • A grid

    2 joints, crossing

    Rows and columns at once. The two joints cross in the middle, which is the only arrangement where the outer margin and the gutter between have to agree with each other.

    Open the joiner
  • One long screenshot

    2 joints, both measured

    The hard case, and the only one here where the pictures genuinely repeat each other. The band each capture shares with the next is scored, cut out, and flagged instead of guessed when two positions fit alike.

    Open /long-screenshot

Why join instead of overlap

There is a whole family of things people mean by putting two pictures together, and they are not the same job. Mixing two frames into each other so both show through at once is one of them. Placing a small element on top of a photograph, with its own edges, is another. This page does neither — those have pages of their own, blend two pictures, double exposure and photo on photo. Here the pictures keep their own space and touch along a straight edge: two photographs side by side, four in a square, twenty stacked into a column. Left alone, nothing covers anything, so nothing is lost and every original pixel is still in the file you save — and when two pictures genuinely share a strip, because they were shot or captured with an overlap, you can slide one back over the other by exactly that strip, nudge it into line, and choose a hard cut or a soft feather where they meet.

The one exception proves the rule. Scrolling captures of the same page do repeat each other along the join, and the whole point of the long-screenshot mode is to find those repeated rows and cut them out so the seam disappears — which is still a join, just one that has to do some measuring first. That case has a page of its own at /long-screenshot, where the seams are the first thing on screen rather than the fourth button in a row. The repeated band is proposed with a match score, and nothing is cut until you accept it.

Five steps, in any order

The numbered steps at the head of the inspector are a map, not a gate. Every step is clickable at any time and going back costs nothing, so you can settle the order, look at the result, and change your mind about the sizing three times without losing anything.

What you look at on screen is a smaller drawing of exactly the arrangement that gets saved — same order, same crops, same rounding, one scale factor apart. That is deliberate: nothing you approved is allowed to change on the way out.

What you can feed it

JPG, PNG, WebP, GIF, BMP and ICO open in every current browser. TIFF opens in Safari; elsewhere save it as PNG or JPEG first. HEIC — what an iPhone shoots unless it has been told otherwise — opens through a decoder that is fetched only when a HEIC actually turns up, so nobody else pays for it. Up to a hundred files, 120 MB each — and one more limit that is not ours: a canvas in this browser stops at about 32,767 pixels on a side and about 268 megapixels in total (8,192 and 16 on an iPhone), so a tall enough stack is refused whatever the file count says. The status line under the preview carries that verdict from the second picture onward.

A few things are quietly put right on the way in. Colour is whatever your browser hands back when it decodes a file onto a canvas, and every canvas here asks for sRGB — so a wide-gamut photograph is brought into the same colour space as an ordinary one before they meet, although its most saturated colours can still flatten a little at the seam, which is the most visible place it could appear. Sideways phone photographs are turned upright from the tag the camera wrote — one picture on its side in a row of six is impossible to miss. A CMYK scan converts approximately and says so. An animated GIF contributes its first frame. And a file that will not open is named individually while the rest of them join as normal.

None of it goes anywhere. There is no upload step in this build. A build check forbids network and storage calls in the code that handles pictures, and a release test watches the network while pictures are merged. The joining happens inside this tab, and the only file that moves is the one you save at the end.

Common snags

My two photographs are different heights. What happens to the shorter one?

Whatever you tell it to. The Fit step offers five answers: grow everything to the tallest, shrink everything to the shortest, match whichever picture is first in the chain, scale everything to a height you type, or scale nothing at all and let the ground colour — or a soft blur of the shorter picture — fill the gap beside it. There is no right answer — matching the tallest keeps detail and softens the small picture, matching the shortest keeps everything sharp and throws pixels away.

A repeated band still shows where two screenshots meet. Can I fix it by hand?

Yes, and it takes about five seconds. Each seam has its own slider and its own full-size view of the joint, so you drag until the repeated rows disappear and the text runs straight through. A seam you set by hand is never touched again by the detector.

Can I put a gap between the pictures instead of having them touch?

You can. The gap starts at zero because pictures touching is what this site is for, but the Fit step has a gutter in pixels for the space between them and a margin for the space around the outside. Whatever colour you chose for the ground is what shows through both.

I chose a see-through ground and the saved file came out white. Why?

Because it was saved as JPEG, and JPEG has no channel for see-through at all — every transparent pixel has to become some colour, and white is the one browsers pick. PNG and WebP both keep it. The step-four panel says so before you save rather than after.

How many pictures can go into one join?

A hundred, at up to 120 MB each. The real ceiling arrives sooner than that and it is your browser's rather than ours: a canvas stops at about 32,767 pixels on a side, and six phone screenshots stacked can pass 15,000 without trying. If a join goes past what can be drawn, the tool says so and stops instead of handing back something truncated.

The chain put IMG_10 before IMG_9. How do I get the real order?

It shouldn't — filename order here counts the numbers rather than the characters, so IMG_9 lands first. If the names carry no useful order at all, sort by the time each picture was taken instead, or drag the thumbnails: hold Alt and press left or right and the picture you are standing on moves with you.

Stitching works when the pictures are the same width and the content sat still. It won’t cope with a sticky header that changes as you scroll, a video mid-page, or captures taken at different zoom levels. If a seam looks wrong, drag it — you’ll beat the detector in about five seconds.

On this page the join is measured in pixels, not kilobytes: you see exactly how big the result is and roughly what the file will weigh. When a form states a kilobyte range — a photo and signature for an exam or bank application — use merge photo and signature, which searches for the size honestly and tells you when the range cannot be met.

Picking the file at the end

Three formats come out of the Save step and the choice is not a matter of taste. PNG stores every pixel exactly as it was drawn, which is why a joined pair of screenshots stays crisp in it and why the file is the heaviest of the three. JPEG throws information away on purpose, and it throws it away hardest at hard edges — so a seam between two photographs survives it happily, while a seam running through a line of text can pick up a faint shimmer along the join. WebP sits between them: much lighter than PNG, still able to hold a see-through ground, and occasionally refused by an older piece of software that will accept the other two without complaint. The status line under the stage updates as you switch, so the trade is visible before you commit to it rather than after.

Where to go from here

The four ways of joining are one control apart on this page, and two of them have a page of their own as well: a row of exactly two pictures, and the long screenshot rebuilt from scrolling captures. Columns and grids stay here, because a column is a row turned ninety degrees and a grid is rows stacked — a separate page for each would be the same tool wearing four hats. The rest of this list is the reading.

Choose photos