Guides / uplads playbook

Threads Ads: How to Run Meta Ads on Threads

How Threads ads work: requirements, objectives, formats, the 4:5 crop rule, the Threads profile ID trap, and how to launch Threads ads in bulk.

Thomas Danninger

7 min read

Threads Ads: How to Run Meta Ads on Threads

Threads went from a text app with no ads to a placement Meta switches on by default in every new campaign. Meta's own Threads ads page talks about reaching over 500 million people, and if you run Advantage+ placements your ads are probably already showing there, whether you planned creative for it or not.

I build the ad-operations tooling for an Austrian performance marketing agency, and Threads is the placement where we saw the most confusion this year: launches failing on an ID nobody could find, 9:16 videos cropped in odd places, lead campaigns that never delivered there. This guide covers what Threads ads actually are, what Meta requires, the specs that matter, the profile ID trap, and how to run Threads at the same volume as the rest of your Meta placements.

What are Threads ads?

Threads ads are Meta ads that appear in the Threads Feed, between organic posts, on mobile only. You do not create them in a separate tool: they are a placement inside a normal Meta campaign, next to Facebook Feed, Instagram Reels and the rest.

That has two consequences. First, everything you already know about Meta campaigns applies: the same objective, budget, audience and pixel decide delivery, and Threads results show up in Ads Manager's placement breakdown like any other surface. Second, Threads only gets the creative you give the whole ad set. If your ad set runs on automatic placements and you uploaded a single 9:16 video, Threads gets that 9:16 video, cropped to 4:5.

The Threads Feed ad looks like a post from your brand. There is no call-to-action button: tapping the headline or the media opens your destination, tapping the caption expands the post and its replies, and tapping the brand icon opens your profile. Video plays with sound off by default.

What do you need to run Threads ads?

These requirements come from Meta's Threads ads creation documentation and its Threads ads page for businesses, both read in November 2026.

RequirementDetail
Meta ad accountThreads ads are bought in Meta Ads Manager or the Marketing API, nowhere else
Instagram Feed placementMust be selected in the same ad set; Threads Feed cannot run on its own
ObjectiveAwareness, Traffic, Engagement or Sales
IdentityYour Threads profile if the ad names one, otherwise your Instagram account, otherwise your Facebook Page
Threads profile in your Business portfolioInstagram-linked Threads profiles created before 29 January 2026 were added automatically; newer ones must be added by hand
DevicesMobile only

The Instagram Feed rule is the one that surprises people on manual placements. Untick Instagram Feed and keep Threads Feed, and Meta rejects the ad set with a placement error. Meta documents this as a prerequisite: in API terms the ad set needs both instagram and threads in publisher_platforms, stream in instagram_positions, and threads_stream in threads_positions.

The objective list is the other trap. A Leads campaign with an instant form or an App promotion campaign will not deliver on Threads, even though the rest of the setup is identical. If Threads matters for a launch, pick one of the four supported objectives first.

Which formats and specs do Threads ads support?

Threads supports single image, single video and image carousel ads. The table below is Meta's spec as documented for the Marketing API in November 2026.

SpecThreads Feed ruleWhat to upload
Image aspect ratio1.91:1 to 9:16 accepted; taller than 4:5 is cropped and centred to 4:54:5 or 1:1
Video aspect ratio1.91:1 to 9:16 accepted; taller than 4:5 is cropped to 4:54:5, keep text out of the top and bottom of a 9:16
Carousel cardsImage cards only; anything other than 1:1 is cropped to 1:11:1 cards
Image widthAt least 500 px1080 px wide as usual
Caption length1,000 characters maximum; over the limit the ad still runs on Instagram but not on Threads80 to 160 characters (Meta's recommendation)
Hashtags and URLs in the captionNot supportedKeep links in the destination field
Call to actionNo button on Threads; headline and media are the clickWrite the headline as the action

The caption rule deserves a second look because it fails silently. A long-form primary text that works well in Facebook Feed, say 1,200 characters with a story and a list, does not error. The ad launches, delivers on Facebook and Instagram, and quietly never appears on Threads. If you write long copy for Meta, keep a short variant for ad sets where Threads delivery matters.

The cropping rule is why a single 9:16 asset is a weak choice for Threads. A 9:16 video is cut to 4:5, which removes about 30 percent of the frame height, usually where the hook text and the logo sit in a Reels-first edit. One 4:5 asset next to the 9:16 fixes that, and with placement asset customization Meta serves each placement its own ratio from one ad. Our guide to Facebook ad placements explains how that rule set works.

Threads profile or Instagram identity?

Without a Threads profile on the ad, Meta runs it in the Threads Feed under your Instagram account. That works, but the ad then shows the Instagram identity, not a Threads profile people can follow. If your brand has a Threads profile, attach it.

Attaching it is where launches break. In the API the creative carries a Threads account ID next to the Page ID and Instagram account ID, and Meta shows that ID in no Ads Manager screen. The place most people look is Business settings, Accounts, Threads accounts, which lists the profile with an ID. That ID is a Business asset ID, and the ads API rejects it.

We tested both side by side in August 2026 on one of our own test accounts with a live Threads placement: the Business settings ID failed, the ID read from the linked Instagram account passed. The working IDs in our checks all started with 17841. Two error messages tell you which mistake you made:

Error from MetaWhat it means
(#100) Param threads_user_id must be a valid Threads account idThe ID does not exist as a Threads account, usually a Business settings ID or a typo
Error subcode 4588023, worded as "the ad account has no access to this Threads account"The ID is real but belongs to another brand, or to a Threads profile not linked to the Instagram identity of this ad

Meta also pairs the identities strictly: the Threads profile must belong to the same Instagram account the ad runs as. A Threads ID from brand A with the Instagram account of brand B is rejected, which matters for agencies that switch identities between launches on one ad account.

How do you turn Threads ads on or off?

Threads is on by default. Meta switches the Threads option on when you create a campaign in Ads Manager, Advantage+ placements include the Threads Feed, and duplicating a campaign with Advantage+ placements keeps it on in the copy.

Controlling Threads delivery in Ads Manager

  1. 1

    Keep Advantage+ placements

    Threads Feed is included automatically. This is the right default for most accounts: Meta only spends there when it finds delivery it rates as efficient.

  2. 2

    Switch to manual placements to exclude it

    Open the ad set, choose Manual placements and untick Threads Feed. Nothing else changes.

  3. 3

    Keep Instagram Feed when you include it

    On manual placements, Threads Feed only works with Instagram Feed ticked in the same ad set.

  4. 4

    Read the placement breakdown after a week

    In Ads Manager, break results down by placement and compare Threads Feed cost per result with Instagram Feed before you decide to exclude it.

The honest answer to "should I run Threads?" is usually "leave it on and look at the numbers". Threads inventory is mobile only, text-first and still growing, so results vary a lot by vertical. Excluding it by reflex removes a placement that can be cheap for awareness and traffic, and keeping it on costs nothing extra by itself.

How do you launch Threads ads in bulk?

Running Threads at volume is mostly about the two rules above: the right identity on every ad, and a 4:5 asset for every concept. Done by hand in Ads Manager, the identity is one more field per ad, and the per-placement asset is one more rule per ad.

In uplads, the Threads profile is a setting per ad account, not per ad. You pick it once in the Ad Launcher under Manage ad profiles..., where uplads reads the Threads profile linked to the selected Instagram account from Meta, so nobody has to look up an ID. From then on every launch on that account attaches it to each ad creative automatically. The setup is described step by step in our help article on setting up Threads placements.

For creative, uplads groups the ratios of one concept into a single ad with placement rules. On an account with a Threads profile saved, Threads Feed gets the 4:5 asset, the same one Instagram Feed gets, so Meta does not have to crop a 9:16. When you edit an ad set's placements in uplads and tick Threads Feed, Instagram Feed is added automatically, because Meta rejects the ad set without it.

Threads, Instagram and Facebook from one upload

Upload each concept in 4:5 and 9:16 once. uplads builds one ad per concept with the right asset per placement and your Threads profile on every creative.

Common Threads ads problems

SymptomLikely causeFix
No Threads impressions in the placement breakdownObjective is Leads or App promotion, Threads excluded on manual placements, or caption over 1,000 charactersUse Awareness, Traffic, Engagement or Sales; check placements; shorten the caption
Ad set rejected when ticking ThreadsInstagram Feed not selectedAdd Instagram Feed to the same ad set
Ad shows the Instagram name instead of the Threads profileNo Threads profile attached to the creativeAttach the Threads profile linked to that Instagram account
Launch fails with threads_user_id errorID taken from Business settings, or a typoUse the ID read from the linked Instagram account
Hook text cut off on Threads9:16 asset cropped to 4:5Add a 4:5 version and use placement asset customization

Is Threads worth it for your ads?

Treat Threads as an extension of Instagram, not as a new channel to plan from scratch. The audience, pixel and creative are shared, and the delivery system decides how much goes there. What you control is whether the creative survives the placement: a 4:5 asset, a caption under 1,000 characters, a headline that works without a button, and the right identity.

Give it two to four weeks on Advantage+ placements, then compare Threads Feed with Instagram Feed in the placement breakdown on the metric your campaign is optimised for. If it is clearly worse after real spend, exclude it on that account. If it is in line, you just got extra reach for the creative you already made.

Frequently asked questions

Do I need a Threads account to run Threads ads?

No. Meta lets you run ads in the Threads Feed without a Threads profile: the ad then runs under your Instagram account, or under your Facebook Page if there is no Instagram account. You do need an ad account, an Instagram account linked to it in most setups, and the Instagram Feed placement switched on in the same ad set. A Threads profile of your own only changes the identity: with one, the ad shows your brand's Threads name and tapping the icon opens that profile.

Are Threads ads turned on by default?

Yes. Meta switches the Threads option on by default when you create a campaign in Ads Manager, and Advantage+ placements include the Threads Feed automatically. A duplicated campaign with Advantage+ placements keeps it on as well. To keep an ad set off Threads, switch to manual placements and untick Threads Feed. Leaving it on costs nothing extra by itself, because Meta only spends where it finds delivery it rates as efficient.

Which objectives work with Threads ads?

Meta's Marketing API documentation lists four objectives for the Threads Feed placement: Awareness, Traffic, Engagement and Sales. Leads and App promotion are not on that list, so a lead form campaign will not deliver on Threads even if the placement looks available elsewhere. Pick the objective first and check whether Threads Feed is still offered in the placement list before you build creative for it.

What size should Threads ad images and videos be?

Threads accepts images and videos from 1.91:1 up to 9:16, but anything taller than 4:5 is cropped and centred to 4:5, and carousel cards are cropped to 1:1. Images need to be at least 500 pixels wide. In practice a 4:5 asset is the safe choice for single image and video ads, and square cards for carousels, so nothing important sits in the part Meta cuts off.

Why is my Threads User ID rejected?

Almost always because it came from the wrong place. Business settings lists your Threads account with an ID, but that is a Business asset ID and the ads API rejects it. The ID an ad creative needs belongs to the Instagram account the Threads profile is linked to and, in our checks, starts with 17841. Meta also rejects a valid ID from another brand, because the Threads profile must belong to the Instagram identity the ad runs as.

Related

Launch 100+ ads in a single click

Upload your creatives once. uplads pushes them into Meta, Google, and TikTok in bulk.