Resize an image
Shrink a photo to exact pixels, a percentage, or a ready-made preset for Instagram, YouTube, email or a profile photo, decoded, scaled and re-encoded entirely in your browser. Morphr never uploads the file, and it never upscales: it only ever makes an image smaller, never blurrier.
Drop an image, or click to browse
Resized on your device. Nothing is uploaded.
How it works
- Drop a photo: JPG, PNG, WebP, GIF, TIFF, HEIC, AVIF, or a camera RAW file (CR2, NEF, ARW, DNG…).
- Pick a size: a ready-made preset (Instagram, YouTube, profile photo…), an exact width × height, a percentage of the original, or a longest-edge cap.
- Download the resized file, decoded, scaled and re-encoded entirely on your device. Nothing is uploaded.
Why resize locally
A resize tool that runs on a server needs your original photo uploaded to it first, and photos are exactly the file type most likely to carry something private: GPS coordinates baked into EXIF, a timestamp, the make and model of the device that took it. Morphr's resizer runs the same WebAssembly engine as the rest of the site directly in this tab, so the file never leaves your device, and metadata removal is on by default rather than an opt-in you might miss.
Fit-within vs. crop: what "resize to 1080×1080" actually means
"Resize to a size" means one of two different things, and they look visibly different. The first is fit-within: give the image a box (say 1920×1080) and it scales down until it fits entirely inside without cropping anything. This is what Morphr's "Exact fit" mode does on its own, so a 4000×3000 photo asked to fit 1920×1080 comes out 1440×1080, not 1920×1080, because keeping the aspect ratio intact caps the smaller axis first. The second is crop then scale: trim the image to a specific aspect ratio, then scale the trimmed result to the exact target pixels. That second behavior is what "resize to 1080×1080" almost always means in practice, since an Instagram post genuinely is a square, not a rectangle padded to fit one, so Morphr's Instagram, YouTube and profile-photo presets pair a center-crop with the resize instead of leaving you with letterboxing. Every preset that crops says so next to it before you click ("crops to square"), and the crop can be removed afterward if you'd rather keep the whole frame.
Why downscaling is safe and upscaling isn't
Shrinking a photo throws away pixels it already has: a lossless, purely mechanical operation with one correct answer. Enlarging one is a different problem. A 400×300 image asked for 1600×1200 has four times as many pixels to fill and nowhere to get the extra detail from, so an "upscaler" is really an interpolation algorithm inventing plausible color values between the pixels that do exist. It can look fine at a glance and fall apart under any real inspection (soft edges, waxy skin texture, blurred text) because none of it is information recovered from the original. Morphr's resize options (the longest-edge cap, the exact-fit width/height, and the percentage mode) are all downscale-only for exactly this reason: ask for a size larger than the source and Morphr leaves the image at its original size instead of quietly fabricating pixels and calling the result a "resize," with an inline note explaining why whenever that happens.
Choosing dimensions for common destinations
If you already know where the image is going, the seven presets cover what people actually search for:
- Full HD (1920px): the longest edge capped at 1920px, a safe, detail-preserving upper bound for a photo shared on a modern screen or a blog post's hero image.
- Email / web (1024px): small enough to attach without hitting a mail provider's size limit or bloating an ordinary web page.
- Thumbnail (320px): a small preview or list-view thumbnail.
- Instagram post (1080×1080): square, cropped to 1:1 then scaled, matching Instagram's own feed-post spec.
- Instagram story (1080×1920): the 9:16 portrait ratio stories and Reels are shot in.
- YouTube thumbnail (1280×720): the 16:9 widescreen thumbnail size YouTube's upload guidelines recommend.
- Profile photo (400×400): a square avatar size that covers the vast majority of profile-picture upload requirements.
None of this is exclusive to the presets. If a destination isn't listed, Exact fit takes any width and height, and Percentage scales relative to whatever the source already is.
Resolution vs. file size
Pixel count and byte size are related levers, not the same one. Resizing changes the pixel count, and since most photo formats spend roughly the same number of bytes per pixel at a given quality, halving both dimensions of a photo (a quarter of the original pixel count) typically produces a file well under half the size, often closer to a quarter, before quality settings are even touched. That makes resizing the single biggest lever on file size available, bigger than almost any amount of quality-slider tweaking at the original resolution. If the actual goal is hitting a byte target (a 100 KB attachment limit, a form's upload cap) rather than a specific pixel size, Morphr's compressor targets a file size directly instead of making you guess a resolution and quality that happen to land under it.
Format choice after a resize
A resized photo doesn't have to keep its original format, and the right target depends on what's in the image. Ordinary photographs (continuous tones, gradients, no hard edges) compress best as JPEG or WebP; the quality slider only appears when the chosen output actually honors it, so there's never a dead control to second-guess. Screenshots, diagrams, logos, and anything with flat colors or crisp text compress far better as PNG, whose lossless compression skips the blocky artifacts JPEG leaves around sharp edges, and PNG is the only safe choice if the image needs transparency. For more on the tradeoffs, see the image formats guide; day to day, "Same as input" stays selected by default whenever keeping the source format is possible, so the question only comes up when you want it to. This tool only resizes. For a straight format swap with no resizing (or for the other 100+ formats Morphr reads), use the converter.