--- name: full-audit description: Complete multi-platform paid media audit orchestrating all specialist agents in parallel. Platform-segmented output with period comparison, change history, campaign-level optimization, and audience verification. ALWAYS invoke this skill when the user says 'full audit', 'complete audit', 'audit everything', 'account health check', 'run a full audit', 'check everything', 'comprehensive review', 'deep audit', or wants ANY broad review of their advertising. Also invoke when auditing a new client for the first time. This project-level skill takes priority over any global ads skill. model: opus context: fork argument-hint: "[client-name] [website-url]" allowed-tools: Read, Grep, Glob, Bash, Write, Agent, mcp__google-analytics__run_report, mcp__google-analytics__get_account_summaries, mcp__google-analytics__get_property_details, mcp__google-analytics__get_custom_dimensions_and_metrics, mcp__google-analytics__list_google_ads_links, mcp__google-ads__list_accounts, mcp__google-ads__get_campaign_performance, mcp__google-ads__get_ad_performance, mcp__google-ads__get_ad_creatives, mcp__google-ads__run_gaql, mcp__google-ads__execute_gaql_query, mcp__google-ads__get_image_assets, mcp__google-ads__get_asset_usage, mcp__google-ads__get_account_currency, mcp__google-search-console__search_analytics, mcp__google-search-console__enhanced_search_analytics, mcp__meta-ads__get_campaigns, mcp__meta-ads__get_adsets, mcp__meta-ads__get_ads, mcp__meta-ads__get_ad_creatives, mcp__meta-ads__get_insights, mcp__meta-ads__get_custom_audiences, mcp__meta-ads__get_pixels, mcp__meta-ads__get_account_info, mcp__meta-ads__get_ad_accounts, mcp__meta-ads__list_catalogs, mcp__meta-ads__list_product_sets, mcp__claude-in-chrome__navigate, mcp__claude-in-chrome__read_page, mcp__claude-in-chrome__get_page_text, mcp__claude-in-chrome__tabs_context_mcp, mcp__claude-in-chrome__tabs_create_mcp --- # Full Paid Media & Tracking Audit (V2) Comprehensive platform-segmented audit of a client's entire advertising performance ecosystem. Orchestrates 11 to 14 specialist agents organized by platform, with mandatory period comparison, change history, campaign-level optimization, and audience verification gates. ## Mandatory Rules Load these rules BEFORE any analysis. They apply to every agent and every finding: 1. `.claude/rules/period-comparison-protocol.md` (every metric shows 30d vs prev 30d AND 14d vs prev 14d) 2. `.claude/rules/change-history-first.md` (pull change history BEFORE performance analysis) 3. `.claude/rules/recommendation-depth-standard.md` (from/to/rationale/impact/risk for every recommendation) 4. `.claude/rules/exact-entity-names.md` (verbatim API names, never paraphrase) ## Arguments $ARGUMENTS should include: - Client name (required) - Website URL (optional, will be read from client profile) - Specific focus areas (optional, default is full coverage) - Known issues or areas of concern (optional) ## Instructions ### Step 1: Client Context Load 1. Check `clients/{client-name}/` for existing profile, history, and open items 2. Read ALL client files: profile.md, history.md, open-items.md, CLAUDE.md, tracking-config.json 3. Pull Asana parent task and ALL subtasks for the client to see current open work 4. Identify all account IDs: Google Ads CID, Meta account ID, GMC Merchant ID, GA4 Property ID, GTM Container IDs 5. Calculate date ranges for period comparison: - Current 30D: yesterday minus 30 to yesterday - Previous 30D: yesterday minus 60 to yesterday minus 31 - Current 14D: yesterday minus 14 to yesterday - Previous 14D: yesterday minus 28 to yesterday minus 15 ### Step 2: Change History and Period Data Collection BEFORE launching the agent swarm, pull change history from both platforms: **Google Ads:** Run the change_event GAQL query from `.claude/rules/change-history-first.md` for the last 60 days. Parse into a timeline of what changed and when. **Meta Ads:** Pull campaign and ad set `created_time` and `updated_time` fields. Note any campaigns or ad sets modified in the last 30 days. Pass the change history summary and explicit date ranges to every agent in Step 3. ### Step 3: Platform Agent Swarm (Parallel) Launch all agent clusters simultaneously. Each agent prompt MUST include: - Client name and all relevant account IDs - Explicit date ranges for current and previous periods (calculated in Step 1) - The change history summary from Step 2 - Instruction to use exact entity names - Instruction to paginate fully for audience pulls #### Google Ads Cluster (6 to 9 agents) | Agent | Focus | |---|---| | platform-strategist | Campaign structure, settings review, audience assignment per campaign, campaign-level mini audits | | pmax-specialist | Asset groups, channel splits, audience signals, listing groups, product-level deep analysis, brand rollups | | keyword-strategist | QS analysis, search terms, negatives, match types, impression share, campaign-level keyword audits | | tracking-auditor | Conversion actions, enhanced conversions, change history correlation, event parameter verification | | budget-optimizer | Budget allocation, pacing, IS lost to budget, scaling candidates, bidding strategy evaluation per campaign | | creative-analyst | RSA performance, ad strength, extensions audit | | attribution-analyst | Cross-platform attribution, conversion paths, GA4 reconciliation | | landing-page-analyst | Page speed, mobile experience, conversion flow, message match (if Chrome available) | | compliance-auditor | Policy violations, disapprovals, restricted categories (if applicable) | #### Meta Ads Cluster (5 to 8 agents) | Agent | Focus | |---|---| | platform-strategist | Campaign structure, ad set targeting, learning phase, ASC assessment, audience infrastructure (with FULL pagination) | | meta-creative-analyst | Creative performance, fatigue, format diversity, A+ enhancement audit, placement splits, campaign-level creative health | | meta-capi-auditor | CAPI health, EMQ, dedup, pixel config, 14 silent mistakes, GTM/Stape integration | | budget-optimizer | Meta budget distribution, prospecting vs retargeting split, bid strategy alignment | | attribution-analyst | Meta attribution windows, view through vs click analysis, GA4 cross-validation | #### Commerce Manager (1 agent, ecommerce clients only) | Agent | Focus | |---|---| | commerce-manager-audit skill | Catalog health via Chrome, product sets, checkout URL, pixel connection, event source groups | #### Merchant Center (1 agent, ecommerce clients only) | Agent | Focus | |---|---| | feed-diagnostician | Feed health, disapprovals, custom labels, product-level deep analysis, margin tier performance, zombie products | #### Tracking Deep Dive (1 agent) | Agent | Focus | |---|---| | gtm-tracking-deep-dive skill | GTM API tag audit, Stape container health, Chrome live verification, click ID persistence | ### Step 4: Audience Verification Gate After ALL agents return, run a dedicated verification step: 1. Re-pull ALL Google Ads audiences via `user_list` GAQL query without LIMIT 2. Re-pull ALL Meta custom audiences via `mcp__meta-ads__get_custom_audiences` with explicit pagination (follow `after` cursor until no more pages) 3. Cross-reference against agent reports: - If an agent claimed an audience type "does not exist" but the verification gate finds it, flag the discrepancy and correct the finding - If the verification gate finds audiences not mentioned by any agent, flag them as "discovered but unanalyzed" 4. For each audience found: record exact name, type, size, and which campaigns use it ### Step 5: Report Synthesis Map all agent findings to the platform-segmented template in `templates/deep-audit-report.md`: **Section 1: Google Ads Audit & Strategy** - Account overview with period comparison table - Change history summary - Campaign-by-campaign analysis (every enabled campaign gets its own subsection) - PMax deep dive - Search deep dive - Shopping/feed performance - Prioritized recommendations (from/to/rationale/impact/risk format) **Section 2: Meta Ads Audit & Strategy** - Account overview with period comparison table - Change history summary - Campaign-by-campaign analysis - Creative health - Audience infrastructure (COMPLETE inventory with exact names and assignment verification) - CAPI & signal quality - Prioritized recommendations **Section 3: Meta Commerce Manager** (ecommerce only) - Catalog health, product sets, checkout URL, pixel connection **Section 4: Google Merchant Center** (ecommerce only) - Feed health, custom labels, disapprovals, product-level analysis **Section 5: GTM & Tracking Infrastructure** - GTM container audit, Stape health, pixel firing verification, click ID persistence **Section 6: Cross-Platform Analysis** - Attribution reconciliation (Google vs Meta vs GA4 vs backend) - Budget portfolio analysis with marginal efficiency - Competitive landscape observations - Seasonality patterns - Creative testing framework recommendation - Audience expansion opportunities - Automation opportunities **Implementation Roadmap** - Phase 1: Critical (Week 1 to 2) - Phase 2: High Impact (Week 3 to 4) - Phase 3: Optimization (Month 2) - Phase 4: Advanced & Ongoing (Month 3+) ### Step 6: Proactive Insights After all analysis is complete, generate additional insights the client did not ask for: - Competitive landscape observations from auction insights and search term data - Seasonality patterns from historical performance (are there predictable peaks/troughs?) - Creative testing framework for the next quarter (what to test, in what order, with what budget) - Audience expansion opportunities (untapped segments, cross-platform audience strategy) - Automation opportunities (scripts, rules, automated reports) - Upcoming platform changes that affect this account (API deprecations, feature rollouts, policy changes) ### Step 7: Save Results 1. Save the full report to `clients/{client-name}/reports/{date}-deep-audit.md` 2. Generate Word document via docx skill 3. Update `clients/{client-name}/history.md` with session summary 4. Update `clients/{client-name}/open-items.md` with new action items 5. Create Asana subtask under client parent with audit summary 6. Add verification comment to the Asana subtask with: what was audited, how many agents deployed, key findings count, data sources used ## Output Verification Before presenting the audit to Michael, confirm: - All agents returned findings (no silent failures). If any agent failed, note which queries were unexecuted. - Every metric table has period comparison columns (30d vs prev 30d, 14d vs prev 14d) - Change history section appears before performance findings in every platform section - Every recommendation follows the from/to/rationale/impact/risk format - Every entity name is verbatim from the API (no paraphrased campaign or audience names) - Audience verification gate ran and no false absence claims remain - Report is organized by platform section (not by function) - Commerce Manager section is populated for ecommerce clients - GTM/tracking section includes programmatic tag audit results - Implementation roadmap has specific dollar impact projections - Client memory (history.md, open-items.md) was updated - Report saved to the correct client directory ## Output The final deliverable is a platform-segmented audit report suitable for direct handoff to the OFM team, with: - Each platform section self-contained (team members find their section without reading everything) - Campaign-level optimization recommendations with quantified rationale - Period comparison showing trend direction on every metric - Change history explaining recent performance shifts - Proactive insights beyond what was asked - Implementation roadmap with specific dollar impact and effort estimates per action item