Email Review Sub-Skill
Purpose
Reviews email content before sending and provides a comprehensive quality score (0-100) across 5 weighted dimensions. Identifies critical issues, suggests improvements, and provides a rewritten version for low-scoring emails.
When to Activate
- User asks to "review this email"
- User provides email content (subject + body) for feedback
- User requests email quality check or score
- User wants to validate email before sending
- User provides Gmail draft ID for review
- User asks about email deliverability or spam risk
Input Formats
Accept email content in any of these formats:
- Pasted text - Subject line + body in conversation
- File path - Path to HTML email file
- Gmail draft ID - Fetch via
gmail_get_draftMCP tool - Raw HTML - HTML email source code
Scoring Framework
Overall Score Calculation
Total score = weighted sum of 5 categories:
| Category | Weight | Focus |
|---|---|---|
| Subject Line | 25% | Length, power words, spam triggers, personalization |
| Copy Quality | 25% | Word count, CTA clarity, framework structure, readability |
| Technical/HTML | 20% | Size, responsiveness, dark mode, alt text, preheader |
| Deliverability | 15% | Spam signals, link count, sender reputation factors |
| Compliance | 15% | CAN-SPAM, unsubscribe, physical address, RFC 8058 |
1. Subject Line Scoring (25% weight)
Base Score: 0-100, then weighted at 25%
Length Check (0-25 points)
- Optimal: 6-10 words OR 30-50 characters = 25 points
- Acceptable: 5 or 11 words = 20 points
- Marginal: 4 or 12 words = 10 points
- Poor: <4 or >12 words = 0 points
Spam Trigger Detection (-5 points each)
Penalize for each occurrence:
- ALL CAPS words
- Multiple exclamation marks (!!!)
- Phrases: "FREE", "Act Now", "Limited Time", "Guaranteed", "Winner", "Click Here", "Buy Now", "Order Now"
- Excessive punctuation ($$$, ???)
Power Words (+5 points each, max +15)
Bonus for strategic use of:
- "New", "Exclusive", "Proven", "Secret", "Discover"
- "Ultimate", "Essential", "Complete", "Breakthrough"
- Industry-specific power words
Personalization (+10 points)
- Contains merge tags like
{{first_name}}or{{company}} - Behavioral personalization indicators
Emoji Usage (+5 or -5)
- 1 emoji = +5 points (increases open rates)
- 2+ emojis = -5 points (reduces professionalism)
- No emoji = 0 points (neutral)
2. Copy Quality Scoring (25% weight)
Base Score: 0-100, then weighted at 25%
Word Count (0-20 points)
- 150-300 words = 20 points (optimal)
- 100-149 or 301-400 = 15 points
- 50-99 or 401-500 = 10 points
- <50 or >500 = 0 points
CTA Count (0-25 points)
- 1 primary CTA = 25 points (best conversion)
- 2 CTAs = 15 points (acceptable)
- 3+ CTAs = 5 points (diluted focus)
- 0 CTAs = 0 points (no action path)
CTA Clarity (0-15 points)
Score based on:
- 15 points: Action verb + benefit ("Get My Free Guide", "Start Your Trial")
- 10 points: Generic action ("Learn More", "Download")
- 5 points: Vague ("Submit", "Click Here")
- 0 points: No CTA or unclear
Framework Structure (0-15 points)
Check if email follows proven framework:
- PAS (Problem-Agitate-Solution): 15 points
- AIDA (Attention-Interest-Desire-Action): 15 points
- BAB (Before-After-Bridge): 15 points
- FAB (Features-Advantages-Benefits): 15 points
- 4Ps (Picture-Promise-Proof-Push): 15 points
- No clear structure: 0 points
Readability (0-15 points)
- Short paragraphs (2-3 lines max): +5
- Bullet points or numbered lists: +5
- Scannable with subheadings: +5
- No walls of text: +5
- Deduct -5 for each readability issue
Personalization Beyond Name (0-10 points)
- Behavioral triggers (past purchase, browsing): +5
- Location/timezone awareness: +3
- Industry/role customization: +2
3. Technical/HTML Scoring (20% weight)
Base Score: 100, deduct points for violations
Total Size (-20 if fail)
- Must be under 102 KB (Gmail clips emails over this)
- Check HTML + embedded images (if data URIs)
Text-to-Image Ratio (-15 if fail)
- Minimum 60% text / 40% images
- Image-heavy emails trigger spam filters
Responsive Design (-10 if fail)
Check for:
- Viewport meta tag:
<meta name="viewport" content="width=device-width"> - Media queries for mobile breakpoints
- Fluid tables or container widths
Dark Mode Support (-5 if fail)
Check for:
<meta name="color-scheme" content="light dark">- CSS with
@media (prefers-color-scheme: dark) - Dark mode color overrides
Alt Text on Images (-5 per missing)
- All
<img>tags must havealtattribute - Alt text should be descriptive, not just filename
Table-Based Layout (-5 if fail)
- Email should use
<table>for layout (HTML email best practice) - Deduct if using CSS Grid/Flexbox (poor email client support)
Font Safety (-5 if fail)
- Must use web-safe fonts with fallbacks
- Example:
font-family: Arial, Helvetica, sans-serif; - Avoid custom web fonts without fallbacks
CTA Button Size (-5 if fail)
- Minimum 44x44 pixels (mobile touch target)
- Check all
<a>styled as buttons
Plain-Text Version (-10 if fail)
- Must have plain-text MIME part OR
- Text-only fallback within HTML
Preheader Text (-5 if missing)
- 30-80 character preview text
- Located immediately after
<body>tag - Often hidden with CSS for HTML view
4. Deliverability Signals (15% weight)
Base Score: 100, deduct points for red flags
Spam Word Density (-5 per word)
Count occurrences of spam triggers in body:
- "Free", "Winner", "Guarantee", "Risk-free", "Act now"
- "Cash", "Bonus", "Extra income", "Work from home"
- "Unsecured credit", "Viagra", "Pharmacy"
Link Count (warn at 5+)
- 0-3 links = 0 penalty
- 4-5 links = -5 points (warning threshold)
- 6+ links = -15 points (spam signal)
Image-Only Email (-20 if fail)
- Emails with only images and no text are spam signals
- Must have substantive text content
Unsubscribe Link (-25 if missing)
- Required for marketing emails
- Must be clearly visible and functional
- Check for
<a>with "unsubscribe" keyword
Sender Name (-10 if generic)
- Deduct for: "info@", "noreply@", "admin@", "support@"
- Personal or company name preferred
Link Shorteners (-10 if detected)
- Penalize use of: bit.ly, tinyurl, goo.gl, ow.ly
- Spam filters distrust shortened URLs
5. Compliance Scoring (15% weight)
Base Score: 100, deduct points for violations
Physical Address (-20 if missing)
- CAN-SPAM requires postal address
- Check footer for street address or P.O. Box
Unsubscribe Mechanism (-25 if missing)
- Must have working unsubscribe link
- Should process within 10 business days (CAN-SPAM)
Honest Subject Line (-15 if misleading)
- Subject must accurately reflect email content
- No deceptive "Re:" or "Fwd:" if not a reply
RFC 8058 Headers (-10 if missing for bulk)
For bulk/marketing emails, check for:
List-Unsubscribe: <mailto:unsub@example.com>
List-Unsubscribe-Post: List-Unsubscribe=One-Click
Sender Identification (-10 if missing)
- Must clearly state who is sending the email
- Check for "From" name and footer company info
Score Interpretation
| Score | Rating | Status | Recommendation |
|---|---|---|---|
| 90-100 | Excellent | ✅ Ready to send | Minor tweaks optional |
| 75-89 | Good | ⚠️ Review suggested | Address medium-priority issues |
| 60-74 | Fair | ⚠️ Fix before sending | Resolve high-priority issues |
| 40-59 | Poor | ❌ Needs rework | Significant changes required |
| 0-39 | Critical | ❌ DO NOT SEND | Major compliance/deliverability issues |
Output Format
Structure the review report as:
- Header:
## Email Quality Reviewwith overall score, rating, status - Score table: 5 categories with ra