Dynamic Creative

Automatically deliver different variations of an ad's creative. This helps you find the best ad creative combination per impression by taking your ad's images, titles, descriptions, and other assets, then learning from outcomes of how these combinations perform across audiences.

Build and display the best creatives for groups of people in your broader target audience. This improves your ability to efficiently explore numerous creative combinations and audiences. Dynamic Creative can improve ads ROI by:

Automating workflow used to test creative

Choosing the effective combination of creative assets through learning across audiences

Create an Ad Set

Create an ad set for Dynamic Creative at the same endpoint you use to create a standard ad set. You can use all optimization_goals, billing_events, targeting, and promoted_objects which work with the parent ad campaign's objective as you would with a standard ad set. For more information see Validation

To enable Dynamic Creative, you should set is_dynamic_creative to true. For example, to create an ad set in a campaign with the optimization_goal set to conversions:

Note that if you are using Dynamic Creative with an ad set optimized for APP_INSTALLS, you should specify link_url in asset_feed_spec, such as http://www.abc.com, and link_urlshould be the same asobject_store_url in promoted_object. You should provide only one link_url parameter in asset_feed_spec. For example:

Available Options for asset_feed_spec

You can use the following parameters to represent creative assets that display in your Dynamic Creative ad. Facebook explores combinations of these assets across eligible ad formats and optimizes delivery of the best combination and best format for each viewer. See also Reference, Asset Feed Spec.

The API for using multiple link_urls is under limited availability. Please contact your Facebook Representative to access it.

Property Name

Description

Type

Required

images

Array of eligible images. Images provided in this array should be included in the ad account's image library

array of list of {"url": "{IMAGE_URL}", "hash": "{IMAGE_HASH}", "url_tags": "{TAG}"}
where either url or hash is required

Required for SINGLE_IMAGE and CAROUSEL_IMAGE format

videos

Array of video_ids. video_ids provided in this array should belong to the ad account

array of list of {"{CALL_TO_ACTION}"}. You can provide multiple values up to 5 values.

Required for all objectives except REACH and BRAND AWARENESS

titles

Array of titles. A short headline in the ad, generally shown next to a link, image or video.

array of list of {"text": "{TITLE}", "url_tags": "{TAG}"}

No

descriptions

Array of secondary description text, displayed less prominently than bodies or titles. Generally appears next to a link, image or video. If not specified, Facebook scrapes the link you provide to generate a description just as we do for link ads. Use empty string with single space for blank description if you do not want to use the scraped text.

array of list of {"text": "{DESCRIPTION}", "url_tags": "{TAG}"}

No

link_urls

Array of link URLs

array of list of {"website_url": "{URL}"}

Required. Typically you can provide only one URL. Those with access to the API enabling multiplelink_urls can use up to five.

Use Deep Links

You can use deeplinks in Dynamic Creative with the APP_INSTALLS, CONVERSIONS and LINK_CLICKS objectives. Add deeplink_url in link_urls when you create your asset_feed_spec. You must only specify onedeeplink_url in asset_feed_spec.

Edit Ad Creative

You can edit the ad creative to add, replace, or remove any of the assets. To do so, provide a new creative with your new asset feed spec, and we deliver the new assets. Then for the same type of asset in asset_feed_spec, such as image hashes, we report how the assets perform as original ones.

When you create a new ad creative to replace an old one, you must still fulfill all restrictions which apply.

Create an Ad

When you create your Dynamic Creative ad, the ad set must be empty, and you can only create one ad. You can however create additional Dynamic Creative ads in another, new ad set. Once you create an ad for Dynamic Creative, you cannot delete or archive it. Instead, you should delete or archive the parent ad set.

Customize Assets

You can customize the images, videos, text, or body delivered by Facebook for different groups of people. This gives you the benefits of broad targeting, such as cost efficiency, delivery at scale, fewer delivery issues, and ease of setup, yet still deliver more personalized ad creatives.

Customize Based on Placement

Customize and deliver creative assets for different placements with one ad. You can take advantage of placement optimization yet also provide different media for different placements. Follow the same steps as you do with any Dynamic Creative ad, see High-Level Steps.

When you create your asset_feed_spec, provide rules as described below.

Asset Rules

Create an asset_feed_spec with rules for custom assets by specifying asset_customization_rules. You can provide asset customization rules for an asset feed. For each rule, you need to specify the customization_spec and the asset labels. You should provide conditions in customization_spec for a single rule.

Provide different creatives at the ad set level for each unique audience. Specify rules to define each of these audiences and their associated creative. The supported customization types, based on usefulness are:

The format you should use to specify a rule is similar to the format for core targeting, see Targeting.

Rule Priority

When you set up rules, you can specify a priority for each rule. If you do not set a priority for each rule, we give each rule a priority number based on its position in the rules as provided. For example, the first rule on the list is assigned 1 and the last one gets priority number equal to the total number of rules.

Default Rule

Individual rules combined typically result in targeting at the ad set level which avoids delivering a random combination of assets to people who do not match any rules.

However, to actively prevent this scenario, you should also set up a default rule. We evaluate each rule in the ascending order of priority assigned to match a given user. To set up a default:

Create an empty customization_spec, with only opening and closing curly braces at the end of your rules, {}.

Assign this rule the lowest priority, which is the highest number, such as 101 if you already have 100 rules.

The default rule matches a creative asset to people who do not satisfy any preceding rules. This enables Facebook to deliver a sufficient number of your Dynamic Creative ads.

In general, you should set up rules so that a high percentage of your targeted audience also matches your non-default rules.

To run Dynamic Creative ads with asset customization rules:

Follow the same steps you do for all other Dynamic Creative ads, see High-Level Steps.

Create your feed with customization rules as described below.

Create asset_feed_spec with Customization Rules

Create an asset_feed_spec with asset customization rules by specifying asset_customization_rules fields in API spec. You can provide up to 50 multiple asset customization rules. For each rule, you need to specify the customization_spec, priority and the asset labels. You should provide no more than 50 conditions in customization_spec for a single rule.

asset_feed_spec restrictions - Are the same as those for Dynamic Creative ads without customization rules, except for the following:

Each image or video must have a label attached.

Only one image or video should be eligible for display per individual asset_customization_rule.

Ad Formats — Two ad_formats are supported: SINGLE_IMAGE and SINGLE_VIDEO. Only one ad_format is allowed in one asset feed.

You can only provide one item in call_to_actions_types.

For each placement setting in an ad set's targeting, you should provide at least one asset_customization_rule for it.

Troubleshooting

The following scenario can cause issues with Dynamic Creative ads:

Creating a Dynamic Creative with 10% budget and compare with baseline. Instead you should try to compare click-through-rates and cost-per-actions. This can occur because:

Budget needs to be equal between the two ad sets.

Both campaigns need similar number of delivered impressions for comparison.

FAQs

Q: Is ads delivery optimization different for Dynamic Creative ads and standard ads? If we adjusted image and title ourselves and created regular ads with possible combinations, would the outcome be any different?

A: Yes, the optimization is different between Dynamic Creative and the ads in our current system. If you create various image-title combinations today, our delivery system picks the best performing, fully-formed ad and puts the majority of spend behind that ad. Creative optimization is happening at a fixed, and fully formed ad within the ad set. With Dynamic Creative, provide creative optimization for each individual, creative asset such as image, title, body, and then converge on the best creative asset combination per impression.

For insights on Dynamic Creative, you can retrieve creative-asset level insights, and then group data by age range and gender.

Q: How should I use dynamic creative? As a testing tool for figuring out the best creative concepts, or do we replace regular campaigns with them?

A: Dynamic Creative is a workflow to run actual ad campaigns and determine the best performing creatives. It is ideal for new, ongoing campaigns, or campaigns that run longer than 5 days. We recommend that you perform split testing of your Dynamic Creative ads with your existing campaigns to see which approach performs better for your needs.

Dynamic Creative optimizes with more advertiser data over time. So you should be able to consistently get higher ROI using Dynamic Creative compared to the standard ads delivery system.

Q: Can I view insights on the full, delivered ad? What about creative asset level breakdowns?

Currently, we only show creative-asset level breakdowns such as metrics by image, title, body, and so on. These metrics are available in Ads Manager under By Delivery.

Q: For regular ads we create a mix of single, carousel, image, or video ads under a single ad set. How can I do that with Dynamic Creative?

A: We currently only support a single-media format. Your selected format can be a single image, video or carousel image. We are working on multiple format support in one ad set.

A: Dynamic Creative delivers the best combination of assets in carousel ad format. The number of cards is the number of images in the asset feed if less than 10, otherwise we display 10. In asset insights breakdown, for in-card assets, such as image, title, and description, we aggregate metrics when the asset is in the first card. We recommend square sizes for images.

A: You can edit ad creative by providing it with a new asset_feed_spec. If you send the same spec, we report results for new assets under the older, existing asset name.

We reuse assets based on asset value and type. For example, if you have two asset_feed_specs with the same image hash, and you update one asset_feed_spec with another in your ad, you see combined impressions for that asset in the asset breakdowns.

You can add new assets, remove existing assets and replace assets with completely new ones. However, you cannot change formats such as changing SINGLE IMAGE to VIDEO. You also cannot update a Dynamic creative ad to be a non-Dynamic Creative ad which has no asset_feed_spec in the ad creative.

Q: What placements does Dynamic Creative support?

A: Dynamic Creative supports all placements except sponsored_messages on Messenger. The other restrictions that are in place for standard ads, also apply for Dynamic Creative ads. See Placement and Validation, Objective and Placement.

Q: Can I crop my images in Dynamic Creative?

A: Dynamic creative supports image cropping. Specify cropping for your image definition in images. You can provide only one crop per image. We apply your crops to all placements of your image. See Marketing API, Image Cropping.