Most underperforming Facebook Ads accounts are not badly written. They are badly instrumented, badly structured, or judged too early. Creative gets blamed because creative is visible; the causes are usually none of those things.

The objective decides everything downstream

Meta optimises toward the objective you select, and it does so literally. Choose Traffic and you will get clicks — from people statistically likely to click and nothing else. Choose Leads or Conversions and the system looks for people likely to complete that action instead.

This is the single most common misconfiguration we see. A campaign running on Traffic while the business is measuring cost per lead will look cheap in the ads manager and produce very little, because the two systems are optimising for different things.

The learning phase is not a formality

A new ad set enters a learning phase and stays there until it accumulates enough conversion events to stabilise — roughly fifty per week is the figure Meta publishes. Below that threshold, delivery stays volatile and cost per result is not representative of anything.

Two habits keep accounts permanently stuck there. The first is over-segmentation: splitting a modest budget across many ad sets so none of them ever accumulates enough events. The second is editing too often — a significant change resets learning, so an account edited every few days never leaves it.

Creative testing needs a stopping rule

Creative does matter, and on Meta it usually matters more than targeting, because broad targeting plus strong creative now outperforms narrow targeting in most accounts. But testing without a decision rule is just churn.

Decide before launching how many results a variant needs before you judge it, and what threshold retires it. Pausing an ad after two days because it "feels" weak discards a variant that had not yet been measured, and resets learning at the same time.

Tracking is the part that decides the outcome

Browser-based tracking alone under-reports. Ad blockers, iOS privacy settings and browser cookie restrictions all remove conversions from the pixel's view — and because Meta optimises on the events it can see, missing conversions do not just skew reports, they train delivery on a biased sample.

The fix is the Conversions API sending the same events server-side, deduplicated against the browser pixel with a shared event ID. Without deduplication every conversion is counted twice, which halves apparent cost per result and is worse than under-reporting, because it looks like success.

Lead quality, not lead volume

For lead generation the trap is optimising toward form fills. Meta will find you more of them, and they can all be unqualified. Feeding outcomes back — which enquiries became real opportunities — changes the objective from "more forms" to "more of the forms that were worth something". It is usually the highest-leverage change available, and usually the one nobody has made.

What to check first in an existing account

  • Does the campaign objective match the outcome you actually measure?
  • Is each ad set clearing roughly fifty conversions a week, or is the budget split too thin?
  • Is the Conversions API running, and is the deduplication rate above ninety percent?
  • Are you editing often enough to keep resetting the learning phase?
  • Does the landing page match the ad's promise, or does the visitor arrive somewhere generic?

Work through those before rewriting a single headline. In most accounts the answer is in that list.