Back to News for Developers

Reach and Frequency Enhancements

August 15, 2016BySerign Jobe

Over the next few weeks we are rolling out multiple highly requested enhancements for reach and frequency ads buying for Facebook and Instagram. Advertisers globally will now be able to edit an ad set budget and end date mid-schedule, pause and re-start an ad set mid-schedule and see predicted delivery by placement prior to purchasing inventory.

Ad sets may be canceled and change requests can be made at any time. However, if you frequently cancel your sets you may be unable to use the reach and frequency buying type in the future. Only book ad sets that you intend on running.

When a reservation is assigned to an ad set and before the ad set becomes active, most attributes cannot be modified until the reservation is detached. Make a HTTP POST request to the set and set rf_prediction_id to 0. You can only modify the name attribute on the ad set object.

Example detaching a reservation:

curl \
-F "rf_prediction_id=0" \
-F "access_token=<ACCESS_TOKEN>" \

Once an ad set is active, the reservation cannot be detached and attributes of the set cannot be modified, except for a few whitelisted ad attributes.

The following attributes of an ad can be modified:

  • name
  • creative_id
  • creative_spec
  • conversion_specs
  • tracking_specs
  • view_tags

Pausing and Restarting Ad Sets

Pausing an active set is now allowed. Once a set is paused for a non-trivial time period (>= 30 minutes), the initial predicted results can no longer be guaranteed for this set.

To reactivate a set that is paused for more than 30 minutes, you need to create a new prediction making a POST request to the reachfrequencypredictions edge. You should pass an existing_campaign_id for the active set to be reactivated in the request. After a new prediction is created and reserved, you can attach the reachfrequencyprediction to the ad set by making a HTTP POST request to:{ad_set_id} specifying rf_prediction_id as the id of the reachfrequencyprediction you want to use.

Editing Running Ad Sets

You can make the following updates after a set starts:

  • Increase or decrease the ad set budget and reach. The budget or reach should be greater than the current spend or delivered reach.
  • Extend the ad set schedule to 90 days.

You cannot edit or pause and active set if it meets one of the following criteria:

  • Heavily under-delivered or over spent sets
  • One day ad sets
  • Ad sets about to end in a few hours

To edit a running ad set, you will need to get a new prediction. See Create a Prediction and Reserve the Prediction. You should pass an existing_campaign_id for the active set to be reactivated in the request.