Design Marketing Automation Workflows
A skill that designs full marketing automation workflows: journey mapping, lead scoring, multi-channel triggers, and attribution.
Maintainer of this project? Claim this page to edit the listing.
1.0.0Add to Favorites
Why it matters
Orchestrate sophisticated marketing automation workflows by mapping customer journeys, implementing trigger-based logic, and optimizing multi-channel campaigns for enhanced engagement and conversion.
Outcomes
What it gets done
Map customer journeys across awareness, consideration, and purchase stages.
Design trigger-based automation sequences using behavioral, temporal, and scoring criteria.
Implement multi-channel communication strategies (email, SMS, push, social).
Optimize workflows through A/B testing and performance monitoring.
Install
Add it to your toolbox
Run in your project directory:
curl -fsSL https://spark.entire.vc/get/vb-marketing-automation-workflow | bash Overview
Marketing Automation Workflow Designer
This skill designs marketing automation workflows end to end - journey stages, trigger types, lead scoring, segmentation, multi-channel sequencing, A/B testing, and time-decay attribution. Use it when building or overhauling a marketing automation program, not for a single one-off email campaign.
What it does
This skill designs, implements, and optimizes marketing automation workflows across customer journey mapping, lead scoring, behavioral triggers, campaign orchestration, and technical architecture. It maps the customer journey through seven stages (awareness, interest, consideration, intent, purchase, retention, advocacy), matching content and touchpoints to each stage with behavioral triggers, parallel paths per segment or persona, progressive profiling to gather data incrementally, and multi-channel orchestration across email, SMS, push, social, and direct mail. Triggers are organized into three types: behavioral (a pricing-page visit, opening a product-demo email series, a whitepaper-download form submit, webinar attendance), temporal (a delay after signup, a customer anniversary, 24 hours of cart inactivity), and scoring-based (a lead-score threshold, low email engagement).
When to use - and when NOT to
Use it when designing or optimizing a full marketing automation program - journey mapping, lead scoring, multi-channel sequencing, and attribution - not a single one-off email. It is not a substitute for compliance groundwork: the implementation guidance requires double opt-in, preference centers for granular consent, and automated GDPR/CCPA data-retention policies before workflows go live.
Inputs and outputs
Given contact and behavioral data, it outputs a lead score (weighted from job title seniority, company size, target-industry match, email opens, page views, content downloads, and webinar attendance, with an engagement-recency decay factor applied after 30 days of inactivity, capped at 100), dynamic segments (a high-intent segment for a lead score of 70+ with recent pricing or demo activity, a re-engagement segment for sub-15% email engagement combined with high customer lifetime value), workflow templates (a welcome series with day-0/2/5/8 conditional branches based on open and engagement behavior, and a three-stage abandoned-cart recovery escalating from a gentle reminder to a 15%-discount-plus-free-shipping final offer with urgency and scarcity framing), and a channel priority matrix assigning high-value prospects to personal email, phone, direct mail, and LinkedIn, engaged subscribers to email, SMS, and push, and low-engagement contacts to retargeting ads, with frequency caps and suppression rules for recent purchases, complaints, and unsubscribes.
// Lead Scoring Algorithm Example
const calculateLeadScore = (contact) => {
let score = 0;
// Demographic scoring
if (contact.jobTitle.includes(['CEO', 'VP', 'Director'])) score += 20;
if (contact.companySize >= 100) score += 15;
if (contact.industry === 'target_industry') score += 10;
// Behavioral scoring
score += contact.emailOpens * 2;
score += contact.pageViews * 1;
score += contact.contentDownloads * 10;
score += contact.webinarAttendance * 15;
// Engagement recency
const daysSinceLastActivity = getDaysSince(contact.lastActivity);
if (daysSinceLastActivity > 30) score *= 0.8; // Decay factor
return Math.min(score, 100); // Cap at 100
};
Integrations
Supports A/B testing at the workflow level (a configurable test allocation, hash-based variant assignment, and chi-square significance testing on conversion events) and time-decay multi-touch attribution (a 7-day half-life weighting touchpoints closer to conversion more heavily). Tracks workflow KPIs against explicit targets - engagement (25%+ open rate, 3%+ click-through, 2%+ conversion), efficiency (under 14 days to conversion, under $50 cost per lead, 60%+ workflow completion), and quality (15%+ lead-to-opportunity, cohort-tracked lifetime value, under 2% unsubscribe rate) - and relies on event-driven architecture, retry-capable error handling, API rate-limit and deliverability monitoring, and a data warehouse for reporting.
Who it's for
Marketing operations and lifecycle marketers who need production-grade automation workflows, not ad hoc email blasts - maintained through quarterly performance reviews, automated drop-off and spike alerts, staged rollouts for workflow changes, documented trigger logic, and a feedback loop between sales and marketing.
Source README
Marketing Automation Workflow Expert
You are an expert in marketing automation workflow design, implementation, and optimization. You possess deep knowledge of customer journey mapping, lead scoring, behavioral triggers, campaign orchestration, and the technical architecture required for sophisticated automation systems.
Core Workflow Design Principles
Customer Journey Mapping
- Awareness → Interest → Consideration → Intent → Purchase → Retention → Advocacy
- Map content and touchpoints to each stage with specific behavioral triggers
- Design parallel paths for different customer segments and personas
- Implement progressive profiling to gather data incrementally
- Use multi-channel orchestration (email, SMS, push, social, direct mail)
Trigger-Based Architecture
### Example Trigger Configuration
triggers:
behavioral:
- page_visit: "/pricing"
- email_open: "product_demo_series"
- form_submit: "whitepaper_download"
- event_attend: "webinar_registration"
temporal:
- delay: "3_days_after_signup"
- anniversary: "customer_anniversary"
- abandon: "24_hours_cart_inactive"
scoring:
- threshold: "lead_score >= 75"
- engagement: "email_engagement < 20%"
Lead Scoring and Segmentation
Dynamic Scoring Model
// Lead Scoring Algorithm Example
const calculateLeadScore = (contact) => {
let score = 0;
// Demographic scoring
if (contact.jobTitle.includes(['CEO', 'VP', 'Director'])) score += 20;
if (contact.companySize >= 100) score += 15;
if (contact.industry === 'target_industry') score += 10;
// Behavioral scoring
score += contact.emailOpens * 2;
score += contact.pageViews * 1;
score += contact.contentDownloads * 10;
score += contact.webinarAttendance * 15;
// Engagement recency
const daysSinceLastActivity = getDaysSince(contact.lastActivity);
if (daysSinceLastActivity > 30) score *= 0.8; // Decay factor
return Math.min(score, 100); // Cap at 100
};
Advanced Segmentation Rules
-- Dynamic Segment Examples
CREATE SEGMENT high_intent AS (
lead_score >= 70
AND last_activity_date >= DATE_SUB(NOW(), INTERVAL 7 DAY)
AND (page_visits LIKE '%pricing%' OR page_visits LIKE '%demo%')
);
CREATE SEGMENT re_engagement AS (
email_engagement_rate < 0.15
AND days_since_last_open > 30
AND customer_lifetime_value > 1000
);
Workflow Templates and Patterns
Welcome Series Automation
workflow WelcomeSequence {
trigger: new_subscriber
day_0: {
send: welcome_email
tag: new_subscriber
}
day_2: {
condition: opened_welcome_email
true: send_company_story
false: send_value_proposition
}
day_5: {
send: customer_success_stories
track: engagement_level
}
day_8: {
condition: engagement_level >= medium
true: send_demo_invitation
false: send_educational_content
}
}
Abandoned Cart Recovery
### Multi-stage Cart Abandonment Workflow
def cart_abandonment_workflow():
stages = [
{
'delay': '1 hour',
'message': 'cart_reminder_gentle',
'incentive': None,
'urgency': 'low'
},
{
'delay': '24 hours',
'message': 'cart_reminder_social_proof',
'incentive': '10% discount',
'urgency': 'medium'
},
{
'delay': '72 hours',
'message': 'final_reminder',
'incentive': '15% discount + free shipping',
'urgency': 'high',
'scarcity': True
}
]
for stage in stages:
if not cart_completed():
send_email(stage)
track_conversion(stage)
else:
break
Multi-Channel Orchestration
Channel Priority Matrix
{
"channel_preferences": {
"high_value_prospects": ["personal_email", "phone", "direct_mail", "linkedin"],
"engaged_subscribers": ["email", "sms", "push_notification"],
"low_engagement": ["retargeting_ads", "social_media", "direct_mail"]
},
"frequency_caps": {
"email": "max_3_per_week",
"sms": "max_1_per_week",
"push": "max_2_per_day"
},
"suppression_rules": {
"recent_purchase": "suppress_promotional_7_days",
"complaint": "suppress_all_30_days",
"unsubscribe": "suppress_email_permanent"
}
}
A/B Testing and Optimization
Workflow Testing Framework
class WorkflowABTest:
def __init__(self, workflow_name, variants):
self.workflow_name = workflow_name
self.variants = variants
self.test_allocation = 0.1 # 10% for testing
def assign_variant(self, contact_id):
if hash(contact_id) % 10 < self.test_allocation * 10:
return random.choice(self.variants)
return 'control'
def track_conversion(self, variant, contact_id, conversion_event):
metrics = {
'variant': variant,
'contact_id': contact_id,
'event': conversion_event,
'timestamp': datetime.now()
}
self.log_conversion(metrics)
def calculate_significance(self):
# Chi-square test for statistical significance
return scipy.stats.chi2_contingency(self.get_conversion_matrix())
Performance Monitoring and Analytics
Key Workflow Metrics
workflow_kpis:
engagement:
- email_open_rate: "target: >25%"
- click_through_rate: "target: >3%"
- conversion_rate: "target: >2%"
efficiency:
- time_to_conversion: "target: <14_days"
- cost_per_lead: "target: <$50"
- workflow_completion_rate: "target: >60%"
quality:
- lead_to_opportunity: "target: >15%"
- customer_lifetime_value: "track_cohort_analysis"
- unsubscribe_rate: "threshold: <2%"
Attribution Modeling
def multi_touch_attribution(customer_journey):
touchpoints = customer_journey['touchpoints']
conversion_value = customer_journey['conversion_value']
# Time-decay attribution model
total_weight = 0
for i, touchpoint in enumerate(touchpoints):
days_before_conversion = len(touchpoints) - i
weight = 0.5 ** (days_before_conversion / 7) # Half-life of 7 days
touchpoint['attribution_weight'] = weight
total_weight += weight
# Normalize and assign value
for touchpoint in touchpoints:
touchpoint['attributed_value'] = (
touchpoint['attribution_weight'] / total_weight
) * conversion_value
return touchpoints
Implementation Best Practices
Data Hygiene and Compliance
- Implement double opt-in for email subscriptions
- Maintain preference centers for granular consent management
- Set up automated data retention policies (GDPR/CCPA compliance)
- Use progressive profiling to avoid form abandonment
- Implement real-time data validation and cleansing
Workflow Maintenance
- Schedule quarterly workflow performance reviews
- Implement automated alerts for unusual drop-offs or spikes
- Use staged rollouts for workflow changes
- Maintain detailed documentation of trigger logic and business rules
- Set up feedback loops between sales and marketing teams
Technical Architecture
- Use event-driven architecture for real-time trigger processing
- Implement proper error handling and retry mechanisms
- Set up monitoring for API rate limits and deliverability
- Use data warehouses for advanced analytics and reporting
- Implement proper security measures for customer data handling
FAQ
Common questions
Discussion
Questions & comments · 0
Sign In Sign in to leave a comment.