Skip to content

Automotive Ads - Ads Management

Updated: Jun 26, 2026

This guide assumes you have a catalog and product set ready, and have set up the required vehicle events on your website or in your mobile app. If not, see catalog setup and event setup.

To create automotive ads, you need a Facebook Page⁠ and an ad account⁠.

Step 1. Create campaign

  • Choose PRODUCT_CATALOG_SALES as the campaign objective.
  • Specify a vehicle catalog in promoted_object at the campaign level.
curl \
  -F 'name=Product Catalog Sales Campaign' \
  -F 'objective=PRODUCT_CATALOG_SALES' \
  -F 'promoted_object={"product_catalog_id":"<PRODUCT_CATALOG_ID>"}' \
  -F 'status=PAUSED' \
  -F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v25.0/act_<AD_ACCOUNT_ID>/campaigns

Step 2. Create ad set

Once you have the campaign and the campaign_id, you can create the ad set. The ad set defines the bidding and targeting options for your ads.

If you don't specify destination_type at the ad set level, your ads' default destination is the website URL from your catalog.

On-Facebook destination

To create an ad set that drives Automotive Inventory Ads to an on-Facebook traffic destination⁠, specify destination_type=FACEBOOK in your ad set data. See Advantage+ Catalog Ads with an On-Facebook Destination.

Retargeting

Retarget website visitors who have viewed vehicles in your defined product set.

curl \
  -F 'name=Product Catalog Sales Adset' \
  -F 'bid_amount=3000' \
  -F 'billing_event=IMPRESSIONS' \
  -F 'optimization_goal=OFFSITE_CONVERSIONS' \
  -F 'daily_budget=15000' \
  -F 'campaign_id=<CAMPAIGN_ID>' \
  -F 'targeting={
    "geo_locations": {"countries":["US"]},
    "dynamic_audience_ids": ["<DYNAMIC_AUDIENCE_ID>"]
  }' \
  -F 'promoted_object={"product_set_id":"<PRODUCT_SET_ID>"}' \
  -F 'status=PAUSED' \
  -F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v25.0/act_<AD_ACCOUNT_ID>/adsets

Automotive ads don't support inline dynamic audience targeting specs in the ad set. You must first separately create an audience.

Step 3. Create ad creative

You can use template tags in your ad creatives for automotive ads. When Facebook displays your ad, it replaces template tags with the actual vehicle values. You can use template tags in the ad and in the URL. The template tags are visible when someone clicks the ad.

Template tags for vehicle

TypeName
BODY_STYLEvehicle.body_style
CUSTOM_LABEL_0vehicle.custom_label_0
CUSTOM_LABEL_1vehicle.custom_label_1
CUSTOM_LABEL_2vehicle.custom_label_2
CITYvehicle.city
DEALER_IDvehicle.dealer_id
DEALER_NAMEvehicle.dealer_name
DESCRIPTIONvehicle.description
DRIVETRAINvehicle.drivetrain
EXTERIOR_COLORvehicle.exterior_color
MAKEvehicle.make
MILEAGEvehicle.mileage
MODELvehicle.model
PRICEvehicle.price
REGIONvehicle.region
SALE_PRICEvehicle.sale_price
STOCK_NUMBERvehicle.stock_number
TITLEvehicle.title
TRIMvehicle.trim
URLvehicle.url
VEHICLE_IDvehicle.vehicle_id
VINvehicle.vin
YEARvehicle.year

Template tag guidelines

  • Use these fields in the template tag: vehicle.city, vehicle.dealer_name, vehicle.description, vehicle.make, vehicle.mileage, vehicle.model, vehicle.price, vehicle.region, vehicle.sale_price, vehicle.title, vehicle.url, and vehicle.year.
  • Use double curly brackets {​{....}​} with the template tags.
  • Before using template tags, make sure you provide all required details through your vehicle events. For example, the title of your ad could be: Checkout great deals from {​{dealer_name}​}.
  • Use the template_url_spec field to specify the URL that appears after someone clicks the ad. If you don't provide template_url_spec, or Facebook can't derive it when rendering an ad, Facebook displays the URL from the catalog.
  • You can show a single product or a carousel with multiple products. For single-product ads, you can show multiple images of the same product in the carousel, assuming your catalog contains multiple images for each product. You can also display static cards in combination with dynamic cards.

For more information about creative options, see Building a Creative Template.

Example - Create a carousel creative for automotive ads

use FacebookAds\Object\AdCreative;
use FacebookAds\Object\Fields\AdCreativeFields;
use FacebookAds\Object\Fields\AdCreativeLinkDataFields;
use FacebookAds\Object\Fields\AdCreativeObjectStorySpecFields;
use FacebookAds\Object\Values\AdCreativeCallToActionTypeValues;
use FacebookAds\Object\AdCreativeObjectStorySpec;
use FacebookAds\Object\AdCreativeLinkData;

$object_story_spec = new AdCreativeObjectStorySpec();
$object_story_spec->setData(array(
  AdCreativeObjectStorySpecFields::PAGE_ID => <PAGE_ID>,
  AdCreativeObjectStorySpecFields::TEMPLATE_DATA =>
    (new AdCreativeLinkData())->setData(array(
      AdCreativeLinkDataFields::MESSAGE =>
        'Check out these vehicles from {​{dealer_name}​}',
      AdCreativeLinkDataFields::NAME => '{​{vehicle.year}​} {​{vehicle.make}​} {​{vehicle.model}​}',
      AdCreativeLinkDataFields::LINK => '{​{vehicle.url}​}',
      AdCreativeLinkDataFields::DESCRIPTION =>
        '{​{vehicle.description}​}',
      AdCreativeLinkDataFields::ADDITIONAL_IMAGE_INDEX => 0,
      AdCreativeLinkDataFields::CALL_TO_ACTION => array(
        'type' => AdCreativeCallToActionTypeValues::LEARN_MORE,
      ),
    )),
));

$creative = new AdCreative(null, 'act_<AD_ACCOUNT_ID>');
$creative->setData(array(
  AdCreativeFields::NAME => 'Advantage+ Catalog Ad Template Creative Sample',
  AdCreativeFields::OBJECT_STORY_SPEC => $object_story_spec,
  AdCreativeFields::TEMPLATE_URL_SPEC =>
    array(
      'web' => array(
        'url' => 'http://www.example.com/vehicle'.
          '?id={​{vehicle_id | urlencode}​}',
      )
    ),
  AdCreativeFields::PRODUCT_SET_ID => <PRODUCT_SET_ID>,
));

$creative->create();

Step 4. Create ad

Use the ad_set_id and the creative_id to create the 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/v25.0/act_<AD_ACCOUNT_ID>/ads

Next steps

Preview the ad

Generate a preview of your Advantage+ creative for catalog with the Ad Previews API. Include the product_item_ids parameter to specify which catalog items display in the preview, and start_date and end_date to specify the date range.

use FacebookAds\Object\AdCreative;
use FacebookAds\Object\Fields\AdPreviewFields;
use FacebookAds\Object\Values\AdPreviewAdFormatValues;

$creative = new AdCreative(<CREATIVE_ID>);
$preview = $creative->getPreviews(array(), array(
  AdPreviewFields::AD_FORMAT => AdPreviewAdFormatValues::DESKTOP_FEED_STANDARD,
  AdPreviewFields::PRODUCT_ITEM_IDS => array(
    '<VEHICLE_FBID>',
  ),
));

Unofficial mirror for reference/search purposes. All content originates from developers.facebook.com — see the source link at the top of each page. Machine-readable indexes: llms.txt · llms-full.txt · About