Cross-channel conversion optimization enables you to optimize conversions for both website and app within a single campaign. Selecting a website and app as the places you want conversions to happen captures more data, which may help lower cost per action (CPA) and lead to an increase in conversions.
Here are the top value drivers that resonate with advertisers:
Cross-channel conversion optimization enhances conversions from both your website and app (iOS Android) in a single campaign. If an impression leads to a website conversion or an in-app conversion, or both, the product counts all the conversions as optimized events.
Cross-channel conversion optimization only supports the CONVERSIONS
objective.
Cross-channel conversion optimization supports the following events:
PURCHASE
COMPLETE_REGISTRATION
ADD_PAYMENT_INFO
ADD_TO_CART
INITIATED_CHECKOUT
SEARCH
CONTENT_VIEW
LEAD
ADD_TO_WISHLIST
SUBSCRIBE 1
START_TRIAL 1
With or without campaign budget optimization (CBO), cross-channel conversion optimization only supports these bid strategies:
LOWEST_COST_WITHOUT_CAP
LOWEST_COST_WITH_BID_CAP
Cross-channel conversion optimization is available for all Instagram and Facebook placements, including Automatic Placements. Exceptions: Audience Network, Messenger, Facebook Instant Article, and Placement Asset Customization.
SUBSCRIBE
and START_TRIAL
support are currently being considered.
Optimize the delivery of your ads based on an offsite conversions goal, such as
OFFSITE_CONVERSIONS
, if you configure your pixel to send offsite conversions.
To use cross-channel conversion optimization, set the following fields to their respective values:
OFFSITE_CONVERSIONS
.IMPRESSIONS
.We’ve introduced a new field, omnichannel_object
, in the Ad Set.
For omnichannel object validation:
custom_event_type
fields in the app and pixel must be of the same event.Field | Type | Description |
---|---|---|
|
| App-promoted objects associated with this omnichannel object.
For app-promoted object validation:
|
|
| Pixel-promoted objects associated with this omnichannel object.
|
{ daily_budget: 20000, optimization_goal: CONVERSIONS, promoted_object: { omnichannel_object: { app: [ { application_id: , custom_event_type: PURCHASE, object_store_urls: [ "https://play.google.com/store/apps/details?id=com.facebook.ka" "https://apps.apple.com/us/app/facebook/id284882215", ], }, ], pixel: [ { pixel_id, custom_event_type: PURCHASE }, ], } } }
You can select the desired destination where advertisers want users to land when they click their ad — from a desktop or app. Advertisers are required to insert the corresponding links — website, iOS app deep link, or Android app deep link given the chosen destination option. Learn more about product deep links.
Field | Type | Description |
---|---|---|
| Creative spec | Required for create. The ID or creative spec of the ad creative is to be used by this ad. Learn more about ad creatives.
or creative spec as follows: { "creative": { "name": "", "applink_treatment": "" "object_story_spec": , "omnichannel_link_spec": } } |
| List of tracking spec | Required tracking spec for conversion tracking. For ad validation, see the required specs below and respective example. |
For ad validation:
tracking_specs
)pixel_id
and application_id
must be consistent with those in promoted_object
.tracking_specs
must include these specs:Tracking Spec | Code Sample |
---|---|
Pixel | { "action.type": ["offsite_conversion"], "fb_pixel": [pixel_id] } |
App install | { "action.type": ["mobile_app_install"], "application": [application_id] } |
App event | { "action.type": ["app_custom_event"], "application": [application_id] } |
{ "name": "sample ad" "adset_id": "6170648652866", "creative": { "creative_id": creative_id, } "status": "PAUSED", "tracking_specs": [ { "action.type": ["offsite_conversion"], "fb_pixel": [pixel_id] } { "action.type": ["mobile_app_install"], "application": [application_id] } { "action.type": ["app_custom_event"], "application": [application_id] } ] }
For Advantage catalog ads, template_url_spec
can be used to specify deep links in the creative. In this field, you may use dynamic fields such as product URL or ID.
template_url_spec
follows this specification.
{ "creative":{ "applink_treatment":"deeplink_with_web_fallback", "template_url_spec":{ "android":{ "url":"example://product/{{product.retailer_id | urlencode}}" }, "config":{ "app_id":"<APPLICATION_ID>" }, "ios":{ "url":"example://product/{{product.name | urlencode}}" }, "web":{ "url":"https://www.example.com/deeplink/{{product.name | urlencode}}" } } }, }
For manual upload ads, omnichannel_link_spec
is used instead of template_url_spec
. It includes the following fields:
Field | Type | Description |
---|---|---|
| Web configuration | Pixel-promoted objects associated with this omnichannel object.
|
| App destination configuration | App-promoted objects associated with this omnichannel object.
|
Field | Type | Description |
---|---|---|
| JSON | Landing configuration for Android app. For web validation,
|
| JSON | Landing configuration for iOS app. For web validation,
|
| JSON | Landing configuration for iPad-only app. For web validation,
|
| JSON | Landing configuration for iPhone-only app. For web validation,
|
{ "applink_treatment": "deeplink_with_web_fallback", "omnichannel_link_spec": { "web": { "url": web_url }, "app": { "application_id": application_id, "platform_specs": { "android": { "url": android_deeplink }, "ios": { "url": ios_deeplink } } } }, "object_story_spec": { "instagram_actor_id": "", "page_id": "", "link_data": { "call_to_action": { "type": "LEARN_MORE", }, "link": web_url, "message": "Purchase now!", "name": "Sample creative" } }, "object_type": "SHARE" }