TL;DR, Quick Answer
6 min readMeta's Threads API accepts JPEG and PNG images up to 8 MB. Images narrower than 320 pixels are scaled up and images wider than 1440 pixels are scaled down, so 1440 pixels is the widest file that keeps every pixel. The aspect ratio limit is 10:1, height follows from width and ratio, and colors are converted to sRGB. A carousel holds 2 to 20 images or videos and counts as one post against the 250-post daily quota.
What is the right Threads image size?
The right Threads image size is a JPEG or PNG file 1440 pixels wide and under 8 MB, because Meta scales anything wider down to 1440 pixels and anything narrower than 320 pixels up to 320. Meta publishes these rules in the Media Specifications section of the Threads API Posts documentation, and they are the only pixel numbers Meta gives for Threads images. Export at 1440 pixels wide in the shape you want, and the file reaches the feed without a resize from Meta.
Here is the full image list from that page, with the carousel rules from the same document:
| Rule | What Meta states |
|---|---|
| Format | "JPEG and PNG image types are the officially supported formats for image posts." |
| File size | "8 MB maximum." |
| Aspect ratio limit | "10:1" |
| Minimum width | "320 (will be scaled up to the minimum if necessary)" |
| Maximum width | "1440 (will be scaled down to the maximum if necessary)" |
| Height | "Varies (depending on width and aspect ratio)" |
| Color space | "sRGB. Images using other color spaces will have their color spaces converted to sRGB." |
| Carousel items | At least 2, at most 20 images, videos or a mix |
Meta gives no recommended aspect ratio for images. The page names a width range, a ratio limit and a file cap, and leaves the shape to you.
Which pixel dimensions work best on Threads?
The pixel dimensions that work best on Threads are 1440 pixels wide at whatever shape you need, since 1440 is the widest image Threads keeps without scaling. Meta sets no fixed height; it says height "varies (depending on width and aspect ratio)". The rows below are our arithmetic at a 1440 pixel width, not sizes Meta lists:
| Shape | Ratio | Size at 1440 wide | Inside Meta's limits |
|---|---|---|---|
| Landscape | 1.91:1 | 1440 x 754 | Yes |
| Square | 1:1 | 1440 x 1440 | Yes |
| Portrait | 4:5 | 1440 x 1800 | Yes |
| Tall portrait | 3:4 | 1440 x 1920 | Yes |
| Vertical | 9:16 | 1440 x 2560 | Yes |
A file that is already sized for Instagram image size rules, such as 1080 x 1350 at 4:5, also passes on Threads. It sits inside the 320 to 1440 width range, so Meta leaves its width alone. It posts fine. It simply gives Threads fewer pixels than the 1440 maximum allows.
Going wider than 1440 buys nothing. A 4000 pixel wide export spends more of the 8 MB budget and then gets scaled down to 1440 anyway.

What does the 10:1 aspect ratio limit mean?
The 10:1 aspect ratio limit means a Threads image can be at most ten times as wide as it is tall, which only blocks extreme panoramas and strips. At the 1440 pixel maximum width, a 10:1 image is 1440 x 144, far thinner than any normal post graphic.
Meta writes the image limit as "10:1" and does not say whether the same ceiling applies in the other direction, to very tall images. The video spec on the same page is more explicit: it gives a range "between 0.01:1 and 10:1" and recommends 9:16 "to avoid cropping or blank space." For images, keep tall graphics at 9:16 or wider unless you have tested a taller file through your own publishing route.
The API documentation also does not describe how the Threads feed crops an image for display. It describes what Meta accepts, not how the app frames it. If a headline sits near the top or bottom edge of a tall graphic, check the published post on a phone before you reuse the template.
What file formats and sizes does Threads accept?
Threads accepts JPEG and PNG as its officially supported image formats, with a maximum of 8 MB per image, according to Meta's Threads API Posts page. Meta calls these two formats "officially supported" and names no others, so WEBP, HEIC and GIF files should be converted before upload. GIFs have their own route on Threads: the API attaches a GIPHY GIF by its id, and only to text-only posts, not as an image file.
The 8 MB cap is generous next to other networks. Bluesky caps an image at 2,000,000 bytes, so a Bluesky-sized image fits Threads with room to spare, while a Threads-sized PNG can be too heavy for Bluesky.
Color is the other conversion Meta performs. Images in Display P3, Adobe RGB or any other profile are converted to sRGB. Export in sRGB yourself and the colors you approved are the colors people see.
How many images fit in a Threads carousel?
A Threads carousel holds at least 2 and at most 20 images, videos or a mix of the two, and Meta counts the whole carousel as one post against the profile's rate limit. Meta states the rule twice on the Posts page: "Carousels are limited to 20 images, videos, or a mix of the two" and "Carousels require a minimum of two children." The Threads API carousel maximum items post covers the three-step container flow in detail.
Each carousel item follows the single image rules above. There is no separate carousel image size in Meta's documentation, so a set of 1440 x 1800 portrait slides is as valid as a set of squares. Keeping every slide the same shape avoids a carousel where one slide sits shorter than the rest.
AdaptlyPost
Start Your 7-Day Free Trial
All-platform analytics
Social Inbox
AI-powered assistant
Because a carousel counts once, 20 images in one carousel use 1 of the 250 posts per day a profile can publish through the API. Twenty single image posts use 20.
How do image rules compare with video rules on Threads?
Threads image rules and video rules share the aspect ratio ceiling but differ on width, format and file size. Videos in a carousel follow the video spec, which the same Meta page lists separately:
| Rule | Images | Videos |
|---|---|---|
| Formats | JPEG, PNG | MOV or MP4 |
| File size | 8 MB | 1 GB |
| Width | 320 to 1440 pixels | Up to 1920 horizontal pixels |
| Aspect ratio | 10:1 limit | 0.01:1 to 10:1, 9:16 recommended |
| Length | Not applicable | Up to 300 seconds |
A mixed carousel can hold a 1440 x 1800 photo next to a 1080 x 1920 video. Both are inside their own limits, and the carousel still counts as one post.

How do you schedule Threads image posts at the right size?
AdaptlyPost publishes image posts, carousels, link posts and text posts to Threads from its Threads scheduling tool. You connect Threads through Meta OAuth, attach images, write the post and pick a publish time, and the same calendar holds your Instagram content. A carousel that contains a video can go only to Instagram and Threads in AdaptlyPost, so deselect other networks when a mixed carousel is in the post. To get an image post through on the first try:
- Export each image as JPEG or PNG in sRGB.
- Set the width to 1440 pixels and pick the shape, such as 1440 x 1800 for 4:5.
- Check that each file is under 8 MB.
- Keep a carousel between 2 and 20 items.
- Keep the text within the Threads character limit of 500, remembering that emoji cost more than one character.
- Attach the images in AdaptlyPost, write the post and schedule it.
Frequently asked questions
What is the best image size for a Threads post?
The best image size for a Threads post is 1440 pixels wide, in JPEG or PNG, under 8 MB. Meta scales wider images down to 1440 pixels, so 1440 keeps the most detail. A 4:5 portrait at 1440 x 1800 or a square at 1440 x 1440 both fit Meta's rules.
What is the maximum file size for a Threads image?
The maximum file size for a Threads image is 8 MB, as stated in Meta's Threads API media specifications. Videos have a separate cap of 1 GB. Compress or resize any image above 8 MB before you publish it.
Does Threads crop images?
Meta's Threads API documentation does not describe how the Threads feed crops images for display. It states only what Meta accepts: widths from 320 to 1440 pixels and an aspect ratio limit of 10:1. Check tall graphics on a phone after publishing.
What is the minimum image width on Threads?
The minimum image width on Threads is 320 pixels. Meta says narrower images "will be scaled up to the minimum if necessary," which softens the image. Export at 1440 pixels wide to avoid any upscaling.
Can you post PNG images to Threads?
Yes. Meta lists JPEG and PNG as the officially supported image formats for Threads posts. Both formats share the same 8 MB limit and are converted to sRGB if they use another color space.
How many photos can a Threads post have?
A single Threads post can carry one image, and a carousel post can carry 2 to 20 images, videos or a mix. Meta counts the whole carousel as one post against the 250-post daily API quota. Every item in the carousel follows the same image rules.
What happens if you upload a Threads image wider than 1440 pixels?
Meta scales it down to 1440 pixels wide before the post goes live, so the extra width buys nothing. The file still counts against the 8 MB cap at its original size, so a 4000 pixel export just spends more of that budget for the same result. Export at 1440 pixels to skip the wasted file size.
Does Threads accept WEBP or HEIC images?
Not officially. Meta's Threads API Posts page names JPEG and PNG as the only officially supported image formats, so WEBP and HEIC files need conversion before upload. GIFs follow a separate route: the API attaches a GIPHY GIF by its id to text-only posts, not as an image file.
Can a Threads carousel mix images and videos?
A Threads carousel can hold any mix of images and videos, from 2 to 20 items total, with each item following its own format's size rules. A 1440 x 1800 photo can sit next to a 1080 x 1920 video in the same carousel. Meta still counts the whole carousel as one post against the daily quota, regardless of the mix.
What happens to a Threads image in a different color profile?
Meta converts it to sRGB automatically, whether the file started in Display P3, Adobe RGB or another profile. Exporting in sRGB from the start means the colors you approved match what people see on Threads, with no surprise shift from the conversion.
AdaptlyPost
Start Your 7-Day Free Trial
All-platform analytics
Social Inbox
AI-powered assistant
Put this into practice with AdaptlyPost
Was This Article Helpful?
Let us know what you think!
See us more often in Google
One click marks AdaptlyPost as a preferred source, so our articles sit higher in your Top Stories, AI Mode, and AI Overviews.
Before you go...
AdaptlyPost
Schedule your content across all platforms
Manage all your social media accounts in one place with AdaptlyPost.
All-platform analytics
Social Inbox
AI-powered assistant
Related Glossary Terms


Choosing the Right Facebook Image Size for Pages, Posts and Links
The Facebook image size rules Meta publishes: a 320 x 320 Page profile picture, an 851 x 315 cover, 1200 x 630 link images and a 10MB photo cap.


How the Threads API 500 Character Limit Treats topic_tag
The Threads API 500 character limit applies to the text field. topic_tag is a separate parameter capped at 50 characters, and Meta never says whether it counts.


How the Threads API Carousel Maximum Items Cap Works
Meta sets the Threads API carousel maximum items cap at 20 children and a minimum of 2. Here is the per-item container flow and what a bad carousel returns.
Related Articles


What Happens to a Threads Ghost Post After 24 Hours
A Threads ghost post is a text-only post Meta archives after 24 hours. Replies can route to your inbox, and the API creates one with is_ghost_post=true.


Why the Threads Character Limit Counts Emoji as UTF-8 Bytes
The Threads character limit is 500, but Meta counts each emoji as its UTF-8 byte length, so one family emoji costs 25. Here is how to count a post correctly.


How the First Slide Sets the Instagram Carousel Size for Every Slide
The Instagram carousel size comes from slide one. Meta crops every slide to its ratio, 4:5 to 1.91:1 through the API. Exact pixel sizes inside.

