
Copy Validator
- 116 installs
- 31 repo stars
- Updated August 2, 2026
- shipshitdev/library
Review landing page headlines, CTAs, and value props for clarity, persuasion, and audience fit before running ads, waitlists, or conversion experiments.
About
copy-validator reviews marketing and landing page text for clarity, persuasion, audience fit, and conversion readiness before launch experiments. It flags weak headlines, vague value props, and CTA friction so teams refine messaging on validation pages instead of burning ad budget. Ideal for SaaS, content, and ecommerce projects testing demand with landing pages.
- Audits headlines, CTAs, and value propositions
- Checks clarity, persuasion, and audience alignment
- Improves landing conversion before paid spend
- Flags jargon, weak hooks, and unclear offers
- Supports SaaS, content, and ecommerce waitlists
Copy Validator by the numbers
- 116 all-time installs (skills.sh)
- Ranked #1,104 of 1,879 Marketing & SEO skills by installs in the Skillselion catalog
- Data as of Aug 3, 2026 (Skillselion catalog sync)
npx skills add https://github.com/shipshitdev/library --skill copy-validatorAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 116 |
|---|---|
| repo stars | ★ 31 |
| Last updated | August 2, 2026 |
| Repository | shipshitdev/library ↗ |
What it does
Review landing page headlines, CTAs, and value props for clarity, persuasion, and audience fit before running ads, waitlists, or conversion experiments.
Files
Copy Validator - Hook-Story-Offer Scorecard
Overview
Ruthlessly assess sales copy against Russell Brunson's Hook-Story-Offer framework combined with classic direct response principles. Score objectively, expose weak points, provide rewrites.
Brunson's Core Principle: "The hook grabs them, the story connects them, the offer converts them."
When This Activates
- "validate my copy"
- "rate my copy" / "rate my headline"
- "is my copy good"
- "why isn't my copy converting"
- Checking copy before publishing
- Landing page, email, or ad copy feedback
The Framework: Hook-Story-Offer Scorecard
HOOK (Stop + Engage) → STORY (Connect + Believe) → OFFER (Desire + Act)Scoring Dimensions (6 total):
| Dimension | Weight | What It Measures |
|---|---|---|
| Hook Power | 2x | Does the headline stop and engage? |
| Story Resonance | 1.5x | Does the story create emotional connection? |
| Proof Stacking | 1.5x | Is there enough evidence to believe? |
| Offer Presentation | 2x | Is the offer clear and desirable? |
| Urgency/Scarcity | 1x | Is there a reason to act NOW? |
| CTA Strength | 1x | Is the call-to-action compelling and clear? |
Max Score: 100 points
Quick Workflow
1. Gather copy - Type, goal, audience, full text 2. Score Hook (0-10) - Stops scroll? Specific promise? Tension? 3. Score Story (0-10) - Origin story? Relatability? Transformation? 4. Score Proof (0-10) - Testimonials? Social proof? Believable? 5. Score Offer (0-10) - Clear? Value stack? Benefits over features? 6. Score Urgency (0-10) - Legitimate scarcity? Clear deadline? 7. Score CTA (0-10) - One clear CTA? Outcome-focused? Risk reversal? 8. Calculate total - Apply weights, generate rating
Rating Scale
| Score | Rating | Verdict |
|---|---|---|
| 85-100 | Conversion Copy | Ready to run. Minor polish only. |
| 70-84 | Strong Copy | Good foundation. Fix weak points. |
| 55-69 | Leaky Copy | Significant gaps. Improve before running. |
| 40-54 | Weak Copy | Major issues. Rewrite key sections. |
| 0-39 | Broken Copy | Start over. Fundamental problems. |
For Dimensions Below 7, Provide
1. What's wrong (specific diagnosis) 2. Why it hurts (impact on conversion) 3. Rewrite (show exactly what to change)
Integration
| Skill | When to Use |
|---|---|
funnel-validator | Validate the full funnel, not just copy |
offer-validator | Validate the core offer structure |
expert-validator | Validate positioning and messaging strategy |
offer-architect | If offer itself needs rebuilding |
---
For complete scoring criteria, hook formulas, story elements checklist, proof types, offer presentation formulas, CTA formulas, output format template, and example validations, see: references/full-guide.md
{
"name": "copy-validator",
"version": "1.0.0",
"description": "Use this skill when users need to validate sales copy, landing page text, email sequences, or marketing messaging. Activates for 'validate my copy,' 'is my copy good,' 'rate my headline,' or when checking copy quality before publishing.",
"author": {
"name": "Ship Shit Dev",
"email": "hello@shipshit.dev",
"url": "https://github.com/shipshitdev"
},
"license": "MIT",
"skills": "."
}
Copy Validator - Full Guide
Execution Workflow
Step 1: Gather the Copy
Ask the user:
Share your copy. I need to see:
>
1. What type of copy is this? (Landing page, email, ad, sales letter?)
2. What's the goal? (Opt-in, sale, click, call booking?)
3. Who is this for? (Target audience)
4. What are you selling/offering?
5. Share the full copy (or link)
If partial copy, ask for the complete piece—context matters.
Step 2: Score Hook Power (0-10, Weight: 2x)
Evaluate the headline and opening lines:
- Does the headline stop the scroll?
- Is there a specific promise or curiosity hook?
- Does it speak to a specific audience?
- Is there tension or intrigue?
- Does it continue from the traffic source?
Scoring Criteria:
| Score | Description |
|---|---|
| 9-10 | Impossible to ignore, specific, creates immediate curiosity |
| 7-8 | Strong hook, grabs attention, clear promise |
| 5-6 | Decent hook, somewhat generic, could be stronger |
| 3-4 | Weak hook, generic, doesn't stand out |
| 0-2 | No hook, boring, or headline missing |
Red Flags:
- Generic headlines ("Welcome", "The Best [X]")
- No headline at all
- Headline doesn't match the body
- Too clever (cute kills conversions)
- No specific result or promise
Hook Formulas That Work:
1. How to [Desired Result] in [Time] Without [Pain Point]
2. The [Number] [Secrets/Mistakes] That [Result]
3. [Specific Result] in [Time] — Guaranteed
4. Warning: Don't [Action] Until You Read This
5. [Audience], Here's How to [Result] Even If [Objection]Step 3: Score Story Resonance (0-10, Weight: 1.5x)
Evaluate the emotional journey:
- Is there an origin story or epiphany bridge?
- Does it create relatability ("I was like you")?
- Is there conflict and transformation?
- Does it transfer belief that the solution works?
- Is the story appropriate length (not too long)?
Scoring Criteria:
| Score | Description |
|---|---|
| 9-10 | Powerful story, emotionally resonant, perfect length, belief transferred |
| 7-8 | Good story, relatable, creates connection |
| 5-6 | Story present but weak or too long |
| 3-4 | Minimal story, factual without emotion |
| 0-2 | No story, just features and claims |
Red Flags:
- No story element at all
- Story about the company, not the customer journey
- Story too long (loses reader)
- Story doesn't connect to the offer
- Facts without feelings
Story Elements Checklist:
- [ ] Relatable starting point ("I was...")
- [ ] Conflict/struggle ("But then...")
- [ ] Discovery/epiphany ("That's when I realized...")
- [ ] Transformation ("Now I...")
- [ ] Bridge to reader ("And you can too...")
Step 4: Score Proof Stacking (0-10, Weight: 1.5x)
Evaluate the credibility elements:
- Are there testimonials with specific results?
- Is there social proof (numbers, logos, media)?
- Are claims backed by evidence?
- Are credentials established?
- Is the proof believable (not inflated)?
Scoring Criteria:
| Score | Description |
|---|---|
| 9-10 | Overwhelming proof, specific results, multiple types of evidence |
| 7-8 | Good proof, believable testimonials, some data |
| 5-6 | Some proof, but generic or weak |
| 3-4 | Minimal proof, or proof feels manufactured |
| 0-2 | No proof, or claims that seem too good to be true |
Red Flags:
- No testimonials or case studies
- Testimonials without specific results ("Great product!")
- Claims without backing ("The best in the industry")
- Inflated numbers that damage credibility
- Stock photos for testimonials
Proof Types to Check:
- Testimonials: Specific results, full names, photos
- Case Studies: Before/after, specific metrics
- Data: Numbers, percentages, timeframes
- Authority: Credentials, media mentions, logos
- Social: Customer count, subscribers, usage
Step 5: Score Offer Presentation (0-10, Weight: 2x)
Evaluate how the offer is presented:
- Is the offer immediately clear?
- Is there a value stack showing components?
- Are benefits emphasized over features?
- Is the price positioned well (value vs. cost)?
- Does it feel like a deal they'd be stupid to refuse?
Scoring Criteria:
| Score | Description |
|---|---|
| 9-10 | Crystal clear, value stack overwhelms, price feels like a steal |
| 7-8 | Clear offer, good value positioning, compelling |
| 5-6 | Offer understood but not exciting |
| 3-4 | Confusing offer, or weak value perception |
| 0-2 | No clear offer, or buried in copy |
Red Flags:
- Features without benefits
- Price mentioned without value context
- No value stack
- Multiple offers competing
- Offer buried at the bottom
Value Presentation Formula:
Total Value: $X,XXX
Today's Price: $XXX
You Save: $X,XXXStep 6: Score Urgency/Scarcity (0-10, Weight: 1x)
Evaluate the reason to act now:
- Is there legitimate scarcity?
- Is there authentic urgency?
- Is the deadline believable?
- What do they lose by waiting?
- Is it ethical (not fake)?
Scoring Criteria:
| Score | Description |
|---|---|
| 9-10 | Legitimate scarcity/urgency, clear consequence for waiting |
| 7-8 | Good urgency, believable deadline or limit |
| 5-6 | Some urgency, but weak or vague |
| 3-4 | Fake-feeling urgency, or cliche ("Act now!") |
| 0-2 | No urgency, or obviously fake scarcity |
Red Flags:
- Evergreen countdown timers (fake)
- "Only 3 left!" on digital products
- No reason given for deadline
- Generic "Act now!" without specifics
- Urgency that contradicts other elements
Legitimate Urgency Types:
- Capacity: "Only 10 spots—I work with clients personally"
- Cohort: "Next group starts [date]"
- Price: "Price increases [date] to $X"
- Bonus: "Bonuses removed after [date]"
- Seasonal: "Before [event/season]"
Step 7: Score CTA Strength (0-10, Weight: 1x)
Evaluate the call-to-action:
- Is there one clear CTA (not multiple)?
- Does the CTA describe the outcome (not the action)?
- Is it above the fold AND at the end?
- Is the button visible and clickable-looking?
- Is there risk reversal near the CTA?
Scoring Criteria:
| Score | Description |
|---|---|
| 9-10 | One clear, outcome-focused CTA, prominent, with risk reversal |
| 7-8 | Clear CTA, good placement, compelling text |
| 5-6 | CTA present but weak text or placement |
| 3-4 | Multiple CTAs or generic ("Submit", "Click here") |
| 0-2 | No CTA, or buried/invisible |
Red Flags:
- "Submit" or "Click Here" (generic)
- Multiple competing CTAs
- CTA only at the bottom
- No risk reversal near CTA
- CTA that doesn't match the offer
Strong CTA Formulas:
[Get/Start/Claim] + [Outcome] + [Now/Today/Instantly]
Examples:
- "Get Instant Access Now"
- "Start My Free Trial"
- "Claim My Spot"
- "Yes! Send Me The [Thing]"Step 8: Calculate Final Score
Formula:
Hook Power × 2 = ___
Story Resonance × 1.5 = ___
Proof Stacking × 1.5 = ___
Offer Presentation × 2 = ___
Urgency/Scarcity × 1 = ___
CTA Strength × 1 = ___
─────────────────────────
TOTAL = ___ / 100Step 9: Generate Rewrites
For each dimension scoring below 7, provide:
1. What's wrong (specific diagnosis) 2. Why it hurts (impact on conversion) 3. Rewrite (show them exactly what to change)
Output Format
# Copy Validation: [Copy Type/Name]
## Quick Rating
| Rating | Score | Verdict |
|--------|-------|---------|
| [Conversion / Strong / Leaky / Weak / Broken] | XX/100 | [One-line summary] |
## Score Breakdown
| Dimension | Raw Score | Weight | Weighted Score | Status |
|-----------|-----------|--------|----------------|--------|
| Hook Power | X/10 | ×2 | XX/20 | [Rewrite/Tweak/Strong] |
| Story Resonance | X/10 | ×1.5 | XX/15 | [Rewrite/Tweak/Strong] |
| Proof Stacking | X/10 | ×1.5 | XX/15 | [Rewrite/Tweak/Strong] |
| Offer Presentation | X/10 | ×2 | XX/20 | [Rewrite/Tweak/Strong] |
| Urgency/Scarcity | X/10 | ×1 | XX/10 | [Rewrite/Tweak/Strong] |
| CTA Strength | X/10 | ×1 | XX/10 | [Rewrite/Tweak/Strong] |
| **TOTAL** | | | **XX/100** | |
## Line-by-Line Assessment
### Hook Power: X/10
**Current:**
> "[Their headline]"
**Problem:** [What's wrong]
**Rewrite:**
> "[Your improved headline]"
**Why This Is Better:** [Explanation]
### Story Resonance: X/10
**Current Approach:** [Summary of their story]
**Problem:** [What's missing/wrong]
**Add This:**
> "[Story element to add]"
### Proof Stacking: X/10
**Current Proof:** [What they have]
**Problem:** [What's missing]
**Add:**
- [ ] [Specific proof type to add]
- [ ] [Specific proof type to add]
### Offer Presentation: X/10
**Current:** [How offer is presented]
**Problem:** [What's weak]
**Rewrite:**
> "[Value stack rewrite]"
### Urgency/Scarcity: X/10
**Current:** [Their urgency]
**Problem:** [Issue]
**Rewrite:**
> "[Better urgency copy]"
### CTA Strength: X/10
**Current CTA:** "[Their CTA text]"
**Problem:** [Issue]
**Rewrite:** "[Better CTA]"
## Priority Rewrites (Do These First)
1. **[Dimension]:** [Specific rewrite with expected impact]
2. **[Dimension]:** [Specific rewrite with expected impact]
3. **[Dimension]:** [Specific rewrite with expected impact]
## Next Steps
### If Score 85+:
- [ ] A/B test minor variations
- [ ] Run traffic
- [ ] Monitor and iterate
### If Score 70-84:
- [ ] Implement priority rewrites above
- [ ] Re-validate after changes
- [ ] A/B test new vs. old
### If Score 55-69:
- [ ] Major rewrite needed
- [ ] Focus on Hook and Offer first
- [ ] Get fresh eyes (share with others)
### If Score Below 55:
- [ ] Start fresh with Hook-Story-Offer outline
- [ ] Write multiple headline variations
- [ ] Use `funnel-validator` to check full funnel contextExample Validations
Example: Weak Landing Page Copy
User's Headline: "Welcome to Our Marketing Agency"
Body (summary):
- List of services
- "We're the best in the industry"
- "Contact us today"
- No testimonials
- No story
Validation:
| Dimension | Score | Issue |
|---|---|---|
| Hook Power | 2/10 | Generic, zero curiosity |
| Story Resonance | 1/10 | No story at all |
| Proof Stacking | 1/10 | "Best in industry" - no proof |
| Offer Presentation | 3/10 | Services listed, no value framing |
| Urgency/Scarcity | 0/10 | None |
| CTA Strength | 3/10 | "Contact us" - generic |
Total: 18/100 - Broken Copy
Rewrites:
Headline:
Before: "Welcome to Our Marketing Agency"
After: "We've Generated $47M in Revenue for 127 Clients — Here's How We Can Do the Same for You"
CTA:
Before: "Contact Us"
After: "Get Your Free Revenue Audit (Worth $997)"
Example: Strong Email Copy
User's Email:
- Subject: "The $100K mistake I almost made (and how to avoid it)"
- Opens with relatable story
- Shares specific lesson learned
- Transitions to offer with clear value
- Deadline for bonus
Validation:
| Dimension | Score | Notes |
|---|---|---|
| Hook Power | 9/10 | Curiosity + specific number + warning |
| Story Resonance | 8/10 | Relatable, good epiphany bridge |
| Proof Stacking | 6/10 | Story is proof, but could add more |
| Offer Presentation | 8/10 | Clear, good transition from story |
| Urgency/Scarcity | 7/10 | Bonus deadline, could be stronger |
| CTA Strength | 8/10 | Clear, action-oriented |
Total: 79/100 - Strong Copy
Minor Tweaks:
1. Add a specific testimonial before CTA 2. Make deadline more specific (not just "this week")
Common Validation Mistakes
1. Ignoring Context: Copy quality depends on audience and traffic source 2. Rewriting Everything: Focus on highest-impact changes first 3. Being Too Nice: Weak copy kills conversions—be direct 4. Ignoring Mobile: Most reading happens on phone 5. No Examples: Always provide specific rewrites, not just advice 6. Forgetting Voice: Rewrites should match brand voice