Compress Image for X (Twitter)
Hit X's 1200×675 spec for in-stream images and 1200×628 for link cards. Pre-compress JPEG to avoid X's aggressive re-encoding. Browser-based, free.
Official platform specifications
Default compression settings target these specs to avoid the platform re-encoding your upload.
Notes & gotchas
- •Color profile: sRGB (X strips ICC profiles on upload).
- •Avoid transparent PNGs — X fills transparency with white.
- •Animated GIFs: separate spec (5 MB cap, 1280×1080 max, convert to MP4 for better quality).
- •X may apply sharpening filter on upload — pre-sharpen lightly for best results.
- •Profile picture displays at 200×200 in replies, 400×400 on profile page.
- •Header crops differently on mobile (different safe zones) — keep critical content centered.
- •Premium subscribers get 1080p unlock + 4K upload options but player still caps streaming at ~1080p.
Recommended export settings
Need to compress images for X (formerly Twitter) before posting? The platform's transcoder aggressively re-encodes any upload that doesn't match its preferred spec — 1200×675 for in-stream images, 1200×628 for Open Graph link cards, 400×400 for profile pictures, 1500×500 for header banners. The infamous 'Twitter image quality' complaint that has trended repeatedly since 2018 traces directly to oversized PNG uploads that X crushes to JPEG itself with visible blocking artifacts in detailed textures, gradients, and text. Pre-compressing locally to X's spec means what followers see in their timeline is essentially what you exported from your editor — no second pass of lossy compression, no surprise quality loss, no color shifts.
- 1X's re-encoder is notoriously aggressive on PNG uploads — pre-compressing to JPEG locally is the only reliable way to keep detail in textures, gradients, and text overlays.
- 21200×675 is the in-stream spec for photos. Anything larger gets downscaled by X with quality loss; anything smaller gets upscaled with blur. Letterboxed or wrong-aspect-ratio images get cropped unpredictably in the timeline preview.
- 3JPEG is the universally-supported format on X. PNG uploads get re-encoded to JPEG on the server side with quality loss and color shifts in transparent areas (which X fills with white).
- 4Local processing avoids uploading to a third-party service — important for journalists, activists, and sources who need to share photos without leaving traces on compression servers controlled by third parties.
- 5Pre-compressed JPEGs upload 80-95% faster than raw camera photos. On flaky mobile connections this is the difference between a successful post and the 'upload failed, retrying' loop.
- 6Link cards (Open Graph images) have a specific 1200×628 spec. Pre-compression ensures your card preview looks crisp when your URL is shared in tweets, DMs, and link-in-bio pages.
- 7Header banners (1500×500) display full-width at the top of your profile — a blurry or artifacted header immediately signals low-effort branding.
- 8Color profile matters: X strips ICC profiles on upload. Converting to sRGB before uploading prevents color shifts that the platform's transcoder would otherwise introduce.
Three steps, no account needed
From raw image to shareable file in seconds — all in your browser.
Upload your image
Drag-and-drop or click to browse. Files are processed locally — nothing is uploaded to any server.
Pick quality
Use the recommended preset or fine-tune quality / dimensions in advanced settings.
Download
Compression runs entirely in your browser. Grab your smaller image in seconds — no account, no watermark.
Why people choose this compressor
100% Browser-Based
Your image never leaves your device. No upload, no server-side processing, no privacy concerns.
No Watermark
Output is clean — no logos, no overlays, no branding baked in. You own the file.
Free & Unlimited
No sign-up, no credit card, no daily cap. Compress as many images as you need.
Canvas-Powered Engine
Uses the browser's native Canvas API for fast, hardware-accelerated image processing.
Universal Format Support
Output is JPEG, PNG, or WebP — plays everywhere, loads everywhere.
Cross-Platform
Works on Windows, macOS, Linux, iOS, and Android — any modern browser.
Who uses this tool
In-Stream Photos
Compress photos to 1200×675 JPEG for crisp display in the timeline. X's player caps streaming at this resolution — anything larger is downscaled with quality loss.
Link Cards (OG Image)
Compress Open Graph images to 1200×628 JPEG for crisp link previews when your URL is shared. The card preview is what drives click-through from shared links.
Profile Photos
Compress profile pictures to 400×400 JPEG. X displays them at this size in replies and mentions — anything larger gets downscaled and looks soft.
Header Banners
Compress header images to 1500×500 JPEG for crisp full-width display at the top of your profile. Header quality affects first impressions of brands and creators.
Threads & Replies
Attach compressed images to thread replies for fast loading on mobile connections. Inline images in threads get more engagement than external links.
Brands & X Ads
Ship spec-compliant ad creative that passes quality review without re-encoding cycles. X Ads has stricter quality floors than organic posts — pre-compression ensures compliance.
Journalists & News
Compress breaking news photos for rapid posting without quality loss that would undermine credibility. Local processing protects source confidentiality.
Meme Accounts
Compress meme images for fast posting while text overlays stay crisp. Meme accounts live or die by posting speed on trending topics.
Frequently asked questions
In-stream photos: 1200×675 (16:9 aspect ratio). Link card OG images: 1200×628. Profile photo: 400×400 minimum (displays at 200×200 in replies). Header: 1500×500 (3:1 aspect ratio). Larger uploads get downscaled by X with quality loss; smaller uploads get upscaled with visible blur. This Twitter image compressor targets 1200×675 by default since that's the dominant in-stream format.
Other tools you might need
Compress Image for Instagram
Hit Instagram's 1080×1080 (Feed) or 1080×1920 (Reels/Stories) sweet spot in JPEG. No upload, no watermark, runs entirely in your browser.
Compress Image for Facebook
Hit Facebook's 1200×630 Open Graph spec or 1080×1080 Feed square in JPEG. Pre-compress to skip the platform's re-encoding penalty. Browser-based, free.
JPG Compressor
Compress JPG/JPEG files locally with quality-aware re-encoding. No upload, no watermark, free. Reduce file size 50-80% in seconds.
Compress Image Under 500 KB
Hit a hard 500 KB target — for email attachments, blog images, and web embedding. Adaptive quality binary-searches JPEG to hit your size precisely. Browser-based, free.
Compress Image Under 1 MB
Hit a hard 1 MB target — for social media uploads and cloud storage. Adaptive quality binary-searches JPEG to hit your size precisely. Browser-based, free.
PNG to JPG Converter
Convert PNG to JPG locally — 80-95% size reduction, no upload, no watermark. Quality-aware JPEG re-encoding preserves detail.