# Ads Audit
Use this skill to produce a client-facing paid advertising and tracking health audit. The output should help a business decide what to fix first so paid spend can create better leads, sales, pipeline, or conversion.
This is the client-facing counterpart to `/paid-ads`, `/analytics-tracking`, `/ad-creative`, `/marketing-roi`, and Conversint's internal `/fb-ads` loop.
Before intake, read `references/skill-operating-standards.md`. This skill owns the audit deliverable; platform implementation, tracking fixes, creative production, ROI proof, CRM logging, and project-task updates are handoffs to the owning skills rather than work this skill performs directly.
Scope
Audit any combination of:
- Google Ads, Search, Performance Max, YouTube, Demand Gen
- Meta / Facebook / Instagram
- LinkedIn Ads
- TikTok Ads
- Microsoft Ads
- Apple Search Ads
- Amazon Ads
- GA4, GTM, pixels, server-side events, CAPI, enhanced conversions
- Landing pages, forms, UTMs, CRM source capture
- Cross-platform attribution, budget allocation, creative fatigue, funnel drop-off
If the client uses a platform not listed, still audit the shared fundamentals: tracking, offer, landing page, audience, budget, creative, and source-to-revenue path.
Required References
Load these before analysis:
- `references/skill-operating-standards.md`
- `references/client-deliverable-standards.md`
- `references/output-paths.md`
- `references/conversint-brand.md`
- `references/org/identity.md`
- `references/org/anti-patterns.md`
- `references/paid-ads-audit-engine.md`
- `references/ad-platform-audit-coverage.md`
- `references/value-benchmarks.md` before using reusable CAC, CPL, CTR, CVR, ROAS, attribution, conversion-rate, or industry paid-media benchmark claims.
- `references/digital-marketing-funnel-best-practices.md` when the audit covers the ad promise, paid landing page, CTA, form, offer, or conversion path.
Load when relevant:
- `references/docx-build-conventions.md` for DOCX or Both.
- `references/org/pricing.md` if the audit discusses investment, fees, budgets as service scope, or value-based commercial language.
- Customer files under `customers/<Customer Name>/` when the client already exists.
- `references/active-projects.md` and the relevant project ledger if this is active delivery work.
Start Of Run
Follow `references/client-deliverable-standards.md`:
- Ask for output format: Branded DOCX, Markdown, or Both.
- Ask who the deliverable is from: Patrick, Daniel, or both.
- Ask only missing audit inputs that materially change the work.
If the user already provided the format or preparer, do not re-ask that item.
Minimum useful intake:
- Client name.
- Website or landing page URL.
- Platforms in use.
- Goal: leads, calls, bookings, demos, purchases, app installs, pipeline, or revenue.
- Spend level and date range.
- Available evidence: platform exports, screenshots, account access, GA4, CRM/source data, landing pages, creative assets.
- Whether the output is for a prospect, active client, or internal sales follow-up.
If data is thin, proceed with a limited audit and clearly label confidence. Do not invent account findings.
Evidence Handling
Accept any mix of:
- Platform exports or screenshots.
- Pasted metrics.
- Public ads/ad library links.
- Landing page URLs.
- GA4 screenshots/exports.
- CRM lead/source data.
- Form submission logs.
- Pixel helper/tag assistant screenshots.
- Client notes about lead quality or sales follow-up.
Use sources this way:
- Cite external research, platform docs, and public data per `client-deliverable-standards.md`.
- For client-provided exports/screenshots, cite the file path or describe the provided artifact in an Evidence section.
- Separate observed facts from assumptions and recommendations.
- When external research produces reusable paid-media benchmarks, append them after the audit is saved through `lib/value_benchmarks.py`, run each printed `commit_recommended=` command, and do not store named ad-platform pricing there unless it is a broader benchmark rather than platform-specific pricing.
Analysis Workflow
- **Confirm audit confidence.** High / Medium / Low / Not auditable.
- **Map the funnel.** Spend -> impressions -> clicks -> landing-page views -> CTA/form starts -> leads/orders -> qualified outcomes -> revenue/pipeline.
- **Select platform modules.** Use `references/ad-platform-audit-coverage.md` to decide which platform checks apply.
- **Score the system.** Use `references/paid-ads-audit-engine.md` for health scoring and diagnostic dimensions.
- **Diagnose the first blocker.** Tracking, attribution, creative, landing page, budget, audience, or follow-up.
- **Prioritize fixes.** Critical / High / Medium / Low, with quick wins first.
- **Connect to business impact.** Do not call leads ROI unless qualified pipeline or revenue evidence exists; route ROI proof to `/marketing-roi` when needed.
- **Create the action plan.** Name the one change next, then the 30/60/90-day improvement path.
Scoring
Always provide:
- Overall Ads Health Score when enough data exists.
- Readiness Gap Score when data is too incomplete for a real health score.
- Per-platform scores for active platforms with usable evidence.
- Tracking and attribution confidence.
Default score categories:
| Category | Weight | |---|---:| | Tracking and attribution | 30% | | Landing page and conversion path | 20% | | Creative and message quality | 20% | | Budget, bidding, and structure | 15% | | Audience, targeting, and exclusions | 10% | | Follow-up and source-to-revenue path | 5% |
Adjust weights when a platform or business model makes a category clearly more important. State the adjustment.
Output Structure
Use this structure for Markdown and DOCX content:
```markdown # <Client> - Paid Ads Audit
## Bottom Line ## Audit Scope And Confidence ## Current Funnel ## Ads Health Score ## Platform Findings ## Tracking And Attribution Findings ## Landing Page And Conversion Path ## Creative And Message Findings ## Budget, Bidding, And Audience Findings ## Quick Wins ## 30 / 60 / 90 Day Action Plan ## What To Measure Next ## Access Or Data Still Needed ## Sources And Evidence ```
For each finding include:
```markdown ### <Finding> - Severity: - Evidence: - Why it matters: - Recommended fix: - Owner: - Expected signal: ```
Output Path
Save Markdown to:
```text customers/<Customer Name>/<Customer Name> - Paid Ads Audit.md ```
If the client is a cold prospect and the user has not asked to create a customer folder, ask whether to use `customers/Discovered Opps/` or a full customer folder.
DOCX path uses the same base filename:
```text customers/<Customer Name>/<Customer Name> - Paid Ads Audit.docx ```
Commit the Markdown with:
```bash scripts/commit-md-to-main.sh \ "customers/<Customer Name>/<Customer Name> - Paid Ads Audit.md" \ "Update Paid Ads Audit: <Customer Name>" ```
Return the GitHub URL as the primary shareable result. Do not auto-upload to Google Drive; Drive upload is user-driven through `/gdrive`.
Handoffs
After the audit:
- Tracking fixes -> `/analytics-tracking`
- Campaign restructure, budget, targeting -> `/paid-ads`
- Creative rewrite or new variants -> `/ad-creative`
- ROI proof or forecast -> `/marketing-roi`
- Learning capture -> `/marketing-learning-loop`
- Project task capture for active clients -> `/project-manager`
- CRM opportunity notes for sales-stage prospects -> `/crm`
Quality Rules
- Do not overstate causality. Platform-reported conversions are not finance-grade proof by default.
- Do not recommend scaling spend while tracking is broken or unknown.
- Do not call an ad test a failure when the conversion path is unverified.
- Make the first recommendation the highest-leverage next fix, not a long wish list.
- Keep client-facing language plain and outcome-oriented.
- Avoid banned terms from `references/org/anti-patterns.md` and `references/conversint-brand.md`.
- If account access is missing, produce an access request and partial-audit plan rather than pretending to have account-level certainty.