AGENT SKILLBY GOOSEWORKS-AI
Ad to landing page auditor
AT A GLANCE
Ad to landing page auditor is a CRO agent skill from gooseworks-ai. The #1 reason ads get clicks but not conversions: the landing page doesn't deliver on the ad's promise. The gooseworks-ai/goose-skills repository on GitHub has 912 stars and the MIT license. To add it, run npx skills add gooseworks-ai/goose-skills --skill ad-to-landing-page-auditor
- SOURCE REPOSITORY
- gooseworks-ai/goose-skills (opens GitHub in a new tab)
- REPO STARS
- SOURCE REPOSITORY
- LICENSE
- MIT
- SKILL.MD SIZE
- 6.4 KB207 LINES
QUICK ANSWER
- WHAT IT IS01
- The #1 reason ads get clicks but not conversions: the landing page doesn't deliver on the ad's promise. It stands out by giving conversion optimization a defined shape, so the agent asks for better context and returns a more usable result.
- INPUTS02
- Context for conversion optimization: your goals, audience, constraints, and any source material the skill asks for.
- OUTPUT03
- A ready-to-use result for conversion optimization: the analysis, copy, or recommendations the agent produces.
INSTALL
One command adds this skill from its source repository.
npx skills add gooseworks-ai/goose-skills --skill ad-to-landing-page-auditorREAD THE SKILL.MD BELOW BEFORE YOU RUN IT. SKILLS INSTRUCT YOUR AGENT.
SKILL.MD
The full file, as published in the source repository. Copy it, download it or open it on GitHub.
ON THIS PAGE · 12
Ad-to-Landing Page Auditor#
The #1 reason ads get clicks but not conversions: the landing page doesn't deliver on the ad's promise. This skill audits the full click path — from ad copy to landing page experience — and flags every disconnect.
Core principle: A great ad with a mismatched landing page is worse than a mediocre ad with a matched one. Message match is the single biggest conversion lever most startups ignore.
When to Use#
- "Why are my ads getting clicks but no conversions?"
- "Audit my ad-to-landing page flow"
- "Check message match on our campaigns"
- "My conversion rate is low — help me figure out why"
- "Review our landing pages for our ad campaigns"
Phase 0: Intake#
- Ad copy — For each ad, provide:
- Headline(s)
- Body / description text
- CTA text
- Platform (Google Search / Meta / LinkedIn)
- Landing page URLs — The URL each ad points to
- Conversion goal — What should happen after someone clicks? (Demo / Trial / Purchase / Download)
- Known conversion rates? — Current click → conversion rate per ad/LP (if available)
If the user has a CSV export from their ad platform, parse that instead.
Phase 1: Ad Inventory#
Parse the provided ads into:
| Ad ID | Platform | Headline | Body/Description | CTA | Landing Page URL | Conv Rate (if known) |
|---|
Phase 2: Landing Page Audit#
For each unique landing page URL, fetch the page content:
fetch_webpage: [landing_page_url]If fetch_webpage is not available, use curl to retrieve the page HTML.
Extract and score:
2A: Content Elements#
| Element | Found? | Content |
|---|---|---|
| Hero headline | [Y/N] | "[Text]" |
| Subheadline | [Y/N] | "[Text]" |
| Primary CTA | [Y/N] | "[Button text]" |
| CTA above fold | [Y/N] | — |
| Social proof | [Y/N] | [Logos / testimonials / metrics] |
| Benefit list | [Y/N] | [Key benefits listed] |
| Form / Sign-up | [Y/N] | [Field count: N] |
| Video | [Y/N] | — |
| Trust signals | [Y/N] | [Security badges, guarantees] |
2B: Message Match Scoring#
For each ad → landing page pair, score on:
| Dimension | Score (1-10) | Criteria |
|---|---|---|
| Promise continuity | [X] | Does the LP headline deliver on the ad's promise? |
| Language match | [X] | Does the LP use the same words/phrases as the ad? |
| Visual continuity | [X] | Does the LP feel like a continuation of the ad? (Not assessable for search) |
| CTA alignment | [X] | Does the LP's ask match what the ad implied? |
| Specificity match | [X] | If the ad was specific ("for sales teams"), is the LP specific too? |
| Emotional match | [X] | If the ad used fear/urgency, does the LP carry that forward? |
Message Match Score: [Average/60]
Scoring Guide#
| Score | Rating | Meaning |
|---|---|---|
| 50-60 | Excellent | Strong match — LP delivers on every ad promise |
| 40-49 | Good | Minor disconnects but overall coherent |
| 30-39 | Needs work | Noticeable gaps — visitor has to hunt for relevance |
| 20-29 | Poor | Ad and LP feel like different products |
| Below 20 | Critical | Complete mismatch — fix immediately |
Phase 3: Conversion Friction Analysis#
Beyond message match, assess landing page conversion friction:
| Friction Type | Check | Status |
|---|---|---|
| Load time | Does the page feel heavy/slow? (Asset count proxy) | [Fast/Slow/Unknown] |
| Form length | How many fields before conversion? | [N fields] — [Appropriate/Too many] |
| CTA clarity | Is there one clear CTA or competing actions? | [Clear/Cluttered] |
| Above-fold conversion | Can someone convert without scrolling? | [Yes/No] |
| Social proof placement | Is proof near the CTA? | [Yes/No] |
| Navigation distraction | Does the LP have full site nav? (Should be minimal) | [Minimal/Full nav] |
| Mobile experience | Any mobile-unfriendly elements? | [Good/Issues] |
Phase 4: Output Format#
# Ad-to-Landing Page Audit — [Product/Client] — [DATE]
Ads audited: [N]
Unique landing pages: [N]
Platform(s): [Google / Meta / LinkedIn]
Overall message match: [Score/60] — [Rating]
---
## Executive Summary
[3-4 sentences: Overall finding, biggest disconnect, top recommendation, estimated conversion impact]
---
## Audit Results by Ad → Landing Page Pair
### Ad 1: "[Ad headline excerpt]"
**Platform:** [Google Search / Meta / LinkedIn]
**Ad copy:**
> Headline: "[text]"
> Body: "[text]"
> CTA: "[text]"
**Landing page:** [URL]
> LP headline: "[text]"
> LP subhead: "[text]"
> LP CTA: "[button text]"
**Message Match Score: [X/60] — [Rating]**
| Dimension | Score | Issue |
|-----------|-------|-------|
| Promise continuity | [X/10] | [Specific finding] |
| Language match | [X/10] | [Specific finding] |
| CTA alignment | [X/10] | [Specific finding] |
| Specificity match | [X/10] | [Specific finding] |
| Emotional match | [X/10] | [Specific finding] |
**Disconnect found:** [Specific description of mismatch]
**Recommended fix:** [Specific change to ad or LP]
### Ad 2: ...
---
## Landing Page Friction Report
### [Landing Page URL]
| Friction Point | Status | Impact | Fix |
|---------------|--------|--------|-----|
| [Friction] | [Red/Yellow/Green] | [High/Med/Low] | [Specific fix] |
---
## Priority Fixes
### Critical (Fix This Week)
1. **[Ad/LP pair]:** [Specific mismatch] → [Specific fix]
- Est. conversion impact: [X% improvement]
### Important (Fix This Month)
2. **[Issue]:** [Fix]
### Nice-to-Have
3. **[Issue]:** [Fix]
---
## Rewrite Suggestions
### For [Ad or LP with worst match]:
**Current ad headline:** "[current]"
**Suggested ad headline:** "[rewrite that matches LP]"
OR
**Current LP headline:** "[current]"
**Suggested LP headline:** "[rewrite that matches ad]"Save to ad-lp-audit-[YYYY-MM-DD].md in the current working directory (or user-specified path).
Cost#
| Component | Cost |
|---|---|
| Landing page fetching | Free |
| Analysis | Free (LLM reasoning) |
| Total | Free |
Tools Required#
- fetch_webpage or curl — for landing page analysis
- No API keys required
Trigger Phrases#
- "Audit my ad-to-landing page match"
- "Why is my conversion rate so low?"
- "Check message match on our campaigns"
- "Do our landing pages match our ads?"
- "Run a CRO audit on our ad funnels"
FAQ
07 QUESTIONS
01What is the Ad to landing page auditor agent skill?
The #1 reason ads get clicks but not conversions: the landing page doesn't deliver on the ad's promise. It is listed under CRO and paid ads in the 100xLab agent skills directory.
02How do I install Ad to landing page auditor in Cursor, Claude Code, or Codex?
Run npx skills add gooseworks-ai/goose-skills --skill ad-to-landing-page-auditor in the project where you want it, then ask your agent for the skill by name. The --skill flag installs only Ad to landing page auditor, not every skill in the repository.
03What does the Ad to landing page auditor SKILL.md cover?
The SKILL.md includes sections on When to Use, Phase 0: Intake, Phase 1: Ad Inventory, Phase 2: Landing Page Audit, A: Content Elements and B: Message Match Scoring. Read the full text on this page or in plain markdown at /resources/agent-skills/gooseworks-ai-goose-skills--ad-to-landing-page-auditor--gf30gq/raw.
04Which agents can use Ad to landing page auditor?
Ad to landing page auditor installs with the cross-agent skills installer (npx skills add), which sets it up for agents such as Claude Code, Cursor and Codex. Each agent loads the SKILL.md when you ask for the skill by name.
05What license is Ad to landing page auditor under?
The gooseworks-ai/goose-skills repository declares the MIT license. Read the license file in the repository before you copy or redistribute the skill.
06Is Ad to landing page auditor free to use?
Reading, copying and installing Ad to landing page auditor costs nothing: it is published in a public GitHub repository under the MIT license. Reuse and redistribution follow that license.
07Where is the source of Ad to landing page auditor?
Ad to landing page auditor comes from https://github.com/gooseworks-ai/goose-skills, which has 912 GitHub stars. The SKILL.md is at https://github.com/gooseworks-ai/goose-skills/blob/HEAD/skills/ads/composites/ad-to-landing-page-auditor/SKILL.md. The author is gooseworks-ai.
Need an agent workflow built around your stack?
Tell us the workflow you want automated. We reply within 4 working hours (IST).
ATTRIBUTION
Ad to landing page auditor was written by its original authors and is published in gooseworks-ai/goose-skills (opens GitHub in a new tab) under the MIT license. All rights stay with the original authors.
100xLab did not write, maintain or endorse this skill. This page lists it for discovery. Repo stars belong to the source repository, not to the skill. Review any skill before you install it.