conversion-audit
Skill49 starsChanged 8 months agoMITView on GitHub
Use when the user says 'audit my conversion rate', 'cro check', 'find conversion leaks', or asks what is hurting conversion before a paid campaign or after a redesign. Scores six friction dimensions: above-the-fold clarity, CTA hierarchy, form length, social proof, speed, trust signals.
1 other project uses a version of this.
Adopted by
Most recently taken up by
- Alfred-Lau/skillstheir own version, first seen Oct 20, 2026
Other versions1 project uses a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 1
- Alfred-Lau/skills★ 1same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository55 other files it gives its agents.
- activity-report-composerSkill
- art-directionSkill
- brand-voice-synthesizerSkill
- build-elementor-pageSkill
- build-oxygen6-pageSkill
- content-portabilitySkill
- custom-post-type-architectSkill
- design-system-synthesizerSkill
- figma-to-bricksSkill
- figma-to-diviSkill
- figma-to-elementorSkill
- figma-to-gutenbergSkill
- html-to-breakdanceSkill
- html-to-bricksSkill
- html-to-pageSkill
- internal-link-builderSkill
- migrate-beaver-builder-to-bricksSkill
- migrate-beaver-builder-to-gutenbergSkill
- migrate-brizy-to-gutenbergSkill
- migrate-divi-to-breakdanceSkill
- migrate-divi-to-bricksSkill
- migrate-divi-to-gutenbergSkill
- migrate-elementor-to-breakdanceSkill
- migrate-elementor-to-bricksSkill
- migrate-elementor-to-gutenbergSkill
- migrate-elementor-to-oxygenSkill
- migrate-oxygen-to-breakdanceSkill
- migrate-oxygen-to-bricksSkill
- migrate-thrive-architect-to-gutenbergSkill
- migrate-visual-composer-to-gutenbergSkill
- migrate-wpbakery-to-bricksSkill
- migrate-wpbakery-to-gutenbergSkill
- mobile-experience-reportSkill
- murmur-review-loopSkill
- page-template-librarySkill
- prime-the-agentSkill
- respira-builder-editsSkill
- respira-setup-assistantSkill
- respira-site-auditSkill
- respira-woocommerceSkill
- respira-workflowSkill
- seo-aeo-amplifierSkill
- site-onboardingSkill
- stale-content-detectorSkill
- technical-debt-auditSkill
- woo-agent-storefrontSkill
- woo-catalog-perfectionSkill
- woocommerce-health-checkSkill
- woo-marketing-campaignsSkill
- woo-pricing-promotionsSkill
- wordpress-ai-image-optimizerSkill
- wordpress-editing-safetySkill
- wordpress-security-reviewSkill
- wordpress-site-dnaSkill
- wordpress-mcp-devSkill
The file
We split this skill into the rules it gives an agent
9 rules. About 0 are common, 6 are distinctive, and 3 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈6
Distinctive · estimate
This author's own choices. Worth a look.
3
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 50
Before launching a paid traffic campaign — don't drive paid clicks to a leaky page
- Distinctive: line 51
After a redesign — verify nothing important got dropped
- Distinctive: line 52
When conversion drops without an obvious cause
- Very specific: line 73
Call respira_get_active_site.
- Very specific: line 79
Top-nav mode: call respira_list_menus then respira_list_menu_items for the primary menu.
- Distinctive: line 177
Ask: *"Want me to apply one of these now?
- Very specific: line 179
If yes, route to the appropriate edit flow (usually respira_create_page_duplicate + targeted respira_update_element).
- Distinctive: line 186
Score is directional, not gospel: Use the score to prioritize, not as a verdict.
- Distinctive: line 187
Form audits use builder-native parsing: If the form is a Gravity Forms shortcode, parse the GF form definition (not the rendered HTML).
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Conversion Audit
Version: 1.0.0 Updated: 2026-05-24 Category: audit Status: stable Requires: Respira for WordPress plugin 7.1+ + MCP server
Description
Audit a WordPress site for conversion-rate friction. Reads the landing pages, the homepage, the pricing page (if any), the contact page, and any pages that are linked from the main navigation. Identifies friction points across six dimensions: above-the-fold clarity, CTA hierarchy, form length, social proof placement, page speed (using existing Respira SpeedScan), and trust signals.
This is a CRO check, not a redesign. The output is a prioritized list of fixes the user can apply — each with a one-line "what to change" + "why" + "expected impact." No rewriting; recommendations only.
What it audits (the six dimensions)
- Above-the-fold clarity. Does the hero answer "what is this and why does it matter to me"? Within ~5 seconds, can a first-time visitor articulate the offer back? Common failures: jargon-heavy headline, image-first instead of message-first, no concrete value proposition.
- CTA hierarchy. Is there one primary CTA per screen, or are there 4 competing buttons? Are CTAs visually distinguished from the secondary navigation? Is the CTA action clear ("Get a quote" vs "Submit")?
- Form length. For forms found on the page: how many required fields? Common failures: asking for phone number when email would do, asking for company size for an MVP landing page, address before there's any commitment, 8+ fields when 3 would convert.
- Social proof placement. Where are testimonials / customer logos / case-study links relative to the CTA? Common failure: social proof in the footer where nobody scrolls. Strong pattern: one testimonial above the fold, customer logos below the hero, full case study links by the pricing section.
- Page speed. Pulls existing SpeedScan or runs
respira_analyze_pagespeedif available. Slow pages don't convert. LCP > 2.5s, CLS > 0.1, FID > 100ms are conversion drags. - Trust signals. Does the page show: company name / logo, contact information, privacy policy link, secure checkout indicators (if commerce), real photos vs stock, named team / founder (vs faceless)?
When to Use
- Quarterly CRO review
- Before launching a paid traffic campaign — don't drive paid clicks to a leaky page
- After a redesign — verify nothing important got dropped
- When conversion drops without an obvious cause
- For a new landing page review before publish
Trigger Phrases
- "audit my conversion rate"
- "cro check"
- "find conversion leaks"
- "review my landing pages"
- "audit for conversion"
- "what's hurting my conversion"
- "conversion audit"
Execution Workflow
Step 1 — Confirm site + scope
Call respira_get_active_site. Ask the user: "Audit a single page, the main flow (home + pricing + contact), or all top-nav pages?" Default to "the main flow" if unclear.
Step 2 — Identify pages to audit
- Single page mode: the user names the page.
- Main flow mode: homepage,
/pricing/or/plans/if present,/contact/or/get-in-touch/if present, plus any page marked as a landing page (page_template == 'landing'). - Top-nav mode: call
respira_list_menusthenrespira_list_menu_itemsfor the primary menu; audit each linked page.
For each page, call respira_extract_builder_content(page_id).
Step 3 — Run each audit dimension
For each page, walk the builder content and score each dimension. The scoring rubric:
Above-the-fold clarity (0–3):
- 3: clear value prop in headline, supporting sub-headline, primary CTA, visual that supports the message
- 2: headline + CTA but value prop unclear or visual fights the message
- 1: jargon-heavy or image-first, no concrete benefit
- 0: empty hero or missing CTA entirely
CTA hierarchy (0–3):
- 3: one primary CTA, visually distinct, action verb, repeated below the fold
- 2: primary CTA present but competing with 2+ other equally-prominent buttons
- 1: 3+ competing CTAs or generic verbs ("Submit", "Click here")
- 0: no clear CTA
Form length (0–3, skip if no forms):
- 3: 1–3 required fields, no asks beyond the minimum
- 2: 4–5 required fields with one optional
- 1: 6+ required fields OR asks for phone before commitment
- 0: 8+ fields or asks for sensitive data (DOB, SSN, address) without commitment
Social proof placement (0–3):
- 3: one testimonial / logo bar above the fold, more below the hero, named with photo + company
- 2: testimonials present but only below the fold or unnamed
- 1: footer-only social proof
- 0: none visible
Page speed (0–3, from SpeedScan):
- 3: LCP < 2.5s, CLS < 0.1, page weight < 2MB
- 2: one metric mildly off
- 1: two metrics off
- 0: LCP > 4s or CLS > 0.25 (conversion killer)
Trust signals (0–3):
- 3: named company, contact info visible, privacy link, real photos, named team
- 2: most present, one or two missing
- 1: faceless brand, stock photos, only generic contact
- 0: anonymous, no company info, no contact, no privacy
Page total: 0–18.
Step 4 — Output the report
## Conversion audit for {site_url}
Pages audited: {n_pages}
### Summary
| Page | Score | Top issue |
|---|---|---|
| / | 14 / 18 | CTA hierarchy: 3 competing primary CTAs in hero |
| /pricing/ | 11 / 18 | Form length: pricing form asks for 7 fields |
| /contact/ | 10 / 18 | Above-the-fold: no value prop, only "Get in touch" |
| ... | | |
### Prioritized fixes (highest impact first)
**1. {page_url} · CTA hierarchy**
- Current: 3 competing primary buttons in hero ("Get started", "See pricing", "Book a demo")
- Change to: one primary ("Get started"), demote others to secondary text links
- Why: competing CTAs split attention and drop CTR by ~30% in typical landing page tests
**2. {page_url} · Form length**
- Current: 7 required fields including phone + company size
- Change to: 3 required (name, email, what brings you here) + optional phone
- Why: every required field beyond 3 drops form completion by ~7%
**3. {page_url} · Above-the-fold clarity**
- Current: headline "Solutions for modern teams" — generic, no concrete offer
- Change to: headline that names what the user gets ("X for Y, in Z minutes" pattern)
- Why: visitors decide within ~5 seconds whether the page is for them; vague heroes lose them
(... continue for top 5–8 fixes ...)
### What's working
(Quick callouts of strong patterns the audit found, so the user knows what NOT to change.)
- {page}: above-the-fold clarity is strong — headline + sub + supporting visual all reinforce the offer.
- {page}: social proof placement is exemplary — named testimonial above the fold with photo and company.
### Speed signals (from SpeedScan)
| Page | LCP | CLS | Total weight |
|---|---|---|---|
| / | 2.1s ✓ | 0.08 ✓ | 1.8MB ✓ |
| /pricing/ | 3.4s ✗ | 0.15 ✗ | 3.2MB ✗ |Step 5 — Offer to act on a chosen fix
Ask: "Want me to apply one of these now? I can duplicate the page (SafeEdit) and make the change for review."
If yes, route to the appropriate edit flow (usually respira_create_page_duplicate + targeted respira_update_element).
Hard rules
- Recommendations, not redesigns. This skill suggests changes; it does not apply them autonomously. Every applied change is a SafeEdit-protected duplicate, reviewed before promotion.
- Score is directional, not gospel. Use the score to prioritize, not as a verdict. A 14/18 page with a critical CTA bug is more urgent than a 10/18 page with diffuse issues.
- Form audits use builder-native parsing. If the form is a Gravity Forms shortcode, parse the GF form definition (not the rendered HTML). If WPForms, ditto. If Contact Form 7, ditto. Raw HTML parsing of form fields produces wrong field counts.
- Speed signals come from SpeedScan if present, not from re-running a fresh audit. Re-running is slow and costly. If the SpeedScan is more than 30 days old, note that and offer to refresh.
- Trust signal checks include checking for the privacy / terms / contact pages existing. Use
respira_list_pagesto verify, not just visually scan the page.
Telemetry
Records: site URL hash, n_pages audited, score distribution, top issue categories detected, success/failure, total duration. No page content, no recommendations, no scores per page sent.
Endpoint: POST https://www.respira.press/api/skills/track-usage
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

