Social Media Image Resizer
Pick a platform and every size it asks for is rendered from your one source image at once: the post, the story, the cover, the profile picture. Each file is drawn from the original decoded pixels rather than from the file before it, so the tall frame is not a stretched copy of the square one. Save them individually or take the whole set as a zip.
Drop the image to resize
One source image, up to 50.0 MB. Every size is drawn and encoded in this tab; nothing is uploaded.
Nothing loaded yet. Drop an image above — every size is rendered inside this browser tab, so the file never leaves your device.
Design once, size everywhere
Resizing moves pixels. Moda lets the layout change with the frame instead.
Try Moda free →A set is not one resize repeated
The reason a campaign image needs a tool rather than a single export is that the sizes are different shapes, not different scales. A 1080x1080 square post, a 1080x1920 story and a 1640x856 page cover have nothing in common but their content: going from the square to the story means finding a taller crop, and from the square to the cover means finding a much wider one. Every file here is cut from the original decoded image independently, so no output is a resize of another output and nothing is resampled twice. That matters more than it sounds: chaining resizes compounds the softening, and it is why a story frame exported from a downsized post looks worse than the same frame taken from the source.
Fill and crop, or fit and pad
When the source shape does not match the target, something has to give. Fill and crop keeps the frame full and takes a centred crop, which is right for photographs and wrong for anything with text or a logo near an edge, since the edges are exactly what it removes. Fit and pad keeps the whole image and fills the leftover strips with a colour you choose, which is right for logos, screenshots and product shots on a plain background and looks like a mistake on a photo. The list of sizes tells you before you export how much of the picture a crop would discard, so the choice is informed rather than discovered afterwards. Stretching is not offered at all, because a distorted social image is never the intended outcome.
Start from the largest, most central source you have
This tool can only remove pixels or interpolate new ones. A size larger than your source in either direction is flagged as enlarging, because there is no detail to add and the result will look soft next to the ones that had room to spare. YouTube channel art at 2560x1440 is the usual culprit. The second thing worth planning for is composition: because every target crops toward the centre, an image with its subject centred and generous space around it survives the whole set, while one composed tightly for a square loses its subject in the wide cover and its context in the tall story.
JPG for photos, PNG for flat colour, WEBP when the platform takes it
Platforms re-compress everything you upload regardless of what you send, so the format choice here is about what survives that pass rather than about final file size. JPG at high quality is the right default for photographs. PNG is better for screenshots, charts, logos and anything with hard edges or large flat areas, where JPG leaves visible fringing around the edges that the platform's own re-encode then amplifies. WEBP is smaller than both at the same quality and is accepted by most upload forms now, but a handful still refuse it, which is why it is not the default here.
Frequently asked questions
How is this different from the image resizer?
They batch on opposite axes. The image resizer takes many files and gives each one the same target size, which is what you want for a folder of product photos. This page takes one file and gives it many target sizes, which is what you want when a single campaign image has to go out on five surfaces. If you need both, run a batch through the resizer first and bring the one that matters here.
Is the image uploaded?
No. Decoding, cropping, resizing, re-encoding and zipping all happen in this browser tab, against a bitmap held in the page. There is no upload and no server call anywhere in the process. Two pieces of code arrive on demand rather than up front — the zip writer, and a decoder for iPhone HEIC photos — and both travel toward you, not away.
Why is my story frame cutting off the top of the image?
Fill and crop takes the centre. Going from a landscape source to a 9:16 story means keeping a narrow vertical strip through the middle, and everything above and below the subject goes with it. The list shows the percentage each size discards for exactly this reason. If the composition cannot survive it, switch the whole set to fit and pad, or untick the story frame here and crop it deliberately in the image cropper.
Are these the current sizes?
They are the sizes each platform documents or renders at today, and they do move — platforms change aspect ratios and deprecate placements without much notice. Nothing here is harmed by being slightly out of date, because every platform downsizes what you upload: a file a little larger than the current spec still works, while one smaller than it gets upscaled. When in doubt, export the largest size in the set.
Can I do several source images at once?
Not here, because the page is built around showing you what each size costs this particular picture — the crop percentages beside the checkboxes are the whole point, and a queue would either hide them or ask you to read dozens of them at once. If you want the same target size applied across a folder of files, that is what the image resizer does.