The iOS version problem
iMessage’s image handling changes between iOS versions, making image sizing harder than on other platforms. What looks fine on iOS 15 may crop badly on iOS 17, and Apple doesn’t maintain a single spec.
Recommended image dimensions
The safest default is 1200 x 1200 pixels. A square source image survives the different crops iMessage applies across iOS versions and message contexts.
For landscape-specific optimization, use 1200 x 630 pixels (the standard OG ratio).
Full-width previews on iOS 16+
iOS 16 introduced full-width previews that span the entire message bubble. To trigger this layout, the image needs to be at least 2400 x 1256 pixels. Anything smaller may render as a thumbnail instead.
<!-- For full-width previews on iOS 16+ -->
<meta property="og:image" content="https://example.com/image-2400x1256.jpg">
iOS 17 square cropping
iOS 17 crops more aggressively toward a square aspect ratio. This is why 1200 x 1200 works well as a default – it holds up under the square crop without losing content.
Minimum dimensions
- Absolute minimum: 150 x 150 pixels – smaller images may be ignored entirely
- Apple’s documented minimum width: 900 pixels
- Recommended minimum: 1200 pixels wide
Below these thresholds, iMessage falls back to a text-only preview or shows the apple-touch-icon / favicon.
Supported formats
JPEG and PNG work reliably. GIFs do not animate – iMessage shows only the first frame. Use og:video with an MP4 if you need animation.
WebP and SVG support is undocumented and varies by iOS version. Stick to JPEG or PNG.
File size
Keep images under 1 MB. The sender’s device downloads the image directly over their connection (possibly cellular), with no server-side proxy to absorb the cost. Every sender fetches independently.
Image URL requirements
The image URL must be:
- An absolute URL (not relative)
- Served over HTTPS (HTTP images won’t load on iOS)
- Accessible without authentication or JavaScript redirects
- Not behind a redirect chain that requires cookies