The Complete Image Size Cheat Sheet for Every Platform (2026)
Every platform wants a slightly different size, and getting it wrong crops your face off or...
Read guideInstagram stores a square and draws a circle over it. Frame against that circle here, export a PNG at the size Instagram actually keeps, and nothing leaves your browser.
JPG, PNG or WEBP, any shape
We put the same 600 by 600 portrait, a 42.9 KB JPG, through this tool at every size offered above and weighed the PNG that came out. Default zoom, no ring.
Going from 320 to 640 triples the file, from 148.6 KB to 453.6 KB, for a size Instagram does not store. Unless your source is genuinely large, 320 is the honest answer.
Your upload is a square. Every one of these is a circle cut out of it.
| Placement | What it is | Shape |
|---|---|---|
| Profile page | Largest view of your avatar | Circle |
| Feed and comments | Small, next to every post | Circle |
| Stories tray | Ringed when you have an active story | Circle inside a gradient ring |
The stories ring sits outside your avatar rather than on it, so it does not cover your photo. A ring you bake into the file yourself does.
Instagram stores the square you give it and generates every smaller version from that one file. The size you upload is therefore a master copy, not the thing anyone looks at, and the sensible target is the size that downscales cleanly rather than the biggest number available.
Device pixel ratio is why the upload is bigger than the display. A phone or modern laptop packs two or three physical pixels into every CSS pixel, so an avatar drawn at 40 pixels on screen needs 80 or 120 real ones to look crisp. Platforms also generate their own thumbnail set, and a server downscaling a generous file beats a browser stretching a small one.
The trap is going too far the other way. Exporting above your source resolution does not create detail, it interpolates, and you pay for it in file size. Check what your original actually is before reaching for the largest option here.
A circle drawn inside a square covers pi divided by four of its area, which is 78.5 percent. The missing 21.5 percent comes entirely from the four corners, and a corner pixel sits about 1.41 times further from the center than the nearest point on the circle. Anything out there is not close to surviving the crop.
That is why framing against a square and hoping goes wrong so often. A photo composed for a square is usually framed too wide for a circle, which is how avatars end up as a small head floating in the middle of a lot of background. Keep what matters inside roughly the central 80 percent of the circle and it will still read when Instagram draws it small.
There is no face detection. You drag and zoom, which takes a few seconds and never crops the wrong person out of a group shot. To trim the original to a rectangle first, use the image crop tool.
At 100 percent the photo exactly covers the circle. Zoom out and you get transparent wedges at the rim, because the file genuinely has nothing in those pixels.
Exporting a 300 pixel photo at the largest size gives you a big file that still looks like a 300 pixel photo. Enlarge on purpose with the image upscaler first if you need to.
Upload 320 by 320. That is the size Instagram is widely documented as storing, and it is what this tool defaults to. Instagram then draws it far smaller, around 110 pixels on a profile and smaller still beside a comment, so most of the resolution you give it exists purely so the downscaled versions stay sharp.
Almost always because the source was too small before Instagram ever saw it. Downscaling is safe, upscaling is not. If your original photo is 200 pixels wide and you export at 640, you have a 640 pixel file carrying 200 pixels of real detail. Check the original first, and enlarge deliberately with the image upscaler if you have to.
You can drop one in here and frame it, but what Instagram keeps is a square. A landscape photo loses its sides and a portrait loses its top and bottom the moment it lands in the circle, which is exactly what the preview shows you before you commit.
Yes. This tool exports PNG because the corners outside the circle need an alpha channel to stay transparent, which JPEG cannot do. If you need a smaller opaque file instead, send the PNG through the image converter and pick JPG with a background color.
No. The file is read by your browser, drawn onto a canvas and encoded there. Open your network tab while you use it, or disconnect from the internet and crop anyway.
The same circular crop for LinkedIn, Slack, GitHub and X.
Open toolDiscord avatars at the power-of-two sizes its CDN serves.
Open toolRectangles and fixed ratios, before you go circular.
Open toolCut the background out for a cleaner avatar.
Open toolEnlarge a small portrait before you crop it.
Open toolBring a heavy PNG back under a byte limit.
Open toolPNG to JPG with a background color when transparency is not wanted.
Open toolExact pixel sizes for banners and headers.
Open toolEvery platform wants a slightly different size, and getting it wrong crops your face off or...
Read guideA comprehensive comparison of JPG, PNG, and WEBP image formats. Learn when to use each format...
Read guideYou drop a photo into a free online compressor, a bar fills up, and a smaller file comes back...
Read guide