Audience Network Ads

Facebook's Audience Network serves ads on other publishers' iOS and Android apps and mobile websites. Then, you can use Facebook's targeting options to find your audience within those mobile apps and mobile websites.

On this page, see Audience Network rules for ad creative and placement. Then, learn to create ads:

Also learn how to preview and measure your ad.

Ad Creative and Placement

Facebook's Audience Network delivers the ad’s image on the destination app:

Supported Ad Creative

Supported objectives

Bidding

Use combinations of bid type, billing event and optimization goal. See Optimization Simplification.

Publisher Platform

You must use audience_network with another platform, such as facebook. You cannot serve ads only on Audience Network.

publisher_platform Description

audience_network

This allows the ad to serve on the Audience Network.

Restrictions

We do not support IAB sizes.

Create Audience Network Ad

For example, to create a link ad to deliver:

Step 1

Create ad campaign. Set objective to one of LINK_CLICKS or CONVERSIONS:

curl -X POST \
  -F 'name="My campaign"' \
  -F 'objective="OUTCOME_TRAFFIC"' \
  -F 'status="PAUSED"' \
  -F 'special_ad_categories=[]' \
  -F 'is_adset_budget_sharing_enabled=0' \
  -F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v24.0/act_<AD_ACCOUNT_ID>/campaigns

Step 2

Create the ad set with audience network placement:

curl \
  -F 'name=My Ad Set' \
  -F 'optimization_goal=LINK_CLICKS' \
  -F 'billing_event=LINK_CLICKS' \
  -F 'bid_amount=2' \
  -F 'daily_budget=1000' \
  -F 'campaign_id=<CAMPAIGN_ID>' \
  -F 'targeting={ 
    "device_platforms": ["mobile"], 
    "geo_locations": {"countries":["US"]}, 
    "publisher_platforms": ["facebook","audience_network"] 
  }' \
  -F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v24.0/act_<AD_ACCOUNT_ID>/adsets

For your ad set, specify a placement and set publisher_platforms under ad targeting to audience_network.

Step 3

Provide link ad creative:

curl \
  -F 'name=Sample Creative' \
  -F 'object_story_spec={ 
    "link_data": { 
      "image_hash": "<IMAGE_HASH>", 
      "link": "<URL>", 
      "message": "try it out" 
    }, 
    "page_id": "<PAGE_ID>" 
  }' \
  -F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v24.0/act_<AD_ACCOUNT_ID>/adcreatives

Step 4

Create ad:

curl -X POST \
  -F 'name="My Ad"' \
  -F 'adset_id="<AD_SET_ID>"' \
  -F 'creative={
       "creative_id": "<CREATIVE_ID>"
     }' \
  -F 'status="PAUSED"' \
  -F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v24.0/act_<AD_ACCOUNT_ID>/ads

Mobile Ads

Image Ad For Audience Network

To create a mobile app image ad with audience network placement:

Step 1

Create an ad campaign. Set objective to APP_INSTALLS or MOBILE_APP_ENGAGEMENT:

curl -X POST \
  -F 'name="Mobile App Installs Campaign"' \
  -F 'objective="OUTCOME_APP_PROMOTION"' \
  -F 'status="PAUSED"' \
  -F 'special_ad_categories=[]' \
  -F 'is_adset_budget_sharing_enabled=0' \
  -F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v24.0/act_<AD_ACCOUNT_ID>/campaigns

Step 2

Create the ad set. Specify audience network placement and set promoted_object to the app ID:

curl \
  -F 'name=Mobile App Installs Ad Set' \
  -F 'promoted_object={"application_id":"<APP_ID>","object_store_url":"<APP_STORE_URL>"}' \
  -F 'optimization_goal=APP_INSTALLS' \
  -F 'billing_event=IMPRESSIONS' \
  -F 'bid_amount=2' \
  -F 'daily_budget=1000' \
  -F 'campaign_id=<CAMPAIGN_ID>' \
  -F 'targeting={ 
    "device_platforms": ["mobile"], 
    "geo_locations": {"countries":["US"]}, 
    "publisher_platforms": ["facebook","audience_network"], 
    "user_os": ["IOS"] 
  }' \
  -F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v24.0/act_<AD_ACCOUNT_ID>/adsets

Step 3

Create mobile app ad image creative:

curl \
  -F 'object_story_spec={ 
    "link_data": { 
      "call_to_action": {"type":"INSTALL_MOBILE_APP","value":{"link":"<APP_STORE_URL>"}}, 
      "image_hash": "<IMAGE_HASH>", 
      "link": "<APP_STORE_URL>", 
      "message": "Message", 
      "name": "Link title" 
    }, 
    "page_id": "<PAGE_ID>" 
  }' \
  -F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v24.0/act_<AD_ACCOUNT_ID>/adcreatives

Step 4

Create ad:

curl -X POST \
  -F 'name="My Ad"' \
  -F 'adset_id="<AD_SET_ID>"' \
  -F 'creative={
       "creative_id": "<CREATIVE_ID>"
     }' \
  -F 'status="PAUSED"' \
  -F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v24.0/act_<AD_ACCOUNT_ID>/ads

See Mobile App Ads.

Video Ad For Audience Network

To create a mobile app video ad with audience network placement, follow Step 1 and 2 from Image Ad For Audience Network. Then, provide video creative:

curl \
  -F 'object_story_spec={ 
    "page_id": "<PAGE_ID>", 
    "video_data": { 
      "call_to_action": {"type":"INSTALL_MOBILE_APP","value":{"link":"<APP_STORE_URL>"}}, 
      "image_url": "<THUMBNAIL_URL>", 
      "video_id": "<VIDEO_ID>" 
    } 
  }' \
  -F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v24.0/act_<AD_ACCOUNT_ID>/adcreatives

To finish, create your ad. See Step 4 from Image Ad For Audience Network.

Video Link Ad For Audience Network

To create a video link ad with audience network placement:

Step 1

Create ad campaign with objective set to LINK_CLICKS or CONVERSIONS:

curl -X POST \
  -F 'name="My campaign"' \
  -F 'objective="OUTCOME_TRAFFIC"' \
  -F 'status="PAUSED"' \
  -F 'special_ad_categories=[]' \
  -F 'is_adset_budget_sharing_enabled=0' \
  -F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v24.0/act_<AD_ACCOUNT_ID>/campaigns

Step 2

Create the ad set with audience network placement:

curl \
  -F 'name=My Ad Set' \
  -F 'optimization_goal=LINK_CLICKS' \
  -F 'billing_event=LINK_CLICKS' \
  -F 'bid_amount=2' \
  -F 'daily_budget=1000' \
  -F 'campaign_id=<CAMPAIGN_ID>' \
  -F 'targeting={ 
    "device_platforms": ["mobile"], 
    "geo_locations": {"countries":["US"]}, 
    "publisher_platforms": ["facebook","audience_network"] 
  }' \
  -F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v24.0/act_<AD_ACCOUNT_ID>/adsets

Step 3

Upload a video with a link. Upload an unpublished video to your page with a call to action as a link. You can also upload videos to your ad account video library:

curl \
  -F "title=Book your trip to Alaska" \
  -F "picture=http://thumbnailurl.com/pic1" \
  -F "source=<VIDEO_FORM_DATA>" \
  -F "published=0" \
  -F "call_to_action={'type':'BOOK_TRAVEL','value':{'link':'http://example.com'}}" \
  -F "access_token=<PAGE_TOKEN>" \
https://graph-video.facebook.com/v24.0/<PAGE_ID>/videos

Step 4

Provide ad creative. Use the page post ID to provide this:

curl -X POST \
  -F 'name="Sample Promoted Post"' \
  -F 'object_story_id="<PAGE_ID>_<POST_ID>"' \
  -F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v24.0/act_<AD_ACCOUNT_ID>/adcreatives

Step 5

Create ad:

curl -X POST \
  -F 'name="My Ad"' \
  -F 'adset_id="<AD_SET_ID>"' \
  -F 'creative={
       "creative_id": "<CREATIVE_ID>"
     }' \
  -F 'status="PAUSED"' \
  -F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v24.0/act_<AD_ACCOUNT_ID>/ads

On Audience Network, Facebook display only the first two child_attachments in your carousel, in the order provided. For carousel ads on Audience Network, note the following:

  • Campaign objective must be MOBILE_APP_INSTALLS, MOBILE_APP_ENGAGEMENT, LINK_CLICKS, or CONVERSIONS
  • Ad set targeting/publisher_platforms must include audience_network

See Ads Product Guide, Preview API, and Carousel Ads.

Video Ads

You can specify the Audience Network position in targeting at the ad set level:

"audience_network_positions": [ "classic", "instream_video"]

See Video Ads.

Advantage+ Catalog Ads

To use Audience Network as a placement for Advantage+ catalog ads:

  • Campaign must have objective=PRODUCT_CATALOG_SALES
  • Ad set targeting/publisher_platforms must include audience_network

See Advantage+ Catalog Ads.

Ad preview

To preview for your Audience Network ad:

Step 1

Call /previews for your ad

Step 2

Specify ad_format=:

  • MOBILE_BANNER for mobile app or web banner,
  • MOBILE_INTERSTITIAL for mobile app interstitial, or
  • MOBILE_NATIVE for mobile app or web native format previews
  • MOBILE_MEDIUM_RECTANGLE
  • MOBILE_FULLWIDTH
  • AUDIENCE_NETWORK_INSTREAM_VIDEO
  • AUDIENCE_NETWORK_OUTSTREAM_VIDEO
  • AUDIENCE_NETWORK_INSTREAM_VIDEO_MOBILE
  • AUDIENCE_NETWORK_REWARDED_VIDEO
  • AUDIENCE_NETWORK_NATIVE_BANNER
  • MESSENGER_MOBILE_INBOX_MEDIA

Step 3

Mobile web previews appear the same as mobile app.

https://graph.facebook.com/<API_VERSION>/<AD_ID>/previews?ad_format=MOBILE_BANNER
https://graph.facebook.com/<API_VERSION>/<AD_ID>/previews?ad_format=MOBILE_INTERSTITIAL
https://graph.facebook.com/<API_VERSION>/<AD_ID>/previews?ad_format=MOBILE_NATIVE

The API returns an iFrame referencing its own CSS, and generates the preview image. This iFrame is only valid for 24 hours, see Ad Preview, Reference.

Measurement

To your ad's performance in suggested videos feeds, query /insights with breakdowns=['publisher_platform'], see Ads Insights Guide. Results look like this:

{
  ......
  "spend": 9.23,
  "today_spend": 0,
  "total_action_value": 0,
  "total_actions": 1,
  "total_unique_actions": 1,
  "link_clicks": 0,
  "placement": "mobile_feed"
}, 
{
  ......
  "spend": 7.73,
  "today_spend": 0,
  "total_action_value": 0,
  "total_actions": 6,
  "total_unique_actions": 5,
  "link_clicks": 3,
  "placement": "mobile_video_channel"
},
{
  ......
  "spend": 6.23,
  "today_spend": 0,
  "total_action_value": 0,
  "total_actions": 3,
  "total_unique_actions": 2,
  "link_clicks": 1,
  "placement": "desktop_video_channel"
},

mobile_feed refers to Feed on Facebook Mobile, mobile_video_channel is suggested videos feeds on mobile, and desktop_video_channel is suggested videos feeds on desktop.