Two screenshots, one support ticket

The bug report needed a before and an after. Two screenshots of the same settings screen, taken a week apart, and the only way to show them together was to attach two separate files that the help desk would open in two separate windows at two separate zoom levels. Everyone reading the ticket would toggle back and forth like a very boring slideshow.

So you go looking for a way to glue them into one image, and the search results are a swamp. Photo collage apps with sticker packs and sign-up walls. Desktop editors that take forty seconds to boot for a two-paste job. Ad-farm sites that promise 'side by side photo maker online free' and deliver a uploader, a queue spinner, and a watermark on the way out. The actual task is two images, a gap, and a download. That is all it ever was.

This combiner is that task, nothing more. Drop in two images or twenty, drag them into the order you want, pick horizontal, vertical, or grid layout, set the gap and background color, download. The whole thing runs locally in your browser — your photos never make a single network request after the page loads, which is exactly what you want when the images are receipts, medical documents, or client work.

Merging images, start to finish

  1. Add your images

    Drag several files in at once, paste screenshots one after another, or pick them from your device. Thumbnails appear in a strip, and a counter confirms you grabbed everything — the missing-receipt problem is real.

  2. Drag to reorder

    The strip is the order of operations. Drag the third image to the front if that is where it belongs; the layout updates the moment you drop it. Order matters more than people expect in comparison images.

  3. Pick the layout

    Horizontal for side-by-side, vertical for stacked, grid for contact-sheet arrangements with a column count. The preview shows the real geometry — real sizes, real gaps — not a rough sketch.

  4. Set gap, padding, and background

    A gap in pixels between images, optional padding around the outside, and a background color as a hex value. #F3F4F6 is a good starting gray for screenshots; white for print; transparent if the output lands on a styled page.

  5. Choose the export format and download

    PNG for screenshots, text, and anything with transparency; JPG for photos where file size matters; WebP for both at once. The merged file downloads with one click — no queue, no email link, no watermark.

How the layout engine fits everything together

The merge happens on a canvas — the browser's native 2D drawing surface. The engine's first job is arithmetic: decide the final canvas size from the layout mode, the image dimensions, and the gaps. Horizontal mode sums the widths, adds gap times the number of images minus one, and takes the maximum height. Vertical mode does the same with axes swapped. Grid mode computes cell sizes from your column count, then stacks rows of cells with gaps between and around them.

The second job is normalization. Images that arrive in mixed sizes cannot just be pasted at native size — a 4000-pixel photo next to a 1170-pixel screenshot would make a lopsided mess. So every image is scaled to a shared extent: equal heights in horizontal mode, equal widths in vertical mode, equal cells in grid mode. Scaling preserves each image's aspect ratio. Images are never stretched, only resized, and the interpolation quality flag is set high so downscales come out clean rather than crunchy.

Then comes the paste loop. Each image is drawn at its computed position with the standard drawImage call — the same primitive every canvas-based tool uses — onto the background fill you chose. Positions come straight from the layout math, which is why the preview you see and the file you download agree exactly. No surprises between preview and export is a feature, not an accident.

One subtlety deserves a paragraph of its own: EXIF orientation. Phone cameras attach a rotation flag to photos instead of physically rotating pixels, and a combiner that ignores the flag produces sideways pastes. The tool relies on the browser applying the flag automatically — the default behavior in every current browser — so a portrait photo stays portrait. If a file from an ancient camera or a weird export pipeline still arrives rotated, one manual rotate-and-save anywhere strips the stale flag, and the file behaves forever after.

A side-by-side, worked through

Back to the support ticket. Two iPhone screenshots, both 1170×2532. The goal: one image, side by side, with enough separation that the help desk reads them as two screens and not one wide one.

Two screenshots, horizontal, 24-pixel gap

Input

before.png (1170×2532) + after.png (1170×2532), horizontal layout, gap 24, background #F3F4F6

Output

comparison.png — 2364×2532. Width: 1170 + 24 + 1170 = 2364. Height: 2532. File lands around 1.1 MB as PNG, or roughly 300 KB as JPG quality 85, which is plenty for a ticket attachment.

Now the variant where the two screenshots are not the same size — because somebody retook one at a different zoom. Before is 1170×2532; after is 1125×2436. Equal-height scaling sets the shared height to 2532, so the second image scales up slightly, to 1163 wide — a 1.1 percent stretch of area, invisible in practice. Total width becomes 2357. The engine made a decision and the preview showed it before you exported; that is the whole point of the preview.

LayoutCanvas mathResult for two 1170×2532 images, gap 24
Horizontalw = a + gap + b, h = max(a, b)2364 × 2532
Verticalh = a + gap + b, w = max(a, b)1170 × 5088
Grid 1×2 (one row)same as horizontal2364 × 2532
Grid 2×1 (one column)same as vertical1170 × 5088
The same pair, four ways — grid modes degenerate cleanly into rows and columns

For a four-image contact sheet — a real estate listing's room set, say — grid mode with two columns and a 16-pixel gap over four 800×600 photos gives a 1616×1216 canvas: 800 + 16 + 800 wide, 600 + 16 + 600 tall. Padding of 16 more pixels on every side makes it 1648×1248 with an even frame. The arithmetic is honestly this easy, which is why the tool refuses to make it mysterious.

The trouble spots, in the open

Merging is simple, but the inputs are wild. These are the cases that generate support emails, and how to think about each one.

  • Wildly mismatched sizes. A 4000-pixel DSLR photo above a 500-pixel logo will scale the logo up to match the width — into a soft, blurry blob. Pre-resize the big image down toward the small one's scale with the Image Resizer instead; never upscale the small side if you can help it.
  • One image sideways. EXIF rotation, almost always. Fix the source file once and the problem is gone for every future merge.
  • Dark or transparent edges. Transparent PNG regions show the background color through, which looks like a tinted border on dark images. Choose a background close to the images' own edge tones, or add padding deliberately so edges read as a frame.
  • Very tall outputs. Twenty receipts stacked vertically can exceed some image viewers' comfort zone and a few platforms' upload limits — 15,000-pixel-tall images make preview panes unhappy. Split into two stacks of ten and send two files.
  • Order regret. The strip exists so you can fix order before export. After export, the only fix is recombining — so drag first, download second.
  • Color shifts between images. Two photos of the same room shot minutes apart with different white balance will sit side by side looking like different rooms. No combiner fixes that; a color pass on the sources does.

Canvas budgets: the size math that decides your merge

A merged image is a rectangle of pixels, and every pixel costs four bytes of memory while the canvas is alive — one byte each for red, green, blue, and alpha. That is the budget every layout decision spends from, and it is worth doing the multiplication before a twenty-image stack rather than after:

Merged canvasPixelsRaw RGBA memory
2364 × 2532 (two phone screenshots, gap 24)6.0 megapixels≈ 24 MB
1170 × 5088 (same pair, vertical)6.0 megapixels≈ 24 MB
1648 × 1248 (four-photo grid, padding 16)2.1 megapixels≈ 8 MB
576 × 15472 (half a receipt batch)8.9 megapixels≈ 36 MB
4096 × 4096 (the ceiling some phones impose)16.8 megapixels≈ 67 MB
Width × height × 4 bytes. The decoded originals you loaded also stay in memory, so a merge can hold twice its output cost.

Browsers cap the canvas itself, and the caps differ by platform in a way that matters for tall jobs. Safari on iPhone and iPad limits a canvas to 16,777,216 pixels of area — 4096 × 4096 in square terms, which a fourteen-receipt month of average-height receipts already exceeds. Desktop Chrome permits far more, up to 16,384 pixels on a side, so the same stack that renders on a laptop fails on the phone it was made for. The defense is to know your target: a twenty-screenshot column at 1170 wide runs about 51,000 pixels tall — 59.8 megapixels, 239 MB of RAM — and belongs in two files of ten, not one heroic strip.

Print destinations get their own arithmetic, because printers want dots. A full-width 6-inch print at 300 DPI needs a canvas 1,800 pixels across; an 8-inch one needs 2,400. Merge at the resolution the destination actually uses, and remember that thermal receipts are born at 203 DPI — a 576-pixel-wide receipt prints at its native size only when sent to a printer at 203 DPI, and shrinks to about two inches wide if something reinterprets it at 300.

Side by side, in the wild

Who merges images all day? More people than the search results suggest:

  • Support and QA teams — before/after screenshots that make bug reports legible in one glance
  • Bookkeepers and admins — receipts batched into monthly bundles, one image per expense claim
  • Real estate and rental listings — room sets arranged into single shareable sheets
  • Comparison content creators — product A versus product B in one frame for posts and reviews
  • Students and researchers — figure panels for reports and papers without fighting a full layout tool
  • Small shops — size charts and fabric options combined for marketplace listings that allow only one image per variant

The pattern behind all of these: several images, one destination that accepts exactly one image. Whenever a form, a listing, or an email thread will only take a single attachment, the combiner is the bridge. It is the antidote to 'attach the files one by one' — and to the collage-app bloat that stands between you and a five-second merge.

A month-end receipt batch, worked start to finish

The bookkeeper's version of this tool is the expense-month archive: every receipt from March, one file per claim, or one impossible zip of fourteen tiny images. Thermal receipts scan at a standard width — 576 pixels, which is what 72-millimeter paper produces at a thermal printer's native 203 DPI — and heights wander between 800 and 3,500 pixels depending on how much the cashier printed.

Fourteen March receipts, averaged at 576 × 2200, gap 12

Input

14 thermal receipts, each 576 px wide, average height 2,200 px · Vertical layout · Gap 12 · Background white

Output

One stack: 576 × 30,956 = 17.8 megapixels — over the 16.8 MP canvas ceiling on iPhone and iPad, comfortable on desktop.
Two stacks of seven: 576 × 15,472 = 8.9 megapixels each — under every cap, roughly 36 MB of canvas memory apiece, two PNG files in the low single-digit megabytes.

The arithmetic says split before the tool does. Fourteen receipts at the average height produce a 17.8-megapixel canvas — a number that clears desktop Chrome and fails the iPhone the bookkeeper is standing in line with. Two stacks of seven land at 8.9 megapixels each, under every limit in the wild, and as a bonus produce two files that upload faster and open in preview panes without scrolling a half-minute to find receipt number eleven.

Format choice repeats the screenshot rule with more force: thermal receipts are black text on white with maybe one color band, which is PNG's home turf — the run-length-friendly content compresses to a fraction of the raw size and every digit stays laser-crisp for the tax folder. JPG would blur the total line on the longest receipt, and the total line is the only line anyone audits.

Combiner versus collage app versus splitter

The categories blur in search results, so here is the honest breakdown of what each tool family is for:

Tool typeStrengthsWeaknesses
This combinerFast, exact geometry, gaps and backgrounds, batch of any size, privateNo decorations, filters, stickers, or text overlays
Collage appsTemplates, frames, backgrounds, social sizingAccounts, watermarks, exports limited, photos uploaded
Desktop editorsTotal control, layers, masksBoot time and learning curve far beyond the task
Image SplitterThe reverse operation — one image into manyWrong direction entirely for merging
Pick by job, not by marketing page

The trade this tool makes is deliberate: no filters, no sticker packs, no sign-up funnel — in exchange for exact numbers. You know the gap in pixels, the canvas size in pixels, and the background in hex. When the merged image needs to be a specific size — 1200×630 for a social share card, for instance — that precision is the difference between one export and five attempts.

And when the job eventually runs backward — one long receipt strip that needs to become individual receipts again — the Image Splitter cuts it back apart along clean lines. The two tools are a matched pair, and power users end up bookmarking both. Creators preparing multi-tile posts should also look at the Instagram Grid Splitter, which is the combiner's mirror image for social grids.

Nothing uploaded, nothing kept

The combiner has no server to trust, because it has no server at all. Images are decoded in the browser, arranged on a canvas that lives in the page's memory, and encoded to your chosen format right there. The download is generated from that local canvas. At no point does a single pixel travel the network.

For the receipts-and-documents crowd this is not a nice-to-have. A batch of expense receipts contains account numbers and addresses; a medical image contains the most private data most people own; client photography contains work under embargo. Handing any of that to a 'free online collage maker' means reading a privacy policy closely enough to know their retention terms — and hoping the policy is followed. The local route removes the question. It also keeps working when the office wifi does not.

Questions about combining images

How do I put two pictures side by side?

Load both images into the combiner, choose horizontal layout, and set the gap — the space between them. The tool scales the images to a shared height, places them left to right in the order shown, and exports one merged image. Two 1170×2532 phone screenshots with a 24-pixel gap produce a single 2364×2532 image, ready for a support ticket or a comparison post.

Can I combine more than two images?

Yes — stack as many as you want. Horizontal mode lines them all up in a row; vertical mode stacks them in a column; grid mode wraps them into rows after a column count you choose. Twenty receipts into one tall vertical strip is a routine job here, and the only real limit is your browser's memory holding the originals.

What happens when my images are different sizes?

The layout engine normalizes them along one axis. In horizontal mode every image is scaled to the height of the first image (or the tallest, depending on your setting), so the row stays level; widths follow each image's own aspect ratio, and nothing gets stretched. Vertical mode does the same along the width. Grid mode gives every cell the same dimensions and fits each image inside with its aspect ratio intact.

Why did my combined image come out sideways?

The classic culprit is EXIF rotation data. Phone cameras store portrait orientation as a rotation flag rather than physically rotating the pixels, and any tool that ignores the flag pastes the raw landscape buffer instead. Modern browsers apply the flag automatically, and this combiner relies on that behavior — but if an old file still misbehaves, rotating it once in the editor of your choice and re-exporting strips the stale metadata and fixes it permanently.

Does combining images reduce their quality?

Only in the ways you control. Pixel data is copied as-is onto a larger canvas — merging itself is lossless. Quality decisions come from two places: the scaling applied to normalize sizes (scaling up never adds detail) and the export format you pick. PNG output preserves the merged canvas exactly; JPG output compresses it once, which is fine for photos and mildly risky for screenshots full of small text.

Can I control the background and spacing between images?

Yes. The gap setting sets the spacing between images — and around the outer edge if you enable padding — in pixels, and the background can be any solid color you enter as a hex value, or transparent in PNG output. A light gray like #F3F4F6 is the quiet default for comparison images; white suits print; transparent works when the combined file goes onto a colored page.

Are my photos uploaded to a server when I combine them?

No. Decoding, layout, and export all happen in your browser on an in-memory canvas. There is no upload step, no storage bucket, and no copy of your images anywhere but the download you make. That makes it safe for client photos, medical documents, and anything else you would rather not hand to a third-party service.

What is the largest combined image I can make?

The practical limits are the browser's canvas caps, not the tool. Safari on iPhone and iPad allows 16,777,216 pixels of canvas area — about 4096 × 4096 — while desktop Chrome allows up to 16,384 pixels on a side. A very tall stack of receipts or screenshots can exceed the mobile cap while working on a laptop, so split tall jobs in half when the output needs to survive a phone.

Why is my merged PNG file so large?

PNG is lossless, so merging photographs produces a file sized like the sum of its parts. A photo-heavy canvas of ten megapixels routinely lands between 15 and 25 MB as PNG, while the same canvas exports at 2–4 MB as JPG quality 85 or smaller still as WebP. Screenshots, receipts, and other flat graphics are the opposite — PNG is small and sharp for them, and JPG is the format that costs you.

Can I combine images into a PDF instead?

This tool exports images — PNG, JPG, or WebP — because image merging is a canvas operation. When the destination is a document, the two-step route is combine here, then feed the result to a PDF tool; the PDF Merge on this site assembles the combined images into a single document, and everything stays in the browser on both steps.

Neighbors worth knowing

Three tools share a workflow with this one:

  • Image Splitter — the reverse operation: one image into a grid or strips of numbered tiles
  • Instagram Grid Splitter — social preset splitting for profile grids and carousels
  • Watermark Image Adder — the natural next step after merging, when the combined image needs protection before it goes public

A workflow we see often: combine the before and after, watermark the result, attach. Three local tools, zero uploads, one minute. The Watermark Image Adder covers the middle step if that is where your job is headed.

Sources and further reading

Sources and further reading

We cite primary sources (standards bodies, government agencies, official documentation) wherever they exist so you can verify every number on this page yourself.