Facebook Image Sizes and Post Dimensions (2026)
Facebook image sizes for feed posts, Stories, Reels, and link previews — plus the file limits that apply when you publish programmatically.
Facebook feed images display best at 1080 × 1350 (4:5) or 1080 × 1080 (1:1). Link previews pull a 1200 × 630 og:image at 1.91:1. Stories and Reels are 1080 × 1920 (9:16). Profile pictures should be 320 × 320 and are cropped to a circle; cover photos load fastest at 851 × 315. Anything under 200 × 200 is rejected.
Facebook image sizes at a glance
There are two different questions hiding behind “what size should a Facebook image be”: what renders well in the feed, and what the API will actually accept. They have different answers, and only the second one will fail your upload.
| Placement | Upload at | Aspect ratio | Notes |
|---|---|---|---|
| Feed image (portrait) | 1080 × 1350 | 4:5 | Tallest ratio the feed shows uncropped |
| Feed image (square) | 1080 × 1080 | 1:1 | Safe across desktop and mobile |
| Feed image (landscape) | 1200 × 630 | 1.91:1 | Same ratio as link previews |
| Link preview (og:image) | 1200 × 630 | 1.91:1 | Comes from the destination page, not an upload |
| Story | 1080 × 1920 | 9:16 | Video or image; minimum 500 × 500, jpg/png only |
| Reel | 1080 × 1920 | 9:16 | Minimum 540 × 960 |
| Profile picture | 320 × 320 | 1:1 | Cropped to a circle; displays at 176 × 176 |
| Cover photo | 851 × 315 | 16:9 desktop, 2.4:1 mobile | Minimum 400 × 150; re-cropped per surface |
Portrait 4:5 takes more vertical space in a mobile feed than square or landscape, which is why it is the common default for organic Page posts.
What is the minimum image size Facebook accepts?
Meta publishes one hard floor and it applies broadly: 200 × 200 pixels. Below that, the image is rejected rather than upscaled.
For link preview images, Meta’s sharing documentation is explicit:
- Minimum allowed dimension: 200 × 200 px
- Use at least 600 × 315 px to get the large-image link post layout instead of a thumbnail
- Use at least 1200 × 630 px for high-resolution displays
- Keep the image as close to 1.91:1 as possible to avoid cropping in the feed
- The file must not exceed 8 MB
The link preview image is not something you upload with the post. Facebook reads it from the og:image tag on the page being shared. If a shared link looks wrong in the feed, the fix is on the destination page, not in the composer.
What are the file limits when publishing via API?
These are the limits that apply when you publish to a Facebook Page through the API:
| Media | Max size | Formats | Count per post | Duration |
|---|---|---|---|---|
| Image | 4 MB | jpg, png, gif, webp | 10 | — |
| Video | 4 GB | mp4, mov | 1 | 1 s – 4 h |
Those are feed-post limits. Stories and Reels are stricter, and the differences are where uploads fail:
| Feed post | Story | Reel | |
|---|---|---|---|
| Image max size | 4 MB | 4 MB | — |
| Image formats | jpg, png, gif, webp | jpg, png only | — |
| Minimum image dimensions | 200 × 200 | 500 × 500 | — |
| Images per post | 10 | 1 | — |
| Video max size | 4 GB | — | 300 MB |
| Video duration | 1 s – 4 h | — | 3 s – 90 s |
A GIF or WebP that publishes fine to the feed is rejected as a Story, and a 400 × 400 image clears the feed’s 200 × 200 floor while failing the Story floor of 500 × 500. Both are silent traps if you assume one set of limits covers all three formats.
Constraints that catch people out:
- Minimum image dimensions are 200 × 200 px on feed posts, 500 × 500 px on Stories. Smaller images fail.
- Images and video cannot be mixed in one post.
- Text-only posts are allowed — media is optional on a feed post, but required for Reels and Stories.
- The caption limit is 63,206 characters for feed posts and 2,200 for Reels. Full numbers for every network are in the social media API rules reference.
What are the Facebook Reels video specs?
From Meta’s Reels publishing documentation:
| Property | Requirement |
|---|---|
| Resolution | 1080 × 1920 recommended, 540 × 960 minimum |
| Aspect ratio | 9:16 |
| Duration | 3 to 90 seconds |
| Frame rate | 24 to 60 fps, fixed |
| Container | .mp4 recommended |
| Video codec | H.264 or H.265, closed GOP of 2–5 s, progressive scan, 4:2:0 chroma |
| Audio codec | AAC-LC, 48 kHz, stereo, 128 kbps or higher |
| Max file size (via API) | 300 MB |
A Reel outside the 3–90 second window is rejected at publish time, not silently trimmed. The 300 MB ceiling is the one most likely to bite on a 90-second clip: a full-length Reel exported at a high bitrate clears the duration limit and fails on file size. Feed video is far more permissive — up to 4 hours through the API — so a video that works as a feed post will not necessarily work as a Reel.
What size should a Facebook profile picture or cover photo be?
Meta specifies both, but in the Facebook Help Center rather than the developer documentation — which is why they are absent from the API references most developers check first.
Profile picture:
| Property | Value |
|---|---|
| Upload at | 320 × 320 px for best quality |
| Displays at | 176 × 176 on desktop, 196 × 196 on smartphones, 36 × 36 on feature phones |
| Shape | Cropped to a circle |
Cover photo:
| Property | Desktop | Mobile |
|---|---|---|
| Aspect ratio | 16:9, left-aligned full bleed | 2.4:1, left-aligned full bleed |
| Minimum | 400 × 150 px | 400 × 150 px |
| Loads fastest at | sRGB JPG, 851 × 315, under 100 KB | sRGB JPG, 851 × 315, under 100 KB |
Three details decide whether the result looks right:
- The profile picture is masked to a circle, not just resized. A square logo with detail in the corners loses those corners on every surface.
- The cover photo is a different aspect ratio on desktop and mobile — 16:9 against 2.4:1, from the same file. There is no crop that is correct on both; you are choosing which surface to favour.
- The profile picture sits on top of the cover photo, overlapping it by roughly 40 px on mobile and covering part of its left side. Keep anything that must stay readable out of that corner.
Meta also recommends PNG for profile pictures and cover photos containing a logo or text, against the sRGB JPG guidance for photographic covers. The 200 × 200 px floor described above still applies: anything smaller is rejected rather than upscaled.
These are not things you can automate. Postproxy publishes to Facebook in three formats — post, reel, and story — and Facebook’s API does not expose endpoints for setting a Page’s profile picture or cover photo at all. Changing either is a manual action in Facebook’s own interface, for you and for every other tool. If you are building a pipeline, do not design around automating it, and do not depend on an exact cover-photo crop staying put across a Facebook redesign.
Publishing an image at the right size via API
Media is passed by URL — Postproxy fetches it and publishes:
curl -X POST "https://api.postproxy.dev/api/posts" \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "post": { "body": "New release notes are up." }, "profiles": ["facebook"], "media": ["https://yourcdn.com/release-1080x1350.jpg"], "platforms": { "facebook": { "format": "post", "page_id": "123456789012345" } } }'To schedule it instead of publishing immediately, add an ISO 8601 scheduled_at to the post object. The Facebook API reference has the full parameter list, and the Facebook Graph API posting guide covers the direct-to-Meta path if you are building the integration yourself.
Sizing across multiple platforms
If the same image goes to Facebook, Instagram, and LinkedIn, the file limits diverge before the dimensions do — Instagram takes JPEG only at up to 8 MB, LinkedIn takes up to 8 MB across jpg/png/gif, Facebook takes 4 MB including webp. A 4:5 crop at 1080 × 1350 is the one asset that works uncropped on all three feeds.
Related reading:
Postproxy
One API for every social platform
Publish to Instagram, X, LinkedIn, TikTok, YouTube and more with a single request. Free plan, no credit card required.