

GET request to the /act_<AD_ACCOUNT_ID>/recommendations endpoint where <AD_ACCOUNT_ID> is the ID for your Meta ad account.curl -G \
-d 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v25.0/act_<AD_ACCOUNT_ID>/recommendations
{ "data": [ { "recommendations": [ { "recommendation_signature": "1234567", "recommendation_stage": "mid_flight_recommendation", "recommendation_time": "2026-04-02T23:12:34+0000", "type": "MUSIC", "object_ids": ["7656787679008", "2345678765423", ...], "recommendation_content": { "lift_estimate": "Up to 3% more Traffic", "body": "2 of your ad sets have similar objectives and creatives..", "opportunity_score_lift": "14" }, "url": "https://adsmanager.facebook.com/adsmanager/...." } ], } ] ... }
| Name | Description |
|---|---|
recommendation_signature | Unique identifier for this recommendation. Required to refer to this recommendation in the recommendation application API. Recommendations are refreshed periodically. A recommendation_signature may become invalid if the recommendation is no longer applicable.For recommendations that cannot be resolved in the API, this value will not be returned. |
recommendation_stage | The stage for this recommendation. The stage provides information on the step of the lifecycle of a recommendation. The list of recommendations:
|
recommendation_time | The timestamp in ISO 8601 of when the recommendation is created. Generally, recommendations have an expiration time. Stale or old recommendations cannot be applied and will fail during apply. |
type | Enum value denoting what type of recommendation this is. Description of what each possible value means and what applying them entails is provided in the Applying recommendations secion below. |
object_ids | List of ads objects that pertain to this recommendation. May be a campaign, ad set, or ad. |
lift_estimate | Describes the improvement that could see in accepting a given recommendation. |
body | This is a description of the recommendation similar to the descriptions listed in teh Performance recommendation types section below. |
opportunity_score_lift | This is the lift in opportunity score that would be expected from applying this recommendation. |
url | This is the URL that links directly to the user flow in Ads Manager to apply the recommendation. |
POST /act_<AD_ACCOUNT_ID>/recommendations endpoint to apply changes directly to the ad account. This is ideal for apps that already support campaign management functionality and want to provide a one-click apply experience such as toggling Advantage+ settings for a set of campaigns.POST request to the /act_<AD_ACCOUNT_ID>/recommendations endpoint where <AD_ACCOUNT_ID> is the ID for your Meta ad account.recommendation_signature field which is obtained from the recommendation object.curl -X POST \
-d 'access_token=<ACCESS_TOKEN>' \
-d 'recommendation_signature="1234567"' \
-d 'extra_data={"object_selection": "7656787679008"}' \
https://graph.facebook.com/v25.0/act_<AD_ACCOUNT_ID>/recommendations
{ "success": true }
extra_data object.{ "recommendation_signature": "12345", "extra_data": {} }
| Parameter | Type | Description |
|---|---|---|
object_selection | string (optional) | Comma-separated list of ad IDs to enable Standard Enhancements on. If not provided, defaults to all ad IDs from the recommendation target. Maximum: Must not exceed the number of recommended ad IDs. |
creative_feature_opt_in_overrides | string (optional) | JSON array of creative feature opt-in overrides for specific ads. Each object contains:
Possible values include: image_templates, image_touchups, text_optimizations, video_auto_crop, video_uncrop, standard_enhancements. Note: standard_enhancements must be included alongside any other feature. |
{ "recommendation_signature": "12345", "extra_data": { "object_selection": "123456789", "creative_feature_opt_in_overrides": "[{\"ad_id\": \"123456789\", \"opted_in_creative_feature_names\": [\"standard_enhancements\"]}]" } }
| Parameter | Type | Description |
|---|---|---|
object_selection | string (optional) | Comma-separated list of ad IDs to enable Autoflow creative features on. If not provided, defaults to all ad IDs from the recommendation target. |
{ "recommendation_signature": "12345", "extra_data": { "object_selection": "123456789,987654321,456789123" } }
{ "recommendation_signature": "12345", "extra_data": {} }
| Parameter | Type | Description |
|---|---|---|
action_type | string (required) | The action to perform on the creative feature. Valid values: “OPT_IN”, “OPT_OUT” |
object_selection | string (required) | Comma-separated list of ad IDs to apply the background generation feature to. |
{ "recommendation_signature": "12345", "extra_data": { "action_type": "OPT_IN", "object_selection": "123456789,987654321" } }
{ "recommendation_signature": "12345", "extra_data": {} }
| Parameter | Type | Description |
|---|---|---|
object_selection | string (optional) | Comma-separated list of ad IDs to refresh with new generative AI creative variations. If not provided, defaults to all ad IDs from the recommendation target. |
{ "recommendation_signature": "12345", "extra_data": { "object_selection": "123456789,987654321" } }
{ "recommendation_signature": "12345", "extra_data": {} }
| Parameter | Type | Description |
|---|---|---|
object_selection | string (optional) | Comma-separated list of ad IDs to enable music audio features on. If not provided, defaults to all ad IDs from the recommendation target. |
{ "recommendation_signature": "12345", "extra_data": { "object_selection": "123456789,987654321,456789123" } }
| Parameter | Type | Description |
|---|---|---|
object_selection | string (optional) | Comma-separated list of adset IDs to add Reels placements to. Skips adsets with automatic placements enabled. If not provided, defaults to all adset IDs from the recommendation target. |
{ "recommendation_signature": "12345", "extra_data": { "object_selection": "123456789,987654321" } }
{ "recommendation_signature": "12345", "extra_data": {} }
| Parameter | Type | Description |
|---|---|---|
adsets | string (optional) | JSON array of adset budget adjustments for adsets not using campaign budget optimization. Each object contains: ad_object_id (string) and additional_budget (int, in cents e.g., 6000 = $60). Cannot be used for adsets under campaigns with Advantage Campaign Budget enabled. |
campaigns | string (optional) | JSON array of campaign budget adjustments for campaigns using Advantage Campaign Budget. Each object contains: ad_object_id (string) and additional_budget (int, in cents e.g., 6000 = $60). |
{ "recommendation_signature": "12345", "extra_data": { "adsets": "[{\"ad_object_id\": \"123456789\", \"additional_budget\": 6000}]", "campaigns": "[{\"ad_object_id\": \"111111111\", \"additional_budget\": 10000}]" } }
| Parameter | Type | Description |
|---|---|---|
object_selection | string (optional) | Comma-separated list of adset IDs to transform into Shop ads. If not provided, all adsets from the recommendation will be transformed. Invalid IDs (not in recommendation) will return an error. |
{ "recommendation_signature": "12345", "extra_data": { "object_selection": "123456789,987654321" } }
| Parameter | Type | Description |
|---|---|---|
object_selection | string (optional) | Comma-separated list of ad IDs to enable image expansion on. Skips ads that already have image expansion enabled. If not provided, defaults to all ad IDs from the recommendation target. |
{ "recommendation_signature": "12345", "extra_data": { "object_selection": "123456789,987654321" } }
extra_data object format documented in the recommendation-specific sections below.| Name | Description |
|---|---|
recommendation_signature
string
| Required.
Signature provided in the recommendation fetching API, which corresponds to a unique recommendation. |
music_parameters
object
| Optional.
Music recommendation parameters. Specific parameters are listed below. |
autoflow_parameters
object
| Optional.
Autoflow opt-in recommendation parameters. Specific parameters are listed below. |
fragmentation_parameters
object
| Optional.
Fragmentation recommendation parameters. Specific parameters are listed below. |
music_parameters object| Name | Description |
|---|---|
object_selection
array of numeric strings
| Optional.
A list of ad IDs to apply the music recommendation to. List must be a subset of provided IDs in object_ids. |
autoflow_parameters object| Name | Description |
|---|---|
object_selection
array of numeric strings
| Optional.
A list of ad IDs to apply the autoflow opt-in recommendation to. List must be a subset of provided IDs in object_ids. |
fragmentation_parameters object| Name | Description |
|---|---|
object_selection
array of numeric strings
| Optional.
A list of ad set IDs to apply the fragmentation recommendation to. List must be a subset of provided IDs in object_ids. |
| Name | Description |
|---|---|
ADVANTAGE_PLUS_AUDIENCE | Leverage Advantage+ audiences to let Meta automatically identify and target the most relevant audience segments for your ad sets, optimizing your budget for maximum impact. Learn more about Advantage+ Audiences. |
ADVANTAGE_PLUS_CATALOG_ADS | Recommends adoption of Advantage Plus Catalog Ads to Ad Accounts with an active catalog but not using Advantage Plus Catalog Ads |
APLUSC_ADD_OVERLAYS | Recommends enabling Advantage Plus Overlays for eligible Ads which are currently opted out |
APLUSC_STANDARD_ENHANCEMENTS_BUNDLE | Recommends enabling Advantage Plus Catalog features (Overlays, Text Improvements, and Visual Touch Up) for eligile Ads which are currently opted out |
APLUSC_TEXT_IMPROVEMENTS | Recommends enabling Advantage Plus Text Improvements for eligible Ads which are currently opted out |
APLUSC_VISUAL_TOUCHUPS | Recommends enabling Advantage Plus Visual Touch-Ups for eligible Ads which are currently opted out |
AUTOFLOW_OPT_IN | Enable standard enhancements, which leverages Meta’s data to deliver different variations of your ad when likely to improve performance. Applying this recommendation will enable this functionality for the selected ads objects. If no selection is provided, it will be enabled for all listed ads objects. |
AUTOMATIC_PLACEMENTS | Allow Meta to automatically select additional placements for your ad sets while making the most of your budget. Learn more about Advantage+ Placements. |
BACKGROUND_GENERATION | Help your products stand out by using AI-generated backgrounds with eligible product images to show the version thats likely to perform best. |
BUDGET_LIMITED | Your current budget may be limiting the performance of your campaigns. You could get more results by increasing the budget. |
CAPI_CRM_GUIDANCE_V2 | Recommends setting up CRM data integration with Conversions API to ad accounts running campaigns to capture leads via instant form |
CAPI_CRM_SETUP | Recommends finishing setup of CRM data integration with Conversions API to ad accounts running campaigns to capture leads via instant form |
CAPI_PERFORMANCE_MATCH_KEY_V2 | Recommends sending Conversions API more robust event/match-key data when event match quality is low |
CONVERSION_LEADS_OPTIMIZATION | Choose “Maximize number of conversion leads” as your performance goal to help lower the cost of reaching people most likely to convert. |
CREATIVE_FATIGUE | Cost per result for this ad set may be higher than ads you ran in the past because its image or ide has been show to parts of your audience too many times. Applying this recommendation requires an ad ID and creative ID, and will create a copy of the provided ad, except with the provided new creative. |
CREATIVE_LIMITED | Cost per result for this ad set may be higher than ads you ran in the past because its image or ide has been show to parts of your audience too many times. Applying this recommendation requires an ad ID and creative ID, and will create a copy of the provided ad, except with the provided new creative. |
CTX_CREATION_PACKAGE | This pre-create guidance recommends CTX creation package in Account Overview surface. When adopted, users will be re-directed to open CTX creation package. |
FRAGMENTATION_V3 | Recommends consolidating ad sets to improve liquidity when 2 or more have similar variables, such as objective, audience or creative, while some variables differ. |
GEN_AI_MVP | The GenAI MVP recommendation in Ads Manager suggests AI-generated creative variations to help advertisers improve ad performance. It proactively surfaces creative options based on eligibility criteria and encourages adoption of AI-enhanced assets during ad creation and editing (PFR) and can also recommend updates after the ad is live and running (MFR) |
LANDING_PAGE_VIEW_OPTIMIZATION_GOAL | Create a campaign with the performance goal of “Maximize landing page views” to deliver ads to audiences who are most likely to visit your website. |
MESSAGING_EVENTS | This pre-create guidance recommends Messaging events in Account Overview surface. When adopt, users will open a help doc about messaging events. |
MESSAGING_PARTNERS | This pre-create guidance recommends advertisers running Click-to-Messenger and IG Direct ads to leverage Meta Messaging partners to improve performance and manage high messages volume. Will redirect advertisers to Partner Showcase when Meta Approved partners can be found. |
MULTI_TEXT | Select more text options so they can be mixed and matched to create different versions of your ad. The version that may perform best will be shown for each placement. |
MUSIC | Allow Meta to automatically select and add music to your ads, at no cost to you, based on their content. Applying this recommendation will enable this functionality for the selected ads objects. If no selection is provided, it will be enabled for all listed ads objects. Use of music in your ads is subject to the Sound Collection Terms. |
OFFSITE_CONVERSION | Select the “Maximize number of conversions” performance goal to help drive new customers to your website and lower your cost per result. |
PARTNERSHIP_ADS | Recommends including a partnership ad in your campaign to help improve performance. |
PERFORMANT_CREATIVE_REELS_OPT_IN | Select “Reels” placements for ads already using media that works well in Reels placements, so people are more likely to interact with them. |
PIXEL_OPTIMIZATION_HIE | Recommends advertisers with unoptimized Meta Pixels enable high intent events to be sent for improving performance |
PIXEL_UPSELL | Connect your website using Meta Pixel to help improve audience targeting, better understand your conversions, and help reduce your cost per result over time. |
PRODUCT_SET_BOOSTING | Recommends enabling Product Set Expansion for advertisers running Advantage Plus Catalog, enabling Meta to show products from your broader catalog beyond your specified product set. |
SCALE_GOOD_CAMPAIGN | Some ad sets or campaigns have had stable delivery and a lower cost per result compared to ad sets and campaigns with the same optimization goal that you or your peers have run. Increase their budgets to further scale your results. |
SHOPS_ADS_SAOFF | Improve your ad performance by selecting “Website” and “Shop” conversion locations for ad sets currently using the Website conversion location. This lets you automatically send traffic either to your website or shop on Facebook or Instagram. |
SIGNALS_GROWTH_CAPI_V2 | Recommends advertisers using only the Meta Pixel adopt Conversions API |
UNCROP_IMAGE | Expand your images to fit more placements. You can use generated images that expand the aspect ratios of your media, which can fit your ad into new placements and show them to more people. Applying this recommendation will enable this functionality for the selected ads objects. If no selection is provided, it will be enabled for all listed ads objects. |
UNIFIED_INBOX | Answer unread customer messages within 5 hours of receipt to help increase their value. |
VALUE_OPTIMIZATION_GOAL | Reach people more likely to generate higher value for your business by focusing on key events across the customer journey, like “Add to cart”. Use the “Maximize value of conversions” performance goal to get started. |
WA_MESSAGING_PARTNERS | This pre-create guidance recommends advertisers running Click-to-WhatsApp ads to leverage WhatsApp business partners to improve performance and manage high messages volume. Will redirect advertisers to Partner Showcase when Meta Approved partners can be found. |
/{ad-account-id}/ads, you should include parameters that define the start and end dates for your query. This not only aligns with the performance recommendations outlined in this guide, but also helps you avoid common pitfalls like timeouts or excessive data retrieval.curl -G \
-d "access_token=<ACCESS_TOKEN>" \
-d "limit=200" \
-d "effective_status=['ACTIVE','PAUSED']" \
-d "fields=id,name,created_time,updated_time" \
-d "time_range={'since':'2025-12-01','until':'2025-12-15'}" \
-d "summary=true" \
"https://graph.facebook.com/v25.0/act_<AD_ACCOUNT_ID>/ads"
time_range parameter restricts the results to ads active between December 1, 2025 and December 15, 2025. Always tailor the time range to your specific use case to maximize query performance and relevance.