If you have scripts in your account that delete ineffective keywords, or move them between ad groups, then you may have a situation when the ad group is empty.
You can use a script to stop these groups
function main() {
// select active campaigns
var campaignSelector = AdsApp
.campaigns()
.withCondition('Status = ENABLED');
var campaignIterator = campaignSelector.get();
while (campaignIterator.hasNext()) {
var campaign = campaignIterator.next();
// select active ad groups
var adGroupSelector = campaign
.adGroups()
.withCondition('Status = ENABLED');
var adGroupIterator = adGroupSelector.get();
while (adGroupIterator.hasNext()) {
var adGroup = adGroupIterator.next();
var keywordSelector = adGroup
.keywords()
.withCondition('Status = ENABLED');
var keywordIterator = keywordSelector.get();
// If there are no active phrases, stop the ad group.
if (!keywordIterator.hasNext()) {
adGroup.pause();
}
}
}
}