Image Size Limits for Social Media: Instagram, WhatsApp, Discord & More

SizeSnap Team5 min read

Why Pre-Compressing Beats Platform Compression

Every social media platform re-compresses the images you upload. Instagram converts your carefully edited photo into a roughly 1–2MB JPEG. WhatsApp aggressively downsizes images to keep messages lightweight. Discord re-encodes uploads to manage storage costs.

The result: your high-quality photo gets degraded by an algorithm that knows nothing about what matters in your specific image. Fine details in textures, gradients in skies, and sharpness in text overlays all suffer.

Pre-compressing with a tool like SizeSnap gives you more control. When you upload a file that is already close to the platform's internal target size, the platform's compression algorithm does less aggressive work. The difference is subtle but real — especially in images with fine detail, low-light shots, and graphics with text.

Think of it like packing a suitcase: if you fold everything neatly before the airline squishes it into the overhead bin, your clothes come out in better shape than if you just threw everything in loose.

Platform-by-Platform Size Limits

Here are the current image upload limits for the most popular platforms:

Instagram: 30MB maximum per image. Instagram re-compresses everything to roughly 1–2MB JPEG at 1080 pixels wide for feed posts. Stories use 1080x1920 pixels. Original quality is not preserved.

WhatsApp: 16MB for images sent as media. Up to 2GB for files sent as documents (but documents lose the in-chat preview). WhatsApp applies aggressive compression to media — photos often drop to 100–200KB after platform processing.

Discord: 25MB for free users, 500MB for Nitro subscribers. Discord does not re-compress images as aggressively as other platforms, but it may convert formats. File size limits vary by server boost level.

LinkedIn: 8MB maximum for post images and profile photos. LinkedIn applies moderate re-compression. Banner images also cap at 8MB.

Twitter / X: 5MB for JPEG and PNG photos, 15MB for GIFs. Twitter re-compresses most uploads to around 1MB. PNG screenshots with text often look worse after Twitter's JPEG conversion.

Facebook: 30MB maximum. Facebook applies aggressive re-compression similar to Instagram. For best results, upload at 2048 pixels on the longest edge.

Reddit: 20MB per image, though limits vary by subreddit settings. Reddit's image hosting applies moderate compression.

Recommended Target Sizes for Each Platform

Knowing the upload limit is only half the story. Here are practical target sizes that balance quality and performance:

Instagram: Compress to 5–10MB before uploading. This gives Instagram's algorithm a high-quality source to work from while avoiding unnecessarily large uploads that just slow down the process.

WhatsApp: Target 5MB for the best balance of speed and quality. At 5MB, photos send quickly even on 4G connections and retain good detail after WhatsApp's re-compression.

Discord: Stay under 10MB for universal sharing (works for free users with headroom). For image-heavy channels, 5MB keeps things snappy for everyone.

LinkedIn: 2–4MB is ideal. Large enough for sharp professional photos, small enough for fast uploads and reliable display across devices.

Twitter / X: 2–3MB. Twitter's aggressive compression means there is little benefit to uploading larger files. Staying under 3MB also ensures your tweet posts quickly.

As a general rule: compress to about 2–5x smaller than the platform's maximum limit. You get fast uploads, reliable delivery, and the best quality the platform can preserve.

How to Batch Compress for Social Media

If you are posting multiple images — an Instagram carousel, a WhatsApp album, or a batch upload to a Discord server — compressing each one individually wastes time.

SizeSnap supports batch compression. Set your target size once, drop all your images in, compress, and download the results. Every file will be at or just under your target size.

This is especially useful for:

Instagram carousels: Up to 10 images per post. Compress all 10 to 5MB each for consistent quality across the carousel.

WhatsApp album sharing: When sending multiple photos in a chat, pre-compressing to 5MB each ensures fast delivery and better quality than letting WhatsApp handle it.

Discord server galleries: If you manage a server with image-sharing channels, a consistent 5–10MB target keeps the channel responsive for all members, including those on mobile or slower connections.

Event photography: Compressing an entire event album to a uniform size before sharing makes the experience smoother for recipients and saves significant upload time.

Format Recommendations by Platform

Choosing the right format can make a noticeable difference in quality at the same file size.

JPEG: Universally supported by every platform. Best for photographs, portraits, landscapes, and any image with complex colors and gradients. This is the default choice for social media.

PNG: Best for screenshots with text, diagrams, and images that need sharp edges. However, platforms like Twitter and Instagram may convert PNG to JPEG during upload, which can introduce artifacts around text. If you must use PNG on these platforms, keep the file under 1MB to minimize re-compression damage.

WebP: Increasingly supported and offers 25–30% better compression than JPEG at equivalent quality. Discord, Twitter, and Reddit all accept WebP. Instagram and WhatsApp convert it to JPEG on upload.

HEIC: Apple's format. Excellent compression quality, but not supported by most social platforms for direct upload. Convert to JPEG before sharing outside the Apple ecosystem.

When in doubt, use JPEG. It is accepted everywhere, compresses efficiently for photos, and avoids format-conversion surprises during upload.

Try SizeSnap

Compress images and PDFs to any target size. No guesswork, no quality sliders, no repeated exports.