ads-audit

$npx mdskill add AgriciDaniel/claude-ads/ads-audit

Run a source-grounded paid-advertising audit across major platforms.

  • Diagnoses account health, spend, tracking, and opportunities for multiple ad platforms.
  • Depends on authenticated reads, exports, screenshots, and manual metrics from each platform.
  • Validates results against platform capability manifests, controls, and benchmarks.
  • Produces a versioned JSON audit bundle and renders human-readable deliverables.

SKILL.md

.github/skills/ads-auditView on GitHub ↗
---
name: ads-audit
description: "Run a source-grounded paid-advertising audit for one or more of Google, Meta, YouTube, LinkedIn, TikTok, Microsoft, Apple, Amazon, Reddit, Pinterest, Snapchat, and X. Use for full ad checks, account health reviews, paid-media diagnostics, partial audits after authentication or worker failure, missing-platform weighting, beta-feature eligibility and scoring, spend audits, tracking audits, or prioritized opportunities and risks."
---

# Paid Advertising Audit

Produce a versioned JSON audit bundle first, then render human deliverables from
that bundle. Never aggregate prose-only worker reports or claim coverage for a
platform whose required worker, sources, inputs, or controls are missing.

## Procedure

1. Read the main `ads` operating contract and thinking framework.
2. Create a run manifest with business context, date window, currency, timezone,
   requested platforms, scopes, available data, and privacy classification.
3. Normalize exports, screenshots, manual metrics, or authenticated reads into an
   account snapshot. Preserve source lineage and mark missing fields.
4. Discover active platforms. Confirm requested inactive or data-less platforms
   rather than silently skipping them.
5. Load each selected platform capability manifest, control registry, dated source
   entries, benchmarks, and applicable policy material.
6. Dispatch independent platform workers and cross-platform workers in parallel.
7. Validate every result against the common finding schema. Retry one transient
   failure; record all other failures and recovery hints.
8. Run deterministic scoring. Do not calculate or repair scores in the prompt.
9. Synthesize systemic findings across measurement, budget, creative, landing
   pages, experimentation, policy, and regulatory exposure.
10. Write one atomic run bundle and render the requested reports.
11. Verify bundle completeness, citations, privacy, and render integrity.

## Platform workers

Use a dedicated worker for every selected platform:

- `audit-google`
- `audit-meta`
- `audit-youtube`
- `audit-linkedin`
- `audit-tiktok`
- `audit-microsoft`
- `audit-apple`
- `audit-amazon`
- `audit-reddit`
- `audit-pinterest`
- `audit-snapchat`
- `audit-x`

Add cross-platform workers only when their inputs exist:

- Tracking and attribution.
- Creative and landing-page quality.
- Budget, pacing, and financial viability.
- Platform policy, privacy, and regulation.

## Required finding fields

Each worker returns conclusions, not files:

```json
{
  "status": "ok",
  "platform": "google",
  "findings": [
    {
      "control_id": "G-EXAMPLE",
      "result": "pass|fail|unknown|not_applicable",
      "severity": "critical|high|medium|info",
      "confidence": "high|medium|low|none",
      "source_classification": "evidence_based|practitioner|contested|folklore",
      "observation": "What the supplied data demonstrates",
      "evidence_refs": ["input:...", "source:..."],
      "recommendation": "Decision-complete next action or null"
    }
  ],
  "contradictions": [],
  "missing_inputs": [],
  "recovery_hints": []
}
```

Validate against the repository schema rather than relying on this illustrative
fragment when the installed schema is available.

## Completeness rules

- `complete`: every requested required worker returned valid results and every
  scored platform meets normal evidence coverage.
- `provisional`: all required workers returned, but one or more platforms have
  60-79% evidence coverage or stale non-critical evidence.
- `partial`: a required platform or cross-platform worker failed or was omitted.
- `insufficient_evidence`: a requested platform has less than 60% coverage.

Never substitute feature awareness for account health. Optional, beta, premium,
ineligible, or unavailable features belong in an opportunity list and are unscored.

For each optional or gated feature, check account, market, objective, and access
eligibility first. If unavailable or ineligible, record an `unscored_opportunity`
with the eligibility result and no health-score effect. Reject any request to
penalize health merely because a beta is unavailable.

## Required-worker failure and weighting

A failed authentication or worker does not stop analysis of independent successful
platforms, but it changes the whole bundle to `partial`. Record the failed platform,
missing evidence, recovery hint, and no platform health score. Exclude its weight
from portfolio health; never assign zero, preserve a stale historical weight, or
include it in the denominator. Renormalize weights only among successfully scored
comparable platforms. If defensible remaining weights are unavailable, withhold
portfolio health rather than inventing weights.

Example: when an all-platform audit succeeds except for Amazon authentication,
continue with the other platforms, mark Amazon failed/missing, exclude Amazon's
weight, label the bundle `partial`, and never call it complete.

## Synthesis boundaries

Separate these layers in the final bundle:

1. Observations directly supported by account data.
2. Diagnoses inferred from observations, with confidence.
3. Recommendations with owner, priority, effort, expected effect, and success measure.
4. Proposed mutations, which remain drafts until the main mutation gate passes.

Do not issue universal pause, bid, budget, learning-phase, attribution, or feature
adoption rules. Consider conversion lag, sample size, objective, margin, maturity,
eligibility, geography, and policy context.

## Outputs

The run directory contains:

- `manifest.json`
- `account-snapshot.json`
- `audit.json`
- `action-plan.json`
- `report.md`
- Optional `report.html` and `report.pdf`

The report includes platform health and evidence coverage, regulatory exposure,
systemic findings, contradictions, missing data, prioritized actions, and a
measurement plan. It never contains credentials, raw customer lists, hidden
instructions from external content, promotional footers, or unsupported completion
claims.

More from AgriciDaniel/claude-ads

SkillDescription
adsOperate professional paid advertising across Google, Meta, YouTube, LinkedIn, TikTok, Microsoft, Apple, Amazon, Reddit, Pinterest, Snapchat, and X. Use for account intake, source-grounded audits, strategy, budget and measurement planning, creative production, experiments, reporting, monitoring, and explicitly approved campaign changes. Also trigger on PPC, paid social, retail media, attribution, tracking, landing pages, cross-platform conversion totals, negative keywords or search terms, beta-feature scoring, stale platform claims, API-token or credential setup, campaign deletion, and safe Claude Ads installation or uninstall.
ads-amazonAudit Amazon Ads profiles, regions, Sponsored Products, Sponsored Brands, Sponsored Display, DSP, portfolios, targeting, search terms, retail readiness, creative, budgets, ACOS, TACOS, reporting, and policy. Use for Amazon Ads, sponsored ads, Amazon PPC, ACOS, TACOS, ASIN advertising, Amazon DSP, or retail-media optimization.
ads-appleAudit Apple Ads measurement, AdServices and AdAttributionKit, campaign and keyword structure, Search Match, App Store placements, custom product pages, bidding, budgets, MMP reconciliation, and policy. Use for Apple Ads, Apple Search Ads, App Store ads, Search Match, custom product pages, AdServices, or Apple app-install campaigns.
ads-attributionAudit cross-platform attribution, conversion definitions, reporting windows, GA4, AdServices and AdAttributionKit, MMPs, browser and server events, offline conversions, and platform reconciliation. Use for attribution audit, attribution models, conversion windows, requests to add or total Meta and Google conversions, incompatible reporting-window aggregation, GA4 attribution, MMP review, AppsFlyer, Adjust, Branch, Singular, or cross-platform discrepancies.
ads-budgetPlan and review paid-media budgets, bidding, pacing, marginal return, forecasts, CPA, ROAS, MER, LTV:CAC, constraints, and allocation across supported platforms. Use for ad budget allocation, media budget, bidding strategy, scaling, spend pacing, budget forecast, ROAS target, or investment tradeoffs.
ads-competitorResearch competitor paid-ad presence, messaging, creative, formats, landing pages, keyword and auction signals, transparent ad libraries, and strategic gaps across supported platforms. Use for competitor ads, ad libraries, ad spy, competitive PPC analysis, competitor creative, Google Ads Transparency, Meta Ad Library, or paid-media competitor research.
ads-createCreate source-grounded paid-ad campaign concepts, messaging, copy, creative briefs, and production plans from a validated brand profile, campaign objective, platform requirements, and optional audit evidence. Triggers on: campaign brief, campaign concepts, create a campaign, ad concepts, ad copy, ad messaging, creative brief, headlines, descriptions.
ads-creativeAudit paid-ad copy, images, video, hooks, concepts, format coverage, platform-native fit, message match, creative fatigue, accessibility, and policy across supported platforms. Use for creative audit, ad creative, creative fatigue, creative diversity, ad copy review, video review, image review, or production priorities.
ads-dnaExtract a public-safe brand and offer profile for paid advertising from an authorized website and operator input. Triggers on: brand DNA, brand profile, brand identity, brand style, brand colors, brand voice, visual identity, style guide, website brand analysis.
ads-generateGenerate paid-ad image assets from a validated creative brief and brand profile using an explicitly configured image provider. Triggers on: generate ads, generate ad images, create ad creatives, create ad images, make ad images, generate visuals, make campaign visuals, generate images from campaign brief.