Claude Code Plugins

Community-maintained marketplace

Feedback

Эксперт по email-маркетингу. Используй для email кампаний, автоматизации, сегментации, deliverability и A/B тестов.

Install Skill

1Download skill
2Enable skills in Claude

Open claude.ai/settings/capabilities and find the "Skills" section

3Upload to Claude

Click "Upload skill" and select the downloaded ZIP file

Note: Please verify skill by going through its instructions before using it.

SKILL.md

name email-marketing
description Эксперт по email-маркетингу. Используй для email кампаний, автоматизации, сегментации, deliverability и A/B тестов.

Email Marketing Expert

Comprehensive expertise in email marketing strategy and execution.

Core Competencies

Strategy

  • List building and segmentation
  • Email calendar planning
  • Lifecycle marketing
  • Personalization strategy
  • A/B testing frameworks

Automation

  • Welcome sequences
  • Nurture campaigns
  • Trigger-based emails
  • Re-engagement flows
  • Win-back sequences

Deliverability

  • Sender reputation management
  • Authentication (SPF, DKIM, DMARC)
  • List hygiene
  • Spam trap avoidance
  • ISP relationship management

Email Types

Marketing Emails

  • Newsletters
  • Promotional campaigns
  • Product announcements
  • Event invitations
  • Content distribution

Automated Sequences

  • Welcome series
  • Onboarding sequences
  • Lead nurturing
  • Abandoned cart
  • Re-engagement
  • Win-back

Transactional Emails

  • Order confirmations
  • Shipping updates
  • Password resets
  • Account notifications

Email Authentication Setup

# SPF Record
v=spf1 include:_spf.google.com include:sendgrid.net ~all

# DKIM Record
selector._domainkey.example.com IN TXT "v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3..."

# DMARC Record
_dmarc.example.com IN TXT "v=DMARC1; p=quarantine; rua=mailto:dmarc@example.com"

Key Metrics

Metric Benchmark Description
Open Rate 20-25% Unique opens / Delivered
Click Rate 2-5% Unique clicks / Delivered
Click-to-Open 10-15% Clicks / Opens
Unsubscribe Rate <0.5% Unsubscribes / Delivered
Bounce Rate <2% Bounces / Sent
Spam Complaints <0.1% Complaints / Delivered
Conversion Rate Varies Conversions / Clicks

Segmentation Strategies

Behavioral Segmentation:
  - Purchase history
  - Email engagement
  - Website activity
  - Product preferences
  - Cart abandonment

Demographic Segmentation:
  - Location/timezone
  - Job title/industry
  - Company size
  - Age/gender

Lifecycle Stages:
  - New subscribers
  - Active customers
  - At-risk (declining engagement)
  - Churned (re-activation target)
  - VIP/high-value

Automation Workflows

Welcome Sequence

Day 0 - Welcome Email:
  trigger: subscription_confirmed
  content: Brand introduction, expectations
  cta: Complete profile

Day 2 - Value Email:
  trigger: previous_opened OR time_delay
  content: Top content, quick wins
  cta: Explore resources

Day 5 - Social Proof:
  trigger: time_delay
  content: Customer stories, testimonials
  cta: See case studies

Day 7 - Soft CTA:
  trigger: time_delay
  content: Product introduction
  cta: Start free trial

Abandoned Cart Flow

Hour 1 - Reminder:
  trigger: cart_abandoned
  content: Items in cart reminder
  cta: Complete purchase

Hour 24 - Urgency:
  trigger: no_purchase
  content: Items may sell out
  cta: Secure your items

Hour 72 - Incentive:
  trigger: no_purchase
  content: Special discount offer
  cta: Get 10% off

A/B Testing Framework

Test Elements

Subject Lines:
  - Length (short vs long)
  - Personalization
  - Emojis
  - Questions vs statements
  - Urgency words

Content:
  - Layout (single vs multi-column)
  - Image count and placement
  - CTA button color/text
  - Copy length
  - Personalization depth

Timing:
  - Send day
  - Send time
  - Timezone optimization

Statistical Significance

import scipy.stats as stats

def calculate_significance(control_opens, control_sent,
                          variant_opens, variant_sent,
                          confidence=0.95):
    """Calculate if A/B test result is significant."""

    control_rate = control_opens / control_sent
    variant_rate = variant_opens / variant_sent

    # Pooled proportion
    pooled = (control_opens + variant_opens) / (control_sent + variant_sent)

    # Standard error
    se = (pooled * (1 - pooled) * (1/control_sent + 1/variant_sent)) ** 0.5

    # Z-score
    z = (variant_rate - control_rate) / se

    # P-value
    p_value = 2 * (1 - stats.norm.cdf(abs(z)))

    return {
        'control_rate': control_rate,
        'variant_rate': variant_rate,
        'lift': (variant_rate - control_rate) / control_rate * 100,
        'p_value': p_value,
        'significant': p_value < (1 - confidence)
    }

Best Practices

Subject Lines

  • Under 50 characters
  • Create curiosity or urgency
  • Personalize when appropriate
  • A/B test consistently
  • Avoid spam trigger words

Email Copy

  • Clear value proposition
  • Single primary CTA
  • Mobile-optimized layout
  • Scannable format with headers
  • Personalization tokens
  • Alt text for images

Deliverability

  • Clean lists regularly (remove bounces, unengaged)
  • Authenticate domains (SPF, DKIM, DMARC)
  • Maintain consistent sending volume
  • Monitor sender reputation
  • Use double opt-in
  • Honor unsubscribes immediately

Send Time Optimization

def optimize_send_time(subscriber_data):
    """Analyze historical engagement to find optimal send times."""

    engagement_by_hour = {}

    for subscriber in subscriber_data:
        local_time = convert_to_local(subscriber['open_time'],
                                      subscriber['timezone'])
        hour = local_time.hour

        if hour not in engagement_by_hour:
            engagement_by_hour[hour] = {'opens': 0, 'total': 0}

        engagement_by_hour[hour]['opens'] += 1
        engagement_by_hour[hour]['total'] += 1

    # Calculate open rates by hour
    for hour, data in engagement_by_hour.items():
        data['rate'] = data['opens'] / data['total']

    # Find best hours
    sorted_hours = sorted(engagement_by_hour.items(),
                         key=lambda x: x[1]['rate'],
                         reverse=True)

    return sorted_hours[:3]  # Top 3 hours

List Hygiene

Engagement Scoring

-- Calculate subscriber engagement score
SELECT
    subscriber_id,
    email,
    COUNT(CASE WHEN event_type = 'open' THEN 1 END) as opens_30d,
    COUNT(CASE WHEN event_type = 'click' THEN 1 END) as clicks_30d,
    MAX(event_date) as last_activity,
    CASE
        WHEN COUNT(CASE WHEN event_type = 'open' THEN 1 END) >= 5 THEN 'highly_engaged'
        WHEN COUNT(CASE WHEN event_type = 'open' THEN 1 END) >= 2 THEN 'engaged'
        WHEN COUNT(CASE WHEN event_type = 'open' THEN 1 END) >= 1 THEN 'somewhat_engaged'
        ELSE 'unengaged'
    END as engagement_tier
FROM email_events
WHERE event_date >= CURRENT_DATE - INTERVAL '30 days'
GROUP BY subscriber_id, email;

Sunset Policy

Re-engagement Campaign:
  trigger: no_opens_60_days
  sequence:
    - Day 0: "We miss you" email
    - Day 7: "Last chance" with offer
    - Day 14: Final warning

  action_after_sequence:
    if: no_engagement
    then: move_to_suppression_list

Tools Proficiency

ESP Platforms

  • SMB: Klaviyo, Mailchimp, ConvertKit
  • Mid-Market: HubSpot, ActiveCampaign, Drip
  • Enterprise: Salesforce Marketing Cloud, Marketo, Braze

Transactional

  • SendGrid, Postmark, Amazon SES, Mailgun

Testing & Preview

  • Litmus, Email on Acid

Analytics

  • Google Analytics (UTM tracking)
  • Native ESP analytics
  • Custom data warehouse

Лучшие практики

  1. Permission-based — только подтверждённые подписчики
  2. Segmentation — релевантный контент для сегментов
  3. Testing — постоянное A/B тестирование
  4. Automation — автоматизируйте lifecycle emails
  5. Deliverability — мониторинг репутации отправителя
  6. Mobile-first — 60%+ открытий на мобильных