Appearance
Fresh 2026
Ad Delivery Checks
Delivery checks are a set of tests which can help find out potential issues related to ad delivery.
Run And Read
To run the ad delivery checks and get the failed check results, read the failed_delivery_checks field of an ad. For example, running delivery checks for ad 6014290603725:
bash
curl -G \
-d 'fields=failed_delivery_checks' \
-d 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v19.0/<AD_ID>If all the checks have passed failed_delivery_checks field will not be part of the response.
For example, the response for an ad with a failed invalid_custom_audiences check will be in a form of:
json
{
"failed_delivery_checks": [\
{\
"summary": "Custom Audience No Longer Shared",\
"description": "This ad uses a custom audience that's no longer being shared with you. Please contact the person who set up the audience for more information.",\
"check_name": "invalid_custom_audiences",\
}\
],
"id": "6014290603725"
}The failed_delivery_checks field is a JSON array which contains JSON objects of the failed checks. Each failed check has the following fields:
| Name | Description | Type |
|---|---|---|
| check_name | The name of the failed check (See Delivery Check types) | String |
| summary | One line description of the error | String |
| description | More detailed explanation of the error | String |
Delivery Check Types
The ad delivery checks include the following checks:
| check_name | Failure reason |
|---|---|
| page_status | Page Unpublished - This ad cannot deliver because the page it targets is not published. |
| mobile_eligible | Not Eligible For Mobile - This ad will not deliver to mobile users. |
| blocked_url | URL on block list - This ad redirects to a suspicious URL. |
| invalid_custom_audiences | One of the following:<br>1. Custom Audience No Longer Shared - This ad uses a custom audience that's no longer being shared with you. Please contact the person who set up the audience for more information. If the account no longer has access to some of the audiences that the ad uses the ad can't deliver.<br>2. Custom Audience Opt Out Conflict - This ad uses different audiences with different opt-out links. You can only use different custom audiences on the same ad if they don't use conflicting links.<br>3. Ad Using Deleted Custom Audience - This ad uses a custom audience that's been deleted by you or by the person who set it up. An ad using deleted custom audiences can't deliver.<br>4. Custom Audience Error - There's a problem with this custom audience associated with this ad. We're working to fix the issue. Please try again later. |
| logged_out_ads | One of the following:<br>1. Only Page post ads allowed for logged out ads.<br>2. The Story used for a logged out ads is not public. |