Twitter Character Counter
Use Twitter Character Counter to hit every platform limit and size — fast and free.
Resize any image to a 1080×1920 Instagram Story or Reel — vertical 9:16, cover-cropped to fill the screen, saved as a PNG in your browser.
Your browser is preparing the tool. It runs 100% locally.
The Instagram Story Resizer scales any photo to fill a 1080×1920 vertical frame — the 9:16 size of Stories and Reels — then centre-crops the overflow and saves a PNG. It uses cover-fit, so a non-vertical image fills the tall frame and its sides are trimmed rather than letterboxed. It runs entirely in your browser and shares one engine with the square, Facebook Cover and LinkedIn Banner resizers — only the target size changes.
It converts any image into a full-screen 1080×1920 vertical for an Instagram Story or Reel. The picture is scaled until it covers the 9:16 frame, centred, and the parts beyond the edges are cropped.
9:16 is the full phone-screen ratio. A square or landscape source has to be enlarged to fill the height, so a lot of its width gets trimmed — that is normal for fitting wide content into a vertical story.
Drop or pick a file; it loads into a 1080×1920 canvas. The scale is the larger of the two side ratios so the image covers the whole vertical frame, it is drawn centred, and exported as a PNG.
It is all client-side JavaScript — no upload, and identical behaviour on phone and desktop.
scale = max(TargetW ÷ ImageW, TargetH ÷ ImageH)
NewW = ImageW × scale, NewH = ImageH × scale
The scaled image is centred on the TargetW × TargetH canvas; whatever spills past the edges is croppedA 1080×1080 square photo → enlarged to 1920×1920 to fill the 9:16 height, then 420px is cropped from each side, leaving the centre 1080×1920.Because the scale is the larger of the two ratios, the picture always fills the whole frame and the excess is trimmed — it never letterboxes. When your source is smaller than the target the scale is above 1, so the image is enlarged and looks softer.
Your photo is read from disk, redrawn in the page's memory and saved as a PNG entirely on your device. Nothing is uploaded and no copy is kept on a server.
Because the canvas re-encodes the picture, the saved PNG carries no EXIF or GPS metadata from the original — a small privacy bonus. Close the tab and both the original and the result leave memory.
| Target size | 1080×1920 (9:16 vertical) |
|---|---|
| Fit mode | Cover — fill and centre-crop |
| Engine | HTML5 Canvas (browser-native) |
| Output | PNG (.png), lossless |
| Upscaling | Yes — small images are enlarged |
| Metadata | Stripped (EXIF/GPS removed) |
| Platform use | Instagram Story / Reel (also TikTok, YouTube Shorts) |
| Upload | Never — runs in your browser |
Story interface elements sit on top of your image: the profile name and close button across the top and the caption, link and action icons across the bottom. Keep important content within the central safe zone — roughly the middle 1080×1170 — so it is not hidden.
A square or landscape source is enlarged to fill the height, so most of its width is cropped. If keeping the whole scene matters, design at 9:16 from the start rather than resizing a wide photo.
It centre-crops only; a subject near an edge can be cut. Reframe first if needed.
It enlarges sources under 1080px wide, which softens them. Start from a 1080-wide image for a sharp story.
Fill the whole phone screen with a 1080×1920 vertical.
Turn a square or landscape post into a full-screen story crop.
The same 9:16 frame suits YouTube Shorts and TikTok.
Get a centred 9:16 crop in two clicks.
For a square feed post use the Instagram Image Resizer (1080×1080). To pick your own crop instead of a centred one, use the Image Cropper. To resize without any cropping, use the Image Resizer.
Documented against this tool's own code: it enlarges or shrinks your image to cover a 1080×1920 canvas and centre-crops the overflow — so the page is honest that a wide source loses its sides, and points you to the Story safe zone for text placement.
Use Twitter Character Counter to hit every platform limit and size — fast and free.
Use Instagram Image Resizer to hit every platform limit and size — fast and free.
Use Emoji Picker to hit every platform limit and size — fast and free.
Social Media Hashtag Generator online — quick, accurate help for your social content workflow.
Fancy Text Generator to craft on-spec, scroll-stopping posts in seconds.
Instagram Caption Counter online — quick, accurate help for your social content workflow.
It is free, private and runs entirely in your browser — no sign-up, no uploads, no limits.