How to Stitch Screenshots into One Long Image
Stitch 5-20 sequential screenshots into one scrollable image for bug reports, chat exports, and docs. Covers phone limits, PNG vs JPG, and file sizes.
Last week I filed a bug report with 14 separate screenshot attachments. The developer scrolled through them, lost track of the sequence, and asked me to re-send them in order. I stitched all 14 into one vertical image, re-attached it, and the bug was fixed within an hour. One scrollable image communicates a multi-step flow better than a pile of numbered files ever will.
Vertical stitching is the default for a reason
Screenshots capture content you scroll through top-to-bottom. Chat threads in Slack, error logs in a terminal, long pages in a browser - all of them flow vertically. Stitching them in the same direction preserves the natural reading order without forcing the viewer to scroll sideways.
Horizontal stitching has exactly one good use case: before-and-after comparisons of the same UI element. Two states of a modal, two versions of a dashboard card, the old checkout vs the new checkout. For everything else, go vertical. A vertically stitched image of a 12-message Slack thread reads like the actual conversation. A horizontally stitched version requires sideways scrolling on every device smaller than a 27-inch monitor.
The overlap problem
When you take sequential screenshots manually, each capture includes some content from the previous one. On a phone, the bottom 3-5 lines of screenshot #1 are also visible at the top of screenshot #2. If you stitch them without trimming, those lines appear twice, creating a visible stutter in the output.
Good stitching tools detect overlapping regions by comparing pixel data in the bottom strip of one image against the top strip of the next. The Screenshot Stitcher on this site runs this overlap detection automatically. Tailor on iOS does the same thing natively. The detection works best when you scroll cleanly - no partial scrolls that cut a line of text in half at different heights in each capture.
Aim for 15-20% overlap between captures. On a phone screen showing 40 lines of text, that means keeping the bottom 6-8 lines visible when you scroll for the next capture. Too little overlap (under 5%) and the tool cannot find a match. Too much overlap (over 40%) wastes your time capturing redundant content.
Phone screenshot limits and workarounds
iOS scrolling screenshots
iOS has a built-in scrolling screenshot feature, but it only works in Safari and a few Apple apps. Take a screenshot with the side button + volume up, tap the preview thumbnail, then tap "Full Page" at the top. The result saves as a PDF, not a PNG. For screenshots of iMessage, Slack, WhatsApp, or any third-party app, this feature does not exist. You are stuck with manual captures.
Tailor (free, iOS) is the standard workaround. Capture 3-15 screenshots of any app, open Tailor, and it detects and stitches them automatically. It handles overlap trimming well but sometimes struggles with screenshots that contain repeating UI patterns like identical row heights in a settings menu.
Android long screenshots
Android 12+ has native scrolling capture built into the screenshot flow. Take a screenshot, tap "Capture more" in the preview, then drag the crop handles to extend the capture downward. This works in most apps, not just the browser. The limitation is that it produces a single extended capture rather than stitching separate images - you cannot go back and capture more after dismissing the preview.
LongShot (free, Android) handles the multi-capture stitching case. It can also auto-scroll and capture for you, which removes the manual overlap problem entirely. The auto-scroll speed is configurable - slower speeds produce cleaner captures with fewer missed frames.
Use cases that benefit most from stitching
Bug reports in Jira and Linear
A stitched screenshot showing the full error flow - from the action that triggered the bug through every error state to the final broken screen - saves a developer 5-10 minutes of context reconstruction. Attach one image instead of 6. Label the steps directly on the image if possible.
Customer support evidence
When a customer sends 8 screenshots of a billing issue over email, stitch them into one image before escalating to the billing team. The single image fits in one Zendesk comment and shows the full timeline without clicking through attachments. Support teams at companies processing over 500 tickets/day report that stitched screenshots reduce average resolution time by cutting back-and-forth clarification messages.
Chat conversation exports
Exporting a Slack or Discord conversation as text loses formatting, reactions, thread structure, and embedded images. Screenshots preserve everything visually. A stitched vertical image of a 30-message decision thread becomes a single artifact you can drop into a Notion doc or Confluence page. It captures exactly what happened, including edits and emoji reactions that text exports miss.
Tutorial and documentation screenshots
Step-by-step guides for internal tools often need screenshots of long forms or multi-panel dashboards. Stitching 3-4 captures of a Salesforce admin page into one image shows the full configuration without forcing the reader to mentally connect separate cropped screenshots. The JPG Joiner handles this if your captures are already saved as JPG files.
PNG vs JPG for screenshot output
Always use PNG for text-heavy screenshots. JPG compression creates colored halos around character edges. On a single screenshot, the artifacts are subtle. On a stitched image with 500+ lines of text, the cumulative visual noise makes extended reading uncomfortable. Every character develops a faint yellow-green shimmer against dark backgrounds and a pinkish fringe against light ones.
The Merge PNG tool outputs lossless PNG and is the right choice for stitching screenshots of code, chat conversations, terminal output, and any UI with readable text. JPG output is acceptable only for screenshots dominated by photographs or illustrations with minimal text.
If you need to reduce file size after stitching, use the Resize Image tool to scale the width down rather than switching to JPG. Reducing a 1170px-wide stitch to 900px cuts file size by 40% without introducing compression artifacts. The text remains sharp because the downscaling is a clean mathematical operation, not a lossy approximation.
File size reality check
| Scenario | Dimensions | PNG size | JPG (92%) |
|---|---|---|---|
| 5 phone screenshots (iPhone 15) | 1170 x 12660 | 8-12 MB | 1.5-3 MB |
| 10 phone screenshots (iPhone 15) | 1170 x 25320 | 15-25 MB | 3-6 MB |
| 5 desktop screenshots (1920x1080) | 1920 x 5400 | 4-8 MB | 1-2 MB |
| 15 phone screenshots (chat export) | 1170 x 37980 | 22-35 MB | 5-9 MB |
These sizes assume text-heavy content like chat apps and code editors, where PNG compresses efficiently due to large regions of uniform color. Screenshots of photo-heavy feeds (Instagram, Pinterest) push PNG sizes 30-50% higher because the photographic content defeats PNG's row-based prediction filter.
Jira's attachment limit is 10 MB by default (configurable by admins up to 100 MB). Linear allows up to 100 MB. Gmail caps at 25 MB. If your stitched PNG exceeds the limit, scale the width down before switching to JPG. Going from 1170px to 800px width cuts file size by roughly 50% while keeping text legible on screen.
Browser-based stitching vs native apps
Native apps like Tailor and LongShot run on your phone and stitch captures immediately after you take them. The workflow is fast: capture, switch to app, stitch, share. The limitation is that they only work with screenshots already on your phone's camera roll.
Browser-based tools like the Screenshot Stitcher work on any device - phone, tablet, laptop, desktop. Upload screenshots from any source (camera roll, Slack downloads, email attachments, cloud storage), arrange them in order, and export as a single image. The processing happens in your browser, so the images never leave your device.
The tradeoff: native apps auto-detect screenshot overlap and trim duplicates with no manual effort. Browser-based tools give you more control over ordering and spacing but require you to arrange the images yourself. For quick phone-to-phone stitching, use Tailor or LongShot. For stitching screenshots from mixed sources (3 phone captures + 2 desktop captures + 1 screenshot someone emailed you), use a browser-based tool.
Capture tips that prevent stitching problems
- Disable floating elements before capturing. Sticky headers and floating action buttons appear in every screenshot at the same position, creating duplicate UI chrome in the stitched result. On mobile web, request desktop site to disable most sticky navs. In native apps, there is usually no workaround - you will need to crop them manually.
- Use consistent scroll increments. Scroll exactly one screen height minus 15-20% overlap for each capture. Irregular scrolling produces inconsistent overlap zones that confuse auto-detection.
- Capture in one session. If a notification banner, toast message, or status bar change appears between captures, it breaks the visual continuity. Turn on Do Not Disturb before starting a capture sequence.
- Name files in capture order. Most phones timestamp screenshot filenames automatically (Screenshot_2026-08-10_14-23-01.png). If you rename them, keep a numeric prefix so sorting by name matches the visual sequence.
Frequently asked questions
How large is a stitched image of 10 phone screenshots?
At iPhone 15 resolution (1170x2532), 10 screenshots stitched vertically produce an image roughly 1170x25320 pixels. As PNG, that file is 15-25 MB depending on content complexity. Screenshots of text-heavy apps like Slack or iMessage compress well and land closer to 15 MB. Screenshots of media-rich feeds with photos and gradients push toward 25 MB. As JPG at 92% quality, the same stitch drops to 3-6 MB but introduces compression artifacts around text. For anything with readable text, the PNG size penalty is worth it.
Why do my stitched screenshots have a visible seam between captures?
Seams appear when consecutive screenshots do not overlap, or when they overlap but the stitching tool fails to detect the shared region. The fix is to capture with 15-20% overlap between frames. On a phone, scroll so the bottom 3-4 lines of the previous screenshot remain visible at the top of the next one. Tools like Tailor on iOS and the Screenshot Stitcher on this site detect overlapping regions and crop the duplicate content automatically. If you see a hard line, one of your captures probably started exactly where the previous one ended with zero shared pixels.
Can I stitch screenshots from different devices or screen sizes?
Yes, but the result will have width jumps wherever the resolution changes. A 1170px-wide iPhone screenshot next to a 1440px-wide desktop screenshot creates a 270px gap on one side. Most stitching tools left-align the narrower image and fill the gap with white or transparent space. If you need a clean result, crop all screenshots to the same width before stitching. The Resize Image tool on this site can batch-resize to a consistent width without distorting the content.
Should I stitch screenshots horizontally or vertically?
Vertically, almost always. Screenshots represent content you scroll through top-to-bottom. Stitching them vertically preserves that reading direction. Horizontal stitching works for before-and-after comparisons of the same UI element (two states of a button, two versions of a modal), but for anything involving continuous content like chat threads, error logs, or multi-step workflows, vertical produces a result that reads naturally without rotating your head or scrolling sideways.
Stitch your screenshots into one image
Upload sequential captures, arrange them top to bottom, and export as a single PNG. No upload to any server - runs entirely in your browser.