The core: platforms compress a second time
Every large platform — Instagram, Facebook, LinkedIn, WhatsApp — scales uploaded images down to its own target dimensions and recompresses them to save storage and bandwidth. Your photo was probably already a JPG (compressed once); the platform adds a second round of compression on top. Every round throws away detail — and this double blow is exactly what creates the mushy look. The solution is to give the platform as little reason as possible to do heavy processing.
Cause 1: wrong dimensions — the platform has to scale
Upload a 4000-px photo where the platform wants 1080 px and it has to scale down — creating artifacts. Upload 600 px where 1080 is needed and it scales up — and the image goes soft. You avoid both by uploading at exactly the target size. Guide values for Instagram: 1080 × 1080 (square), 1080 × 1350 (portrait), 1080 × 1920 (story/reel). The resize and crop tool get you there beforehand.
Cause 2: the compression cascade
Screenshot of the photo → sent to yourself via messenger → saved from there → uploaded: every step recompresses. In the end you upload an already multiply-damaged image that the platform compresses once more. Always start from the original, scale exactly once, upload directly.
Cause 3: too low a starting quality
If you compress yourself before uploading, don't go too low: a JPG saved at quality 50 already has visible artifacts before upload, which the platform's compression then amplifies. For images that will still be uploaded, quality 85 is a good compromise — small enough, but with headroom for the second round.
Cause 4: wrong format for the content
Uploading graphics with text, screenshots, and logos as JPG provokes edge artifacts that re-compression makes worse. For such content — where the platform allows it — use PNG. Photos, on the other hand, stay JPG. Which format fits when is covered in JPG vs PNG.
Cause 5: profile picture too small or too detailed
Profile pictures are shown especially small and yet often upscaled. A full-body photo as a profile picture ends up as a 20-pixel head. Crop tight (head and shoulders) and upload at least at the recommended size — the details are in The Instagram profile picture.
The short rule against upload mush
- Start from the original, not a messenger copy.
- Bring it to the exact target size of the platform.
- Save as JPG Q85 (photo) or PNG (text/graphic).
- Scale and compress exactly once, then upload directly.
You can't do more — the platform's second compression is outside your control. But whoever hands it a clean, exactly-fitting image gets a visibly better result back.
In short
- Platforms recompress to their own target size — the mush is the double round.
- Upload at the exact target dimensions, from the original.
- JPG Q85 for photos, PNG for text/graphics.
- Scale once — no messenger cascade.