With Marketing API you can create, measure, and optimize ads on Instagram, in the main Stream, in the Stories, and in the Explore tab. To create your ads:
placement
that includes Instagram. We recommend including both Facebook and Instagram, so our system automatically delivers ads to the best audiences on both platforms.Be aware that:
objective
s.To use Instagram and Facebook posts as ads, see our guide.
You need to know your Instagram account’s ID before you start creating ads. Depending on your account’s type, you have different ways of getting an account ID:
Type of Instagram Account | How To Find Account ID |
---|---|
Business Manager Instagram Account (Recommended) - Implementation Guide | See Set Up Instagram Accounts On Business Manager, Get Associated Accounts. Save the ID to use in your ads. |
Page-Connected Instagram Accounts - Implementation Guide | See Set Up Instagram Accounts With Pages, Get Account ID. Save the ID to use in your ads. |
Page-Backed Instagram Account - Implementation Guide | See Set Up Instagram Accounts With Pages, Read Read PBIA. Save the ID to use in your ads. |
Creating ad objects for Instagram is the same is it is for Facebook ads. To start, create a Facebook Ad Campaign and specify your objective.
Instagram compatible objectives vary according to your chosen ad placement:
Ad Placement | Compatible Objectives |
---|---|
Stream Ads |
|
Story Ads |
|
Explore Ads |
|
The minimum spend budget on Instagram is the same as the one for Facebook self-serve ads, with different limits per currency and limits based on bid_amount
.
For Reach And Frequency campaigns, see Instagram Reach And Frequency.
Create an ad set with the desired:
billing_event
depends on which optimization_goal
you choose. Check our validation rules.For APP_INSTALLS
and CONVERSIONS
campaigns, a promoted_object
is also required at the ad set level.
If you create a Reach and Frequency ad set, set rf_prediction_id
. The destination_ids
of the Reach Frequency Prediction must contain the Instagram account ID.
To deliver ads to Instagram, include instagram
under publisher_platforms
in your ad set. You can use Instagram stream
, story
, and explore
placements, or you can enable multiple platforms including Instagram's placements. If you choose multiple platforms, Facebook optimizes delivery based on your target audience on each platform with Placement Optimization.
To show ads exclusively in Stream or Stories, provide this in the instagram_positions
field. If you want to display your ads in Instagram's Explore tab, you must select both stream
and explore
as placements. You cannot pick just explore
. If instagram_positions
is not specified, we deliver ads to all three possible Instagram placements.
To deliver ads only to Instagram Stories, use story
only inside instagram_positions
. In this case, you should also have instagram
as the only value for publisher_platforms
.
Create an ad set with Instagram as placement:
curl \
-F 'name=Instagram Adset' \
-F 'optimization_goal=LINK_CLICKS' \
-F 'billing_event=IMPRESSIONS' \
-F 'bid_amount=2' \
-F 'daily_budget=1000' \
-F 'campaign_id=<CAMPAIGN_ID>' \
-F 'targeting={
"geo_locations": {"countries":["US"]},
"publisher_platforms": ["instagram"],
"user_os": ["iOS"]
}' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v9.0
/act_<AD_ACCOUNT_ID>/adsets
At this point, you should provide your ad creative. For creatives to be used on Instagram only or mixed placements, you need to supply your Instagram account ID and your Facebook Page ID —your page information does not appear anywhere on your Instagram ad. If the Instagram account is connected to a Page, or is a Page-backed Instagram Account, the same Page needs to be used.
When you provide ad creative, we create an unpublished post. You can see the unpublished post from the page when you query promotable feed using the Page ID.
Create your Ad object to link your creative to your ad set.
The ad review policies are the same for Facebook and Instagram. As we make Instagram available to more businesses, we want the same high-quality ad experience on Instagram that we have on Facebook.
This requires understanding more about how the community interacts with different kinds of advertiser content on Instagram. Since it takes time to build the same kind of models that drive Facebook ads, we currently rely on human review to filter out a small percentage of ads and provide suggestions for improvement.
Our ultimate goal is to make running a campaign across Facebook and Instagram a seamless experience and to make ads a relevant, valuable part of the Instagram product.