Bluesky Image Dimensions
The recommended Bluesky image size is 1200 × 675 pixels at a 16:9 horizontal aspect ratio. The Bluesky feed shows a 16:9 preview crop of every attached image, uploading at this exact ratio guarantees nothing important gets cut off in the feed view.
Bluesky doesn't enforce a single "correct" aspect ratio; you can upload squares, portraits, or panoramas. But the feed always crops to 16:9 for the in-line preview, and full-resolution viewing requires a tap-through. Designing for the preview crop is what gets attention before users decide to tap.
Supported aspect ratios
| Ratio | Pixel Size | Feed Behavior |
|---|---|---|
| 16:9 (horizontal) | 1200 × 675 px | Default, no crop in preview |
| 1:1 (square) | 1080 × 1080 px | Cropped to 16:9 in feed; full square on tap |
| 4:5 (portrait) | 1080 × 1350 px | Heavy crop in feed, top & bottom hidden |
| 9:16 (vertical) | 1080 × 1920 px | Major crop in feed; show only middle slice |
The 1 MB File Size Limit
Bluesky enforces a strict 1 MB cap on every image upload. This is a protocol-level rule from the AT Protocol, which stores image blobs across federated servers, bigger files would balloon storage and replication costs across the network.
To stay under 1 MB without quality loss:
- Export at exactly 1200 × 675 px, uploading 4K just wastes bytes
- Use WebP at 80% quality, typically 30–40% smaller than JPG
- Or JPG at 75–85% quality in sRGB
- Strip metadata (EXIF, ICC profile), saves 50–200 KB on photos from cameras / phones
- For graphics with text, use PNG-8 with palette instead of PNG-24
Multi-image Posts
Bluesky allows up to 4 images per post. The 1 MB limit applies to each image independently, so you can have 4 × 1 MB = up to 4 MB of imagery total per post. Layout in the feed:
- 1 image: full-width 16:9 preview
- 2 images: side-by-side 1:1 thumbnails
- 3 images: one large left, two small right (stacked)
- 4 images: 2×2 grid of square thumbnails
File Format Choice
- WebP: best compression,30–40% smaller than JPG at the same quality. Recommended for photos.
- JPG: universal, well-tested, slightly larger than WebP. Recommended for portability.
- PNG: use for graphics with sharp edges, text, transparency. PNG photos almost always blow past 1 MB, convert to WebP.
- GIF: not supported as animation, uploads as a static frame. Use video for moving content.
Alt Text, Use the Full 2,000 Characters
Bluesky's alt text limit is 2,000 characters, far more generous than Twitter's 1,000 or Instagram's. The Bluesky community has strong norms around accessibility, most regular users add alt text on every image, and posts without alt are sometimes called out.
Good alt text:
- Describes the subject first, then context
- Transcribes any visible text in the image word-for-word
- Mentions visual style only when relevant (e.g. "hand-drawn diagram")
- Avoids redundant phrasing like "image of...", start with the subject
Tips for High-Quality Bluesky Images
- Default to 1200 × 675 (16:9) so the feed preview shows the full image uncropped
- Export WebP at 80% quality, smallest file with no visible loss
- Strip EXIF / ICC metadata before upload
- Test under 1 MB, re-encoding fails on oversized files
- Add alt text on every image, it's a community norm and accessibility win
- Need exact 16:9 cropping? Use our X (Twitter) sizing tools, same ratio works on Bluesky.
Frequently Asked Questions
What is the best image size for a Bluesky post?
The best image size for a Bluesky post is 1200 × 675 pixels at a 16:9 horizontal aspect ratio. The feed previews images at 16:9 by default, so this matches what users see without cropping. Keep the file under 1 MB, Bluesky rejects anything larger.
Why is the Bluesky image limit only 1 MB?
Bluesky runs on the AT Protocol, which stores blobs across a federated network. The 1 MB cap keeps storage costs and replication bandwidth manageable. Hard cap, you cannot upload anything larger, regardless of dimensions.
What aspect ratios does Bluesky support?
Bluesky supports any aspect ratio, but the feed displays a 16:9 preview crop by default. Tap-through shows the full image. For the cleanest feed appearance, use 16:9 (1200 × 675), 1:1 (1080 × 1080), or 4:5 portrait (1080 × 1350).
How many images can I attach to a Bluesky post?
Up to 4 images per post. Each image is subject to the 1 MB limit independently, and they display as a 2×2 grid in the feed when there are 2 or more images. For 3 images, the layout is one large image plus two smaller ones.
Does Bluesky support GIFs?
Bluesky does not natively support animated GIFs as images, they upload as static frames. To post animation on Bluesky, convert the GIF to MP4 video and post it as a video attachment instead.
How do I get a high-quality image under 1 MB on Bluesky?
Export at exactly 1200 × 675 px (16:9), use WebP at 80% quality (smaller than JPG with same quality), or JPG at 75–80%. Avoid 4K or 2K source files, downsampling to 1200 px wide will hit 1 MB easily without visible quality loss.
What is the alt text limit on Bluesky?
Bluesky allows up to 2,000 characters of alt text per image, much more generous than Twitter or Threads. Use it: describe the visible content factually, mention text shown in the image, and aim for a screen reader user understanding the post in full.
Why does my Bluesky image upload fail?
The most common reason is exceeding the 1 MB limit. Other causes: wrong format (only JPG, PNG, WebP supported), corrupted file, or uploading from a poor connection. Re-export at 1200 × 675 with WebP at 80%, that almost always fits.