There are a bunch of different possible status markers for ads at all three levels of the ad system. Facebook gives a more detailed rundown of them, but I’m going to cover them quickly before we dig in.
At the campaign level, your campaigns can be Active, Inactive, Not Delivering, Completed, or Deleted. Most of these are self-explanatory. An active campaign is running fine, while an inactive campaign was turned off manually. A completed campaign has ended, and a deleted campaign was removed manually. Not delivering simply means the campaign is inactive due to some reason other than your own actions.
At the ad set level, your sets can be Active, Scheduled, Inactive, Not Delivering, Limited, Completed or Deleted. Active ad sets are working fine. A scheduled ad set is set to run in the future, or run during specific hours of the day outside of the current time. Note that an ad set that is scheduled to run during specific hours will be listed as Active during those hours. An Inactive ad set is turned off manually, and a Deleted ad set has been deleted manually. Likewise, a Completed ad set has been scheduled to run during a certain time period which has passed, or was given a limited budget which it has reached.
The two odd status possibilities are Limited and Not Delivering. Limited ads are essentially ads that are performing very poorly, and which Facebook has decided to limit in delivery. If your budget is too low, your targeting is too restricted, or if your bid is set to a low maximum, your ads might simply be listed as Limited. You can read more about limited delivery here.
As far as Not Delivering, it can be because of a few reasons, discussed a section or two further down.
At the individual ad level, you have a bunch of possible statuses. Your ads can be Active, In Review, Not Approved, Inactive, Not Delivering, or Deleted. Active simply means that your ads are working fine. In Review means you created the ad and submitted it to Facebook for approval, and Facebook has not yet made a determination about the ad. Not Approved means the ad was rejected for some reason. You can read this post to troubleshoot that particular problem. Inactive ads are ads that you manually turned off for some reason or another, while Deleted ads are ads you removed entirely.
Again, to read more about the ad-level Not Delivering status, check the section below.
Campaign Level Not Delivering
The simplest of the three to diagnose, if your ads are set to Not Delivering at the campaign level – that is, the top most level – chances are it just means the ads within the campaign have finished. If you have a campaign with one ad set, which itself has three ads in it, and all three of those ads are manually set to inactive, your campaign will be listed as Not Delivering. This applies to any reason why the ads or ad sets are finished; if you delete the ad sets or ads, if you set them to run at scheduled times and it is currently outside of those times, if a campaign has a fixed or lifetime budget, and so on.
Generally, you won’t be getting Not Delivering at the campaign level through any sort of error. Or, rather, the error that causes the ads to not deliver is at a more drilled-down level. If your Campaign is Not Delivering, drill down to the Ad Sets and see if any of those sets are also listed as Not Delivering.
Ad Set Level Not Delivering
If you’re running ads and the ad set level specifically is labeled Not Delivering, there are a few reasons this might be the case.
One of those reasons is that the campaign level has been turned off. If your Ad Set is Not Delivering, check your campaign! It’s possible that you disabled the entire campaign. Disabling a campaign ceases delivery, but does not change the individual status of each ad or ad set; otherwise when you re-enabled the campaign, you would have to manually go through all of your ad sets and individual ads, setting them to their proper status. Facebook instead simply freezes the status of the ads and ad sets within the campaign and lists them as Not Delivering until you re-enable the campaign.
You also might have issues with the individual ads within the ad set. For example, say you have five ads within the ad set. If four of those ads are disabled and one of them is running, your ad set will be listed as active. If four of those ads are active and one is Not Delivering, you will still see Active in your ad set level. It’s only when all five of the ads are not active that your ad set will show Not Delivering.
If you have an ad set listed as Not Delivering, first check to see if the campaign is disabled. If the campaign is disabled, it’s easy enough to re-enable. Just make sure that you then audit the other ad sets and ads within that campaign to make sure nothing is running that you don’t want running. It’s easy to misuse organization and end up with a lot of individual work to do when you want to toggle entire campaigns on and off while leaving specific ads running.
Ad Level Not Delivering
If your individual ads are set to Not Delivering, it generally means that some rule at the ad set or ad campaign level is telling the ad not to run.
Ad Sets can have schedules or budget limits. Once your ad set reaches that level, any ad within the ad set will be set to Not Delivering. The ad set itself will be set to Inactive or Completed in this case.
The idea here is primarily budget protection. You could have a grand total budget of $100 for the month, which you set at your ad set level. Even if you have five ads, each with that same $100 budget, you will only run ads until your entire ad set reaches $100 ad spend.
Without that ad set level cap, each of those five ads would spend until it has spent $100. That means your total ad set spends $500 out of your $100 budget. This is, understandably, not something you want to have happen.
The same can apply at the campaign level for budget restraints. If you have three ad sets, each with three ads, and you have a $100 budget for your ad campaign, that $100 is divided up amongst the ad sets and ads. As each spends, the total is tallied up, and your ads click over to Not Delivering when you hit the budget cap.
Additionally, just like the ad set level, ads will be set to Not Delivering if either the ad set or ad campaign is disabled. If you manually turn off either the campaign as a whole or the ad set within the campaign
Other Not Delivering Issues
What we’ve learned reading the above is that any issue that causes ads, ad sets, or ad campaigns to not be active can lead to the status of the other levels to be set to Not Delivering. In other words, if your ads have issues, your ad set might be listed as Not Delivering until you fix them. If your Ad Set has issues, your ads will be Not Delivering until you fix the issues, and so on. So what other kinds of issues can cause ads to stop delivering, and how can you fix them?
Your ads may have been rejected. If your individual ads were rejected, the ad set and campaign they’re in will be set at not delivering. As usual, you need to start at the campaign level and drill down until you find the individual issues.
Why might your ads have been rejected? Primarily the reasons tend to be rejected topics, rejected content, or other violations of the Facebook ad policies. There are a ton of different banned and restricted topics, which you can read about here.
You may have reached your spending limit. There are four different spending limits you can reach. From top to bottom, they are:
- Account level. You can set a total overall budget cap for your entire ad account, which is generally a good idea. If you have a fixed amount of money you’re allowed to spend in a given month, set this as the hard cap for your entire account. Otherwise, you have to keep track of ad spend and dynamically monitor and pause ads/sets/campaigns to avoid reaching your budget cap.
- Campaign level. Individual campaigns can have a cap on their spending as well. This is useful to set when you want to limit a particular campaign to a percentage of your overall budget.
- Ad Set level. Ad sets within a campaign can have a budget limit, with the same benefits as a campaign-level cap within your account as a whole. Setting a budget limit for an ad set allows you to cap a seasonal/scheduled/test ad without restricting other ad sets that you want to run more consistently.
- Ad level. Individual ads can, of course, have their own spending limits.
Any time you reach a spending limit, everything below it will be disabled or set to Not Delivering. For example, if your account has three campaigns and one of those campaigns hits the budget limit, all the sets within that campaign will be Not Delivering, but your other ad sets within other campaigns will still run fine.
You might also encounter other budget issues. Primarily, you might encounter an issue with your payment method. If you’re in a country that is allowed to pre-pay, and you run out of funds that have been added to your account and have no backup payment method, your ads will revert to Not Delivering until such time as you’re able to add a new valid source of funds. The same goes for an issue with a credit card; if the card expires or becomes no longer valid due to a bank disabling the number – as they do in cases of identity theft, card loss, or other potential risk – they payment method will bounce and the ads will disable until the issue is fixed.
Other than budget issues, you might also simply have bids that are too low to get any share of the ad auction. If there are 10 ad slots and 30 people bidding for those slots, 20 of them are going to fail to bid high enough to win a slot at each auction. You can cut bids to save on ad costs, but if you cut bids too much, your ads will fail to run.
Ads will also be disabled if you use too much text. The former 20% text rule no longer applies, but if you have too great a text density in your ad images, Facebook will set them to restricted or disabled delivery. It’s a sliding scale; the less text in the images, the more easily the ads will run. There are some exceptions, like book covers pictured in an ad, text-heavy game logos, product images with products that have text on them, and so on. You aren’t penalized for using images of products that have text on them, only for text you add to the image yourself.
So, as you can see, basically any issue that causes one level of an ad to be disabled or rejected for one reason or another will set the other ad levels as Not Delivering. Not Delivering, then, is generally just an indicator of a problem on another level. I recommend drilling up or down to look for issues and address them whenever you see Not Delivering as a status message. Just remember that “Not Delivering” is not necessarily a bad thing! Your ads may be “Not Delivering” because you intentionally disabled their campaign; that’s intended behavior.