Media Guidelines

Bluesky

Image and video requirements for Bluesky posts

Overview

Bluesky supports images and videos with automatic compression for oversized files.

Image Requirements

PropertyRequirement
Max Images4 per post
FormatsJPEG, PNG, WebP, GIF
Max File Size~1 MB per image (auto-compressed)
Recommended2000 × 2000 px

Automatic Compression

Bluesky has a 1 MB blob limit. Late automatically compresses images that exceed this:

  1. Quality reduction (maintaining visual quality)
  2. Resolution scaling if needed
  3. Original files preserved

You don't need to pre-compress - Late handles it automatically.

Image Example

{
  "content": "Beautiful sunset tonight! 🌅",
  "mediaItems": [
    { "url": "https://example.com/sunset.jpg" }
  ],
  "platforms": [
    { "platform": "bluesky", "accountId": "acc_123" }
  ]
}

Multi-Image Post

{
  "content": "Photo dump from my trip",
  "mediaItems": [
    { "url": "https://example.com/photo1.jpg" },
    { "url": "https://example.com/photo2.jpg" },
    { "url": "https://example.com/photo3.jpg" },
    { "url": "https://example.com/photo4.jpg" }
  ],
  "platforms": [
    { "platform": "bluesky", "accountId": "acc_123" }
  ]
}

Video Requirements

PropertyRequirement
Max Videos1 per post
FormatsMP4
Max File Size50 MB recommended
Max Duration60 seconds
Aspect RatioAny (16:9 or 9:16 recommended)

Video Example

{
  "content": "Quick tutorial on making coffee ☕",
  "mediaItems": [
    { "url": "https://example.com/coffee-tutorial.mp4" }
  ],
  "platforms": [
    { "platform": "bluesky", "accountId": "acc_123" }
  ]
}

When posting text with URLs and no media, Bluesky auto-generates link preview cards:

{
  "content": "Check out this article! https://example.com/article",
  "platforms": [
    { "platform": "bluesky", "accountId": "acc_123" }
  ]
}

The preview card shows:

  • Page title
  • Description
  • Thumbnail image (from Open Graph tags)

Note: Link previews only appear when no media is attached.

Alt Text

Add accessibility descriptions to images:

{
  "mediaItems": [
    { 
      "url": "https://example.com/sunset.jpg",
      "altText": "Orange and pink sunset over the ocean with silhouetted palm trees"
    }
  ]
}

GIF Support

Bluesky supports animated GIFs:

  • Auto-play in feed
  • Compressed to ~1 MB if larger
  • Counts toward 4-image limit

Text Limits

PropertyLimit
Post text300 characters (graphemes)
Alt text1000 characters

Note: Bluesky counts graphemes, not bytes. Emojis count as 1 character.

Common Issues

"Image too large"

Late auto-compresses, but extremely large images (>10 MB original) may fail. Pre-resize to under 4000 × 4000 px.

"Too many images"

Maximum 4 images per post. Split into multiple posts if needed.

  • Preview only appears without media
  • Ensure URL has Open Graph meta tags
  • Some sites block preview generation

Video rejected

  • Check duration (≤60 seconds)
  • Use MP4 format
  • Keep under 50 MB

Post text truncated

Bluesky has a 300 character limit. URLs count toward this limit. Consider:

  • Shortening text
  • Using link previews (no media) to show full URLs nicely