Instagram resamples every photo you upload, often adding visible artefacts. Get ahead of it: compress and resize to exactly 1080px before posting. Drop your image below — it never leaves your device.
PNG, JPG, GIF, WebP, HEIC up to 50MB per file
Choose filesThis is the detail that explains most complaints about Instagram image quality. Whatever you upload, Instagram re-encodes it to its own specification: a maximum of 1080px on the long edge for feed posts, with its own compression applied on top of yours. Uploading a 6MB, 4000px photo does not produce a sharper post — it just gives Instagram's encoder more material to crush.
The practical consequence is that you get a better result by doing the resize yourself, carefully, than by letting Instagram do it automatically. A clean 1080px image at high quality passes through the platform's pipeline with far less visible damage than a huge file that gets aggressively downscaled in one pass.
Square feed posts are 1080×1080. Portrait posts, which occupy the most screen space and are generally the better choice, are 1080×1350 at a 4:5 ratio. Landscape is 1080×566. Stories and Reels are 1080×1920 at 9:16. Anything wider than 1080px will be downscaled, so exporting larger simply wastes upload bandwidth.
Aim for 80–90% quality at those dimensions, which usually lands somewhere between 200KB and 500KB. That is high enough that Instagram's own compression has little left to remove, and it avoids the soft, smeared look that comes from double compression — one pass from you at low quality, another from the platform.
Instagram displays images at 1080px wide for posts and 1080×1920 for stories/reels. Uploading at exactly 1080px prevents Instagram from resampling and degrading your photo.
JPEG at 85% quality is the standard. WebP is not fully supported by Instagram's upload, so stick to JPEG for maximum compatibility.
Instagram re-encodes every image to reduce bandwidth. By pre-compressing to 1080px and 85% JPEG quality, you control the output rather than letting Instagram's algorithm decide.
Yes. Stories and Reels use a 9:16 ratio (1080×1920px). Set the max dimension to 1920px to fit the full height without loss.