{
 "schema": "aiblocks-page/1",
 "id": "build-the-display-placement-auditor-builder-prompt",
 "type": "prompt",
 "name": "Display ad audit tool planner",
 "summary": "Get a coding brief that finds Google Ads Display placements wasting spend, with proposed exclusions and the numbers behind each. Read-only.",
 "headline": "Display ad audit tool planner",
 "subhead": "Give your coding assistant your project and your Google Ads Display account. It plans a read-only module. The module reads the placement report, flags apps and sites that spent with no results, and lists exclusions to consider. It never changes your account.",
 "job": {
  "id": "build-software",
  "name": "Build and ship software"
 },
 "level": "intermediate",
 "thinking": "medium",
 "tested": true,
 "updated": "2026-11-03",
 "first_published": "2026-10-25",
 "inputs": [
  {
   "type": "codebase",
   "required": true,
   "label": "Codebase",
   "what": "a project's code, in a folder or repo the AI can open"
  }
 ],
 "outputs": [
  {
   "type": "code_change",
   "required": true,
   "label": "Code change",
   "what": "a change to the code, with what it fixes and how it was checked"
  }
 ],
 "you_give": [
  "Your code project, or its main folders and database schema",
  "The customer ID of the Display account, and the names of the credentials your project uses (never the secrets)",
  "The date range to review (30 days if you don't say)",
  "Your target ROAS or CPA for each campaign (optional)",
  "Spend limits you accept, or a yes to the starting limits in the brief (optional)"
 ],
 "you_get": [
  "A list of setup gaps before any code is written",
  "A read-only placement review module that fits your project",
  "Five placement buckets with limits you can change",
  "Proposed exclusions, each with spend, clicks and conversions",
  "Test cases and a sample result built from made-up rows"
 ],
 "use_when": [
  "Display spend is rising and you can't tell which sites or apps are getting it.",
  "You check the placement report by hand each week and want it built into your own tool.",
  "Your team wants a list of exclusions with the numbers behind each, not a hunch.",
  "You already have Google Ads code in a project and want the placement check to fit it."
 ],
 "skip_when": [
  "Your account runs Search or Video campaigns only, or you want a one-time review with no code. Paste your export into the Google Ads report auditor instead.",
  "You want to review video ad results. Use the Video ad analysis code planner.",
  "You want it to add the exclusions for you. It only proposes them. You add them in Google Ads yourself.",
  "You have no Google Ads API access yet. Start with the Google Ads OAuth setup planner, then the Google Ads developer access checker."
 ],
 "output_sample": {
  "input": [
   "Your code project, or its main folders and database schema",
   "The Display account's customer ID and the names of your Google Ads credentials",
   "The date range, and your target ROAS or CPA (optional)"
  ],
  "prerequisites": [
   "A coding assistant that can open your project, such as Claude Code or Codex",
   "Google Ads API access with read permission, set up before you run the module"
  ],
  "output": [
   {
    "name": "Setup gaps",
    "contains": "Missing schemas, permissions and field names to check before any code is written."
   },
   {
    "name": "Function signature",
    "contains": "The inputs and result type of the placement review function in your project."
   },
   {
    "name": "Sample DiagnosticOutput",
    "contains": "Findings from made-up rows, each with a check ID, severity, evidence and one proposed exclusion."
   },
   {
    "name": "Top 10 placements to consider excluding",
    "contains": "A paste-ready list with cost, clicks, conversions and the reason for each."
   },
   {
    "name": "Test results",
    "contains": "Tests for each bucket and roll-up, or a plain note that none were run."
   }
  ]
 },
 "output_shape": "SETUP GAPS\n<what is missing: schemas, permissions, field names to confirm>\n\nFUNCTION SIGNATURE\nauditDisplayPlacements(<input>) -> DiagnosticOutput\n\nSAMPLE DiagnosticOutput (made-up rows)\n<findings with checkId, severity, evidence and proposal>\n\nTOP 10 PLACEMENTS TO CONSIDER EXCLUDING\n<placement> | <cost> | <clicks> | <conversions> | <reason>\n\nTEST RESULTS\n<passed, failed, or not run and why>\n\nNEXT STEP\n<the smallest useful step>",
 "how_to_use": [
  "Open your coding assistant, such as Claude Code or Codex, in your project folder. A plain chat AI can only write a plan.",
  "Paste the skill, then add the items under \"What you need\". Never paste a secret key.",
  "Read the setup gaps first. Fix each one, or tell the assistant to go on with placeholders.",
  "Say yes to each starting limit or change it. A wrong limit gives wrong flags.",
  "Read every change before you accept it. Run the tests in your own project.",
  "Treat the exclusion list as proposals. Check a few placements in Google Ads, then add the exclusions yourself."
 ],
 "checks": [],
 "next": [
  {
   "name": "Simple code coach",
   "url": "https://useaiblocks.com/skills/simple-code-coach",
   "why": "Build it"
  }
 ],
 "source": null,
 "credits": [],
 "files": [
  "references/worked-example.md"
 ],
 "links": {
  "page": "https://useaiblocks.com/prompts/build-the-display-placement-auditor-builder-prompt",
  "markdown": "https://useaiblocks.com/prompts/build-the-display-placement-auditor-builder-prompt.md",
  "json": "https://useaiblocks.com/prompts/build-the-display-placement-auditor-builder-prompt.json",
  "instructions": "https://useaiblocks.com/skills/build-the-display-placement-auditor-builder-prompt/SKILL.md",
  "download": "https://useaiblocks.com/skills/build-the-display-placement-auditor-builder-prompt.zip",
  "api_item": "https://useaiblocks.com/api/v1/items/build-the-display-placement-auditor-builder-prompt",
  "api_document": "https://useaiblocks.com/api/v1/documents/prompt/build-the-display-placement-auditor-builder-prompt",
  "mcp": "https://useaiblocks.com/mcp"
 }
}
