Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Design and write email automation sequences (welcome/onboarding, nurture, re-engagement, trial expiration, sales) for SaaS and B2B, with subject lines, copy, CTAs, and timing. Use when building drip campaigns or designing lifecycle email.
.claude/skills/borghei-email-sequence/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-01 | ✗→✓ | ▲ Improved | 93% | 0% |
| case-03 | ✗→✓ | ▲ Improved | 39% | 0% |
| case-05 | ✗→✓ | ▲ Improved | 319% | 0% |
| case-08 | ✗→✓ | ▲ Improved | 166% | 0% |
| case-13 | ✗→✓ | ▲ Improved | 126% | 0% |
Category: Marketing Tags: email sequences, drip campaigns, nurture flows, onboarding emails, lifecycle marketing, automation
Email Sequence Design creates complete, ready-to-implement email automation flows. Every output includes subject lines, preview text, full body copy, CTAs, send timing, and exit conditions. The goal is sequences that nurture relationships and drive specific conversion actions -- not just "stay top of mind" email noise.
This skill writes the sequences. For email HTML templates and rendering infrastructure, use email-template-builder. For tracking email performance, use analytics-tracking.
| Type | Trigger | Goal | Typical Length | |------|---------|------|---------------| | Welcome/Onboarding | New signup | Activate user, show core value | 5-7 emails over 14 days | | Trial Expiration | Trial nearing end | Convert to paid | 4-5 emails over 7 days | | Lead Nurture | Content download, webinar | Qualify and convert | 6-8 emails over 30 days | | Re-engagement | Inactive 30+ days | Bring back or clean list | 3-4 emails over 14 days | | Post-Purchase | Subscription start | Reduce churn, expand | 4-6 emails over 30 days | | Event-Based | Specific user action | Drive next action | 2-3 emails over 7 days | | Sales (Warm) | MQL or PQL signal | Book meeting or start trial | 4-5 emails over 14 days |
Before designing the sequence, confirm these inputs. If any is unknown or vague, ASK — do not assume:
Stop rule: ask only the 2-3 that most change the output. If the user says "just draft it," proceed and list your assumptions at the top of the artifact.
Before writing any email, define the architecture:
Sequence Name: [Name]
Trigger: [What starts the sequence]
Primary Goal: [Single conversion action]
Secondary Goals: [Relationship building, data collection]
Length: [Number of emails]
Duration: [Total time span]
Exit Conditions: [When they leave the sequence]
Suppression: [Other sequences to suppress while active]Each email serves a purpose in a progression:
| Email | Emotional State | Purpose | Key Message | |-------|----------------|---------|-------------| | 1 | Curious, uncertain | Welcome, set expectations | "Here's what to expect" | | 2 | Exploring, evaluating | Demonstrate core value | "Here's the one thing to try first" | | 3 | Engaged or dropping off | Social proof | "Here's how others succeeded" | | 4 | Considering commitment | Remove objections | "Common concerns addressed" | | 5 | Ready to decide | Create urgency | "Your trial ends in X days" |
For every email in the sequence, deliver:
Email [#]: [Name/Purpose]
Send: [Timing from trigger or previous email]
Segment: [Conditions -- who receives this variant]
Subject: [Subject line - under 50 characters]
Preview: [Preview text - 80-120 characters, complements subject]
Body:
[Complete copy -- not an outline, not bullets, the actual words]
CTA: [Button text] → [Destination URL]
P.S.: [Optional -- works for urgency or human touch]Not everyone follows the same path. Define branches:
After Email 2:
IF user activated core feature → Skip to Email 4 (post-activation)
IF user has not logged in → Send Email 2B (re-engagement variant)
IF user unsubscribed → Exit sequence
After Email 4:
IF user converted → Exit sequence, enter post-purchase sequence
IF user visited pricing 2+ times → Send Email 4B (pricing objection handler)
ELSE → Continue to Email 5| Email | Day | Subject | Purpose | |-------|-----|---------|---------| | 1 | 0 (immediate) | Welcome to Product] -- start here | Set expectations, one CTA to activate | | 2 | 1 | The one feature that changes everything | Drive to core value action | | 3 | 3 | How Company] got Result] in Timeframe] | Social proof, case study | | 4 | 5 | Quick question | Check engagement, offer help | | 5 | 7 | 3 things you might have missed | Feature discovery, breadth | | 6 | 10 | Your trial is halfway done | Progress report, urgency | | 7 | 13 | Last day of your trial | Convert or lose access |
Exit conditions: User converts to paid at any point, user unsubscribes, user explicitly requests removal.
Branching:
| Email | Day | Subject | Purpose | |-------|-----|---------|---------| | 1 | 0 | Your resource name] is ready | Deliver promised content | | 2 | 3 | The mistake most role] make with topic] | Educational, establish authority | | 3 | 7 | Company] went from problem] to result] | Case study, social proof | | 4 | 14 | The topic] framework we use internally | Exclusive value, reciprocity | | 5 | 21 | Quick question about their challenge] | Personal, segmentation | | 6 | 28 | See if Product] is right for you | Soft CTA, demo or trial |
Exit conditions: Books demo, starts trial, unsubscribes, or completes sequence.
| Email | Day | Subject | Purpose | |-------|-----|---------|---------| | 1 | 0 | We noticed you've been away | Acknowledge absence, show value | | 2 | 3 | Here's what you missed | Product updates, new features | | 3 | 7 | Exclusive offer or incentive] | Incentivize return | | 4 | 14 | Should we stop emailing you? | Clean list, last chance |
Critical rule: If no engagement after Email 4, remove from active email list. Sending to unengaged contacts damages sender reputation.
| Email | Day Before Expiry | Subject | Purpose | |-------|-------------------|---------|---------| | 1 | 7 | Your trial ends in one week | Awareness, usage summary | | 2 | 3 | Here's what you'll lose access to | Loss aversion, feature list | | 3 | 1 | Tomorrow is your last day | Urgency, simple CTA | | 4 | 0 | Your trial just ended | Conversion, offer extension option | | 5 | +3 | We saved your data for 30 days | Last chance, data retention |
| Formula | Example | Why It Works | |---------|---------|-------------| | How company] achieved result] | "How Stripe reduced churn 23%" | Specific, curiosity, social proof | | The number] thing] audience] needs] | "The 3 metrics every PM tracks" | Specific, relevant, scannable | | Quick question about topic] | "Quick question about your trial" | Personal, non-threatening | | Name], action-oriented statement] | "Sarah, your dashboard is ready" | Personal, action-oriented | | Your asset] is status] | "Your free trial ends tomorrow" | Ownership, urgency |
| Day | Time Window | Notes | |-----|-------------|-------| | Tuesday | 9-11 AM recipient's timezone | Highest open rates | | Wednesday | 9-11 AM | Second best | | Thursday | 9-11 AM | Good for follow-ups | | Monday | 10 AM-12 PM | After inbox clearing | | Friday | Avoid for important emails | Low engagement | | Weekend | Avoid for B2B | Exception: consumer products |
| Metric | Welcome | Nurture | Re-engagement | Trial Expiration | |--------|---------|---------|---------------|------------------| | Open rate | 50-70% | 25-40% | 15-25% | 40-60% | | Click rate | 10-20% | 3-8% | 2-5% | 8-15% | | Conversion rate | 5-15% | 1-3% | 3-8% | 10-25% | | Unsubscribe rate | <0.5% | <0.3% | 1-3% | <0.5% |
| Signal | Meaning | Action | |--------|---------|--------| | Open rate declining across sequence | Fatigue or irrelevance | Shorten sequence or improve subject lines | | High opens, low clicks | Subject works, body/CTA doesn't | Rewrite body copy, simplify CTA | | High click rate, low conversion | Landing page problem | Audit post-click experience | | Rising unsubscribes after Email 3 | Too frequent or too salesy | Increase spacing, add more value | | Email 1 open rate below 40% | Deliverability issue | Check sender reputation, authentication |
| Segment | Definition | Sequence Adjustment | |---------|-----------|-------------------| | Power users | Used core feature 5+ times | Skip beginner content, focus on advanced features | | Window shoppers | Signed up, never activated | More hand-holding, simpler first steps | | Pricing page visitors | Viewed pricing 2+ times | Address pricing objections directly | | Feature explorers | Used 3+ features | Highlight integration and workflow value | | Ghost users | No login in 7+ days | Re-engagement sequence |
| Tier | Effort | Impact | Example | |------|--------|--------|---------| | 1: Name + company | Low | Moderate | "Hi Sarah, how's the Acme team finding..." | | 2: Behavioral | Medium | High | "Since you set up your first project..." | | 3: Segment-specific copy | High | Highest | Entirely different email body per segment |
| Skill | Use When | |-------|----------| | email-template-builder | Building HTML email templates and rendering infrastructure | | analytics-tracking | Setting up email click tracking and UTM attribution | | launch-strategy | Coordinating email sequences around product launches | | content-creator | Writing landing page copy that email CTAs point to | | ab-test-setup | Designing statistically valid email A/B tests |
| Symptom | Likely Cause | Fix | |---------|-------------|-----| | Welcome email open rate below 40% | Deliverability issue or weak subject line | Check sender reputation and SPF/DKIM/DMARC. Test subject variants. | | Open rates declining across sequence | Fatigue or irrelevance | Shorten sequence, improve subject lines, or add more value per email. | | High opens, low clicks | Body copy or CTA is weak | Rewrite body with stronger benefit and simplify CTA to one action. | | High click rate, low conversion | Landing page problem | Audit post-click experience: message match, page speed, form friction. | | Rising unsubscribes after email 3 | Too frequent or too salesy | Increase spacing between emails and add more educational content. | | Emails clipped by Gmail | HTML template over 102KB | Use render_size_analyzer.py from email-template-builder to reduce size. | | Sequence not triggering | Automation platform misconfiguration | Verify trigger events, check suppression rules for conflicts. |
In Scope: Lifecycle email sequence design, copy, timing, branching logic, segmentation, and performance optimization for SaaS/B2B.
Out of Scope: Email HTML rendering (use email-template-builder), cold outreach sequences (use cold-email), marketing automation platform setup, transactional email infrastructure.
Limitations: Benchmarks are SaaS/B2B focused. Adjust thresholds for e-commerce, consumer, or other verticals.
scripts/subject_line_scorer.py)Scores sequence email subject lines for open-rate potential and auto-detects sequence type (welcome, trial, nurture, re-engagement).
bashpython scripts/subject_line_scorer.py "Your trial ends tomorrow" python scripts/subject_line_scorer.py --file subjects.txt --json
scripts/sequence_mapper.py)Generates a visual sequence map with timing, branching logic, and exit conditions from a sequence definition.
bashpython scripts/sequence_mapper.py sequence_def.json python scripts/sequence_mapper.py --sample --json
scripts/performance_analyzer.py)Analyzes email sequence metrics against benchmarks, identifies bottlenecks, and recommends optimizations.
bashpython scripts/performance_analyzer.py metrics.json python scripts/performance_analyzer.py --sample --json
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | fail→pass | 28,824 | 34,738 | +21% | 1 | 1 | 0% | 4,754 | 9,178 | +93% | 0 | 0 | — |
case-02 | fail→fail | 23,023 | 21,140 | -8% | 1 | 1 | 0% | 3,821 | 7,295 | +91% | 0 | 0 | — |
case-03 | fail→pass | 31,730 | 22,893 | -28% | 1 | 1 | 0% | 5,575 | 7,725 | +39% | 0 | 0 | — |
case-04 | fail→fail | 6,559 | 6,624 | +1% | 1 | 1 | 0% | 1,059 | 4,894 | +362% | 0 | 0 | — |
case-05 | fail→pass | 9,817 | 17,200 | +75% | 1 | 1 | 0% | 1,557 | 6,517 | +319% | 0 | 0 | — |
case-06 | pass→pass | 12,278 | 10,063 | -18% | 1 | 1 | 0% | 1,776 | 5,414 | +205% | 0 | 0 | — |
case-07 | pass→pass | 10,594 | 6,503 | -39% | 1 | 1 | 0% | 1,556 | 4,843 | +211% | 0 | 0 | — |
case-08 | fail→pass | 11,106 | 3,479 | -69% | 1 | 1 | 0% | 1,667 | 4,430 | +166% | 0 | 0 | — |
case-09 | pass→pass | 14,509 | 7,125 | -51% | 1 | 1 | 0% | 2,229 | 5,116 | +130% | 0 | 0 | — |
case-10 | pass→pass | 14,070 | 15,918 | +13% | 1 | 1 | 0% | 2,229 | 6,481 | +191% | 0 | 0 | — |
case-11 | pass→pass | 13,857 | 10,210 | -26% | 1 | 1 | 0% | 2,195 | 5,258 | +140% | 0 | 0 | — |
case-12 | pass→pass | 10,688 | 9,056 | -15% | 1 | 1 | 0% | 1,645 | 5,118 | +211% | 0 | 0 | — |
case-13 | fail→pass | 15,907 | 11,005 | -31% | 1 | 1 | 0% | 2,541 | 5,733 | +126% | 0 | 0 | — |
case-14 | fail→pass | 11,711 | 4,556 | -61% | 1 | 1 | 0% | 1,839 | 4,568 | +148% | 0 | 0 | — |
case-15 | pass→pass | 10,978 | 6,999 | -36% | 1 | 1 | 0% | 1,697 | 4,963 | +192% | 0 | 0 | — |
case-16 | pass→pass | 10,661 | 8,553 | -20% | 1 | 1 | 0% | 1,699 | 5,205 | +206% | 0 | 0 | — |
case-17 | pass→pass | 8,142 | 8,196 | +1% | 1 | 1 | 0% | 1,265 | 5,117 | +305% | 0 | 0 | — |
case-18 | fail→pass | 10,982 | 6,498 | -41% | 1 | 1 | 0% | 1,796 | 4,916 | +174% | 0 | 0 | — |
case-19 | pass→pass | 12,030 | 6,587 | -45% | 1 | 1 | 0% | 1,801 | 4,780 | +165% | 0 | 0 | — |
case-20 | pass→pass | 15,746 | 14,249 | -10% | 1 | 1 | 0% | 2,446 | 5,822 | +138% | 0 | 0 | — |
case-21 | pass→pass | 17,816 | 13,630 | -23% | 1 | 1 | 0% | 2,630 | 5,942 | +126% | 0 | 0 | — |
case-22 | fail→fail | 24,282 | 23,809 | -2% | 1 | 1 | 0% | 4,814 | 9,104 | +89% | 0 | 0 | — |
case-23 | fail→fail | 16,940 | 21,276 | +26% | 1 | 1 | 0% | 2,619 | 7,071 | +170% | 0 | 0 | — |
case-24 | fail→fail | 17,749 | 17,870 | +1% | 1 | 1 | 0% | 3,473 | 7,279 | +110% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 24 cases were attempted. The headline lift of +29 percentage points is the difference between those two pass rates over the 24 comparable cases.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.