Back to blog
AI Advertising10 min read17 September 2026

Why AI-Generated Ads Get Rejected — The Patterns Platforms Catch

Adyft Guide

AI Advertising

There are two completely different reasons an AI-generated ad gets rejected, and people usually chase the wrong one. The first is policy — the copy says something the platform does not allow. The second is technical — the campaign payload is malformed in a way that has nothing to do with content. The error messages for both are equally unhelpful. Here are both, with the fixes.

Part one: policy rejections

AI produces these patterns by default, not carelessly. Persuasive ad copy in its training data is full of them, and the model has no concept that any are regulated.

Implied personal attributes — the most common by far

Meta prohibits copy implying you know something personal about the reader. AI addresses the reader directly by default, which is precisely the trigger.

Rejected

"Are you struggling with debt?" · "Tired of your acne?" · "Overweight? We can help." · "Still single?"

Accepted

"Our programme helps people manage debt." · "A treatment plan for acne." · "Weight management support." · "Meet people nearby."

The rule that works: describe what you offer, do not describe the reader. Once you see it, the rewrite is mechanical.

Unrealistic or unsubstantiated claims

"Guaranteed results", "lose 10kg in a week", "double your revenue", "rated #1". AI generates these freely because they fit the sentence rhythm. The threshold is not published precisely, which makes appeals slow and frustrating.

The fix is the same one that handles regulatory risk generally: no claim, figure or superlative unless you could produce the evidence within an hour. Specific verifiable claims also outperform superlatives, so this costs nothing.

Before-and-after imagery

Restricted in health, fitness and cosmetic categories regardless of how genuine the result was. AI image tools will generate a side-by-side without hesitating because it is a common ad format in their training data.

Synthetic testimonials

Newer, and catching people using AI video. An avatar speaking to camera about how well a product worked reads as a customer testimonial to any reasonable viewer. If no such customer exists, that is a fabricated endorsement — a policy problem on the platform and a legal one off it.

💡 A simple line that removes this whole category: never publish a review, rating, testimonial or customer name that is not real. Avatars may present information; they may not recount personal results.

Part two: technical rejections, which are not about content at all

These are the ones that waste the most time, because people read "rejected" and start rewriting perfectly compliant copy. Real examples we have hit:

  • 1A WhatsApp call-to-action on a video creative cannot carry a link parameter. Meta returns code 105, subcode 1815630 — "number of parameters exceeded". The real reason appears only in a localised message. An image creative accepts the identical value, which is why it stays invisible until the first video ad. This blocked a paying customer sixteen times across two nights.
  • 2A sales objective with link-click optimisation and a page promoted object is rejected outright. The same combination under a traffic objective is accepted. It only breaks for someone choosing sales with a website and no working pixel.
  • 3A budget below the platform minimum for that objective. Meta enforces a floor per ad set, roughly three times higher for conversion objectives than impression ones, and the error never mentions the rule.
  • 4A Click-to-WhatsApp campaign where the Facebook Page has no WhatsApp number connected. Fails with error 2446886, which reads like a permissions problem and sends people hunting in the ad account instead of Page settings.
  • 5A portrait video encoded at the wrong dimensions. Rejected with code 2875006, which says nothing about dimensions.

💡 There is a way to find all of these before a customer does. Meta accepts a validate-only flag on ad set creation: it checks a payload against the live API and returns the real errors without creating anything or spending anything. Running every payload combination through it found a launch-breaking bug that code review and over a hundred real-data comparisons had both missed.

Why repeated rejections matter beyond the individual ad

A single rejection is nothing. A pattern of them affects account standing, and a restricted ad account is a far more immediate business problem than any individual ad. Appeals are slow, and while you wait you cannot advertise.

Which is the practical argument for reviewing AI copy before submission rather than after: thirty seconds of reading prevents a problem that takes days to unwind.

A pre-submission checklist

Does it describe the reader?

Rewrite to describe your offer instead. This alone catches most policy rejections.

Is there a number or superlative?

Could you produce the evidence within an hour? If not, remove it.

Is anyone presented as a customer?

Only if they are one, and only with their material connection disclosed.

Does the creative type match the call-to-action?

Video and image creatives accept different call-to-action values. This is the technical one people never suspect.

Every payload validated before it reaches review

Adyft checks each ad set against the platform API before launching and shows you every headline and image first. 14-day free trial, no card.

Start free — no card needed
A

Adyft Team

Published 17 September 2026

© 2026 Adyft Technologies Pvt. Ltd.