Resize Image for Instagram — Free

Portrait 1080×1350 · Square 1080×1080 · Story 1080×1920 — one click, no upload

100% private — photos never leave your device

Instagram crops photos that don't match its aspect ratio limits. Use the correct size upfront and your post looks exactly how you intend it — no surprise crops in the feed. This resizer runs in your browser using the Canvas API. Drop your photo, click an Instagram preset, and download. No upload, no account, no fake download buttons. Works on mobile too.

instagram_resize.sh
$resize --input
📸
Drop a photo here or browse files
JPG · PNG · WebP · GIF · BMP
output
$Resize complete ✓
🔒 Privacy first: All resizing happens locally in your browser. Your photos are never uploaded anywhere — not even temporarily. Unlike most online tools, nothing leaves your device.

Your Files Never Leave Your Browser

100% Client-Side Processing

Conversions run locally in your browser using the Canvas API, with Web Workers used when supported. Your image data stays on your device and is never uploaded to any server.

No Account. No Tracking of File Contents.

We use Google Analytics and Google AdSense for aggregated traffic stats and contextual ads when consent allows it. Theme and language preferences stay in your browser. We never see, read, or store the images you convert.

Open About Our Limits

Browser-based conversion has trade-offs: large files (>50 MB) may hit memory limits; animated GIF output flattens to a single frame; EXIF metadata is stripped; ICC color profiles may differ across browsers.

> instagram_image_sizes_2026

Use CaseSize (px)RatioNotes
Feed — Portrait1080 × 13504:5Most vertical real estate — recommended for engagement
Feed — Square1080 × 10801:1Classic Instagram format, works everywhere
Feed — Landscape1080 × 5661.91:1Widest allowed ratio — shows less in feed
Story / Reel1080 × 19209:16Full-screen vertical — covers entire mobile screen
Profile Picture320 × 3201:1Displayed as circle — keep subject centered
Carousel (each slide)1080 × 13504:5All slides must be the same ratio

Instagram re-compresses images on upload. Always upload at max 1080px width and save at 80%+ quality to minimize double-compression loss.

> instagram_format_dimensions

Instagram uses a single width — 1080px — across almost every placement. What changes between placements is the height, and therefore the aspect ratio. This resizer ships three one-click Instagram presets, and the custom width/height fields cover every other size. Posting the same photo elsewhere too? The general image resizer carries a preset for every major network, and the dedicated YouTube thumbnail resizer locks the 1280×720 frame in one click.

Feed portrait — 1080×1350 (4:5)

Portrait is the tallest of Instagram's three classic feed ratios. At 4:5 it occupies more vertical space on screen than a square or landscape post, so more of the frame is visible before a viewer scrolls past. Click the Instagram → Portrait preset to set 1080×1350 instantly. It is also the safest ratio for carousel posts, because every slide in a carousel must share the same aspect ratio.

Feed square — 1080×1080 (1:1)

The classic Instagram format. A 1:1 square renders the same way in the feed, on the profile grid, and inside carousels, which makes it the most predictable choice when you are not sure where the image will appear. Click Instagram → Square to set 1080×1080.

Feed landscape — 1.91:1 (custom size)

Landscape is the widest ratio the feed accepts, about 1.91:1 (roughly 1080×566). There is no one-click landscape preset — type 1080 and 566 into the custom width and height fields to build it. Landscape shows the least vertical space of the three feed ratios, so keep it for images that are genuinely wide.

Stories & Reels — 1080×1920 (9:16)

Stories and Reels both use the full-screen vertical 9:16 frame. Click Instagram → Story/Reel to set 1080×1920. Reels lay the caption, buttons, and audio label over the lower portion of the screen, so keep faces and any text you want read toward the center rather than the bottom edge.

Profile picture — 1:1 (custom size)

Your avatar is cropped to a circle and shown small, so a centered square source works well. Enter matching width and height (for example 320×320) in the custom size fields and choose Fill so the subject stays centered.

> how_to_resize_for_instagram

  1. Drop your photo
    Drag a photo into the resizer above or click to browse. JPG, PNG, WebP, GIF, and BMP are all supported. The original dimensions are shown instantly.
  2. Click an Instagram preset
    Under the Instagram group, click Portrait (1080×1350), Square (1080×1080), or Story/Reel (1080×1920). The width and height fields fill automatically.
  3. Fill or Fit — pick a mode
    Fill is recommended for Instagram — it crops any excess from the center so your photo fills the frame edge to edge. Fit scales the whole photo inside the frame without cropping, adding white bars if the ratios differ.
  4. Download and upload
    Click Resize & Preview. Choose JPG at 82–90% quality for photos, or PNG for graphics with text. Download and upload directly to Instagram — no extra editing needed.

> post_a_full_photo_without_cropping

To post a full photo on Instagram without cropping it, resize it in Fit mode instead of Fill. Fit scales your entire image to sit inside the Instagram frame and fills the leftover space with letterbox bars, so no edge is cut off — Fill, by contrast, crops whatever spills past the frame. Export as JPG so the bars come out white — the right choice for Instagram, which converts every upload to JPEG and flattens transparency. (PNG and WebP exports get transparent bars instead, but Instagram will not keep them transparent.)

  1. Load your photo and pick a preset
    Drop the photo into the resizer, then click the Instagram preset for where you're posting — Portrait 1080×1350 for the feed, or Story/Reel 1080×1920 for a full-screen story.
  2. Switch Mode to Fit
    Change the Mode toggle from Fill to Fit. Fit keeps your whole photo visible inside the frame instead of cropping the edges to fill it.
  3. Keep JPG as the output format
    Export as JPG so the letterbox bars come out white. Instagram converts uploads to JPEG and strips transparency, so transparent PNG or WebP bars would not survive the upload. Click Resize & Preview to see exactly how the padded image looks.
  4. Download and upload
    Download the resized file and upload it to Instagram. The full photo stays visible, with the bars making up the difference in aspect ratio.

> pro_tips_for_instagram_images

  • Portrait wins in feed: The 4:5 (1080×1350) format occupies the most vertical space in the Instagram feed — up to 20% more than a square post. More space = more visibility = higher engagement.
  • Use Fill mode: For posts where you want the full frame used, Fill crops from the center. If your subject is off-center, resize manually and use the custom dimensions to fine-tune.
  • Stories vs. Reels: Both use 1080×1920. Reels have a bottom-heavy UI overlay — keep important text and faces in the center 1080×1420px safe zone.
  • JPG vs. PNG for Instagram: Use JPG for photos. Instagram re-encodes everything to JPG/HEVC anyway, so PNG offers no benefit for photos and creates larger source files. Use PNG only for graphics with flat colors or text.
  • Avoid upscaling: Instagram shows a blurry image if the source is too small. Always start with an image that is at least as large as your target size.

> why_instagram_compresses_your_upload

Instagram re-encodes almost every photo you upload so it can serve a smaller file to millions of feeds quickly. You cannot turn that step off, but you can control how much quality survives it by handing Instagram a clean, correctly-sized file in the first place.

Export at 1080px width, not larger

Every Instagram preset in this tool uses a 1080px width, because that is the width Instagram displays. Uploading a 4000px-wide original does not give you a crisper post — Instagram simply downscales and recompresses it on its own servers, where you have no say over the quality setting. Resize to a 1080px preset yourself first, using this tool's step-down algorithm (it halves the image in stages before the final draw for a cleaner downscale), and you decide how the shrink happens.

Save JPG at 80–90% quality

For photos, JPG at 80–90% is the practical range. This resizer defaults to 82% quality, which keeps detail while giving Instagram a reasonably small file to start from. Dropping below about 60% bakes in visible artifacts that Instagram's own compression then makes worse. Use PNG only for graphics with flat colors, sharp edges, or text — for photographs PNG produces a much larger file with no visible benefit.

Fill vs Fit — decide the crop yourself

Fill scales your image to cover the whole frame and crops the excess from the center, so the output matches the Instagram frame exactly with no bars — use it for feed posts so Instagram never re-crops your image. Fit scales the entire image inside the frame without cropping and adds letterbox bars: white bars for JPG output, or transparent bars if you export PNG or WebP. Choose Fit when keeping every part of the image matters more than filling the frame edge to edge.

> frequently_asked_questions

What is the correct image size for Instagram in 2026?
For feed posts: Portrait 1080×1350px (4:5 — recommended for maximum feed space), Square 1080×1080px (1:1). For Stories and Reels: 1080×1920px (9:16). Instagram compresses images on upload, so always upload at full 1080px width for best quality.
Why does Instagram crop my photo automatically?
Instagram enforces aspect ratio limits: feed photos historically ranged from 4:5 (portrait) to 1.91:1 (landscape), with taller 3:4 support rolling out since 2025. If your image is taller than the allowed ratio — for example a 9:16 portrait — Instagram crops it in the feed preview. Resize to exactly 1080×1350px before uploading to control exactly what gets shown.
Should I use Fill or Fit mode for Instagram?
Use Fill (Cover) for feed posts — it crops excess from the center so the image fills the entire frame with no white bars. Use Fit only if you need the full image visible without cropping. Most creators use Fill for a clean, edge-to-edge look. Fill is the Instagram-native behavior.
Will resizing reduce photo quality?
Downscaling with this tool produces excellent results — it uses a step-down algorithm that halves the image in increments before the final resize, similar to Lanczos filtering. Save as JPG at 80–90% quality. Instagram recompresses images on its end, so starting with a high-quality file gives the best final output.
Is my photo uploaded to a server when I use this tool?
No — and this is not one of those sketchy tools that secretly uploads your photos. The resizer runs entirely in your browser using the Canvas API. Your photo never leaves your device, no server is involved, no account needed. You can disconnect from the internet after the page loads and it still works.
How do I post a full photo on Instagram without cropping it?
Resize your photo in Fit mode instead of Fill. Fit scales the entire image inside the Instagram frame and adds letterbox bars to fill the leftover space, so no edge is cropped. Export as JPG — the bars come out white, and Instagram converts uploads to JPEG and flattens transparency anyway. Pick an Instagram preset, switch Mode to Fit, then download.
What size should Instagram carousel images be?
Every image in an Instagram carousel must share the same aspect ratio, so pick one size for all slides. Portrait 1080×1350px (4:5) is the safest choice — it gives each slide the most feed space. Set the Portrait preset, resize every photo the same way, and upload them together.