{
 "schema": "aiblocks-page/1",
 "id": "meta-optimization-of-existing-ad-campaigns-planner",
 "type": "skill",
 "name": "Meta campaign change reviewer",
 "summary": "Check changes before you make them to a Meta campaign. Get each ad marked, the proof, the changes in order and how to judge each one.",
 "headline": "Meta campaign change reviewer",
 "subhead": "Paste your Meta results by campaign, ad set and ad, with your break-even cost per sale and the change you have in mind. It finds where a weak result comes from, marks each ad, puts the changes in order and sets how and when to judge them.",
 "job": {
  "id": "launch-and-scale-ads",
  "name": "Launch and scale Meta and TikTok ads"
 },
 "level": "intermediate",
 "thinking": "medium",
 "tested": true,
 "updated": "2026-11-03",
 "first_published": "2026-10-25",
 "inputs": [
  {
   "type": "performance_sheet",
   "required": true,
   "label": "Performance sheet",
   "what": "ad or store performance export for a closed date window, with definitions"
  }
 ],
 "outputs": [
  {
   "type": "plan",
   "required": true,
   "label": "Plan",
   "what": "a dated plan: what to do, in what order, with a decision rule for each step"
  }
 ],
 "you_give": [
  "Your Meta Ads Manager results at campaign, ad set and ad level, for a recent window and the one before it (CSV or pasted table)",
  "The columns it needs: date, campaign, ad set, ad, spend, purchases and revenue. Helpful extras are impressions, link clicks, frequency and add to cart",
  "Your time zone, currency and attribution window, shown in your export settings",
  "Your break-even cost per sale, or your contribution per order after product and running costs",
  "The most you will let one ad spend with no purchase, and how long buyers take to buy after a click",
  "The change you are thinking about, and the changes you allow, such as \"propose only\" (optional)"
 ],
 "you_get": [
  "A review basis that shows your dates, attribution window, currency and break-even",
  "The source of a weak result, found by working from campaign to ad set to ad",
  "Every ad marked maintain, gather more evidence, investigate, creative refresh or proposed pause, with proof",
  "The changes in order, each with its risk, the setting to go back to, the number that will judge it and a review date",
  "A brief for new creative when the gap is the creative",
  "A list of what is missing and what was not checked"
 ],
 "use_when": [
  "Results are weak and you are about to pause ads, change budgets or swap creatives, and want a plan first.",
  "An agency or teammate proposes changes and you want a second look at the evidence.",
  "You want one thing changed at a time, so you can tell what worked.",
  "You need a written record of what you changed, why, and when you will judge it."
 ],
 "skip_when": [
  "You want a routine daily table of marks for every ad: use the Daily Meta ad review planner.",
  "Your campaign is working and you want to scale it: use the Meta campaign growth planner.",
  "You are launching a new campaign: use the Meta creative test campaign planner.",
  "You want to add new ads to a campaign that works: use the Meta creative refresh setup planner.",
  "Purchases are missing or counted twice. Fix tracking first with the Meta server tracking checker."
 ],
 "output_sample": {
  "input": [
   "Your Meta results by campaign, ad set and ad, for a recent window and the one before it",
   "Your break-even cost per sale, and the most one ad may spend with no purchase",
   "Your time zone, currency, attribution window and buying delay",
   "The change you are thinking about (optional)"
  ],
  "prerequisites": [
   "Purchase tracking that works in Meta Ads Manager"
  ],
  "output": [
   {
    "name": "Basis",
    "contains": "The dates, attribution window, currency, break-even and spend limit it used, or MISSING."
   },
   {
    "name": "Where the result comes from",
    "contains": "Whether a weak total comes from one campaign, ad set or a few ads."
   },
   {
    "name": "Ad table",
    "contains": "Every ad with spend, purchases, cost per sale, its mark and the proof for it."
   },
   {
    "name": "Clues",
    "contains": "What click, cost and watch figures suggest for each flagged ad."
   },
   {
    "name": "Changes in order",
    "contains": "Each change with its evidence, risk, prior setting, how it will be judged, review date and undo step."
   },
   {
    "name": "Replacement brief",
    "contains": "When the creative is the gap, a brief for a new hook, angle, proof and format."
   },
   {
    "name": "Missing and not run",
    "contains": "Anything you did not give, and any check that could not run."
   }
  ]
 },
 "output_shape": "BASIS  dates <from to> vs <from to> | time zone <tz> | currency <cur> | attribution <window> | break-even cost per sale <$ or MISSING> | spend limit with no purchase <$ or MISSING>\nWHERE THE RESULT COMES FROM  <campaign finding> | <ad set finding> | <ad finding>\nAD TABLE\n<level> | <name> | spend | purchases | revenue | cost per sale | vs break-even | MARK | proof\n(MARK = maintain | gather more evidence | investigate | creative refresh | proposed pause)\nCLUES  <click, cost, watch and cart notes for each flagged ad>\nCHANGES IN ORDER\n<n> | <change> | evidence <x> | risk <x> | prior setting <x> | judge by <metric, window> | review on <date> | undo <how>\nREPLACEMENT BRIEF  <only if creative is the gap: hook, angle, proof, format>\nMISSING AND NOT RUN  <list>",
 "how_to_use": [
  "Open the skill in Claude, ChatGPT or Gemini. If you have not added it, copy it and paste it into a new chat.",
  "In Meta Ads Manager, set the date range and export your results at ad level. Export the period before it too.",
  "Paste both exports. Add your break-even cost per sale, your spend limit for an ad with no purchase and how long your buyers take to buy.",
  "Describe the change you are thinking about, or ask it to propose changes. Write \"propose only\" if you want nothing changed for you.",
  "Read the \"where the result comes from\" part first. Check any pause in Ads Manager yourself before you act.",
  "Make one change at a time, note the date, and come back on the review date with fresh numbers."
 ],
 "checks": [],
 "next": [
  {
   "name": "Meta delivery troubleshooter",
   "url": "https://useaiblocks.com/skills/meta-delivery-troubleshooter",
   "why": "Read your ad results"
  }
 ],
 "source": null,
 "credits": [],
 "files": [
  "references/worked-example.md"
 ],
 "links": {
  "page": "https://useaiblocks.com/skills/meta-optimization-of-existing-ad-campaigns-planner",
  "markdown": "https://useaiblocks.com/skills/meta-optimization-of-existing-ad-campaigns-planner.md",
  "json": "https://useaiblocks.com/skills/meta-optimization-of-existing-ad-campaigns-planner.json",
  "instructions": "https://useaiblocks.com/skills/meta-optimization-of-existing-ad-campaigns-planner/SKILL.md",
  "download": "https://useaiblocks.com/skills/meta-optimization-of-existing-ad-campaigns-planner.zip",
  "api_item": "https://useaiblocks.com/api/v1/items/meta-optimization-of-existing-ad-campaigns-planner",
  "api_document": "https://useaiblocks.com/api/v1/documents/skill/meta-optimization-of-existing-ad-campaigns-planner",
  "mcp": "https://useaiblocks.com/mcp"
 }
}
