Skip to content

Lead Capture to CRM Workflow

Automatically capture leads from website forms and add them to your CRM with intelligent duplicate detection


Overview

This beginner-friendly workflow demonstrates how to capture form submissions from your website, check if the contact already exists in your CRM, and send a personalized welcome email to new leads.

What You'll Build: - Receive form submissions via webhook - Automatically match to existing contacts (prevent duplicates) - Tag new leads with "Website Lead" - Send personalized welcome email - Log activity in CRM

Real-World Applications: - Contact form submissions - Newsletter signups - Download/resource requests - Event registrations - Free trial requests


Workflow Diagram

graph LR
    A[Website Form<br/>TRIGGER] --> B[Match to Client<br/>ACTION]
    B --> C{If Statement<br/>New Contact?}
    C -->|Yes| D[Edit Client<br/>Add Tag]
    C -->|No| E[Workflow Note<br/>Log Return Visit]
    D --> F[Email<br/>Welcome Message]
    E --> G[Email<br/>Thank You]
    F --> H[End]
    G --> H

Tasks Used

Order Task Type Purpose Difficulty
1 Website Form Capture form submission data ⭐ Beginner
2 Match to Client Find existing contact record ⭐ Beginner
3 If Statement Check if new contact ⭐ Beginner
4 Edit Client Add "Website Lead" tag ⭐ Beginner
5 Email Send welcome email ⭐ Beginner
6 Workflow Note Log activity ⭐ Beginner

Total Setup Time: 15-20 minutes
Skill Level: Beginner
Prerequisites: Embedded website form or external form webhook


Step-by-Step Setup

Step 1: Create Workflow

  1. Go to Settings → Automation
  2. Click Add Workflow
  3. Enter workflow name: Lead Capture - Website Form
  4. Description: Capture form leads and send welcome email
  5. Click Create Workflow

Create Workflow Modal


Step 2: Add Website Form Trigger

  1. Click Add Task on canvas
  2. Search for "Website Form" or filter by Triggers
  3. Click Website Form card
  4. Configure:
  5. Form: Select your website form from dropdown
  6. Task Name: Capture Form Submission

Output Variables Available:

{{task_1001_name}}              // Full name from form
{{task_1001_email}}             // Email address
{{task_1001_phone}}             // Phone number
{{task_1001_company}}           // Company name
{{task_1001_message}}           // Message field
{{task_1001_utm_source}}        // UTM source
{{task_1001_utm_campaign}}      // UTM campaign

Website Form Trigger Configuration


Step 3: Add Match to Client Task

  1. Click Add Task below form trigger
  2. Search for "Match to Client"
  3. Configure:
  4. Parent Task: Capture Form Submission
  5. Match by: Email (recommended)
  6. Email Field: {{task_1001_email}}
  7. Name Field: {{task_1001_name}}
  8. Phone Field: {{task_1001_phone}}
  9. Company Field: {{task_1001_company}}
  10. Create if not found: ✅ Yes (checked)

What This Does: - Searches for existing contact with matching email - Creates new contact if no match found - Prevents duplicate records automatically

Output Variables:

{{task_1002_client_id}}         // Contact ID (new or existing)
{{task_1002_is_new_client}}     // true/false
{{task_1002_client_name}}       // Contact name
{{task_1002_client_email}}      // Contact email

Match to Client Configuration


Step 4: Add If Statement (Check if New)

  1. Click Add Task below Match to Client
  2. Search for "If Statement"
  3. Configure:
  4. Parent Task: Match to Client
  5. Condition Type: Text comparison
  6. Field 1: {{task_1002_is_new_client}}
  7. Operator: Equals
  8. Field 2: true
  9. Task Name: Check if New Contact

What This Does: - Branches workflow based on whether contact is new - New contacts get welcome email + tag - Existing contacts get thank you email

If Statement Configuration


Step 5a: Add Tag for New Contacts (TRUE Branch)

  1. Click Add Task on TRUE branch
  2. Search for "Edit Client"
  3. Configure:
  4. Parent Task: Check if New Contact (TRUE)
  5. Client ID: {{task_1002_client_id}}
  6. Action: Add Tags
  7. Tags: Website Lead, {{task_1001_utm_source}}
  8. Task Name: Tag New Lead

What This Does: - Adds "Website Lead" tag to new contacts - Optionally adds UTM source as tag for attribution


Step 5b: Log Return Visit (FALSE Branch)

  1. Click Add Task on FALSE branch
  2. Search for "Workflow Note"
  3. Configure:
  4. Parent Task: Check if New Contact (FALSE)
  5. Client ID: {{task_1002_client_id}}
  6. Note Type: Website
  7. Note: Submitted form again: {{task_1001_message}}
  8. Task Name: Log Return Visit

What This Does: - Records activity for existing contacts - Tracks repeat form submissions - Visible in contact timeline


Step 6a: Send Welcome Email (New Contacts)

  1. Click Add Task after "Tag New Lead"
  2. Search for "Email"
  3. Configure:
  4. Parent Task: Tag New Lead
  5. To: {{task_1002_client_email}}
  6. From Name: Your Company
  7. From Email: hello@yourcompany.com
  8. Subject: Welcome {{task_1002_client_name}}!
  9. Body:
    Hi {{task_1002_client_name}},
    
    Thank you for your interest in [Your Company]!
    
    We received your message:
    "{{task_1001_message}}"
    
    A member of our team will reach out within 24 hours.
    
    In the meantime, check out these resources:
    - [Resource 1]
    - [Resource 2]
    - [Resource 3]
    
    Best regards,
    The [Your Company] Team
    

Personalization Variables: - {{task_1002_client_name}} - Contact's name - {{task_1001_message}} - Their form message - {{task_1001_company}} - Their company

Email Task Configuration


Step 6b: Send Thank You Email (Existing Contacts)

  1. Click Add Task after "Log Return Visit"
  2. Search for "Email"
  3. Configure:
  4. Parent Task: Log Return Visit
  5. To: {{task_1002_client_email}}
  6. Subject: Thanks for reaching out again!
  7. Body:
    Hi {{task_1002_client_name}},
    
    Great to hear from you again!
    
    We've logged your message and will follow up shortly.
    
    Your message:
    "{{task_1001_message}}"
    
    Best,
    The Team
    

Step 7: Test Your Workflow

Test with Form Trigger Record

  1. Click on Website Form trigger task
  2. In LEFT panel, click Create Test Record
  3. Fill in test data:
  4. Name: Test User
  5. Email: test@example.com
  6. Phone: +1234567890
  7. Message: This is a test submission
  8. Click Save Test Record
  9. Click Run Task on form trigger
  10. Watch workflow execute through all tasks

Verify Each Task

  1. Match to Client - Check output shows existing client found
  2. If Statement - Verify TRUE branch taken (new contact)
  3. Edit Client - Confirm "Website Lead" tag added in CRM
  4. Email - Check email sent (view in email logs)

Test Workflow Execution


Step 8: Enable Workflow

  1. Once tested successfully, toggle Enable on each task
  2. Workflow will now run automatically on form submissions

Expected Output

For New Contacts:

  1. ✅ Contact created in CRM
  2. ✅ Tagged with "Website Lead"
  3. ✅ Welcome email sent
  4. ✅ Form submission logged

For Existing Contacts:

  1. ✅ Contact matched (no duplicate created)
  2. ✅ Return visit logged in workflow notes
  3. ✅ Thank you email sent
  4. ✅ Form submission logged

Common Issues & Solutions

Issue: Duplicate contacts still being created

Cause: Match to Client not configured correctly

Solution: 1. Verify "Match by Email" is selected 2. Ensure email variable is correct: {{task_1001_email}} 3. Check "Create if not found" is enabled 4. Test with known email address


Issue: Welcome email sent to existing contacts

Cause: If Statement logic reversed

Solution: 1. Check If Statement compares {{task_1002_is_new_client}} equals true 2. Verify Welcome Email is on TRUE branch 3. Verify Thank You Email is on FALSE branch


Issue: Variables showing as empty {{task_X_field}}

Cause: Parent task not selected or task not run

Solution: 1. Verify each task has correct Parent Task selected 2. Run tasks in order from trigger down 3. Check trigger task output in RIGHT panel 4. Ensure previous task completed successfully


Issue: Emails not sending

Cause: Email configuration or SMTP settings

Solution: 1. Verify "From Email" is authorized sender 2. Check email syntax is valid 3. Test with your own email address first 4. Check email logs in Settings → Email Logs


Workflow Enhancements

Add SMS Notification

After welcome email, add SMS task:

To: {{task_1002_client_phone}}
Message: Hi {{task_1002_client_name}}! Thanks for reaching out. 
We'll be in touch soon. - [Your Company]

Add Lead Scoring

Use Edit Client to set custom field:

Field: lead_score
Value: 10
(Increase score based on UTM source or form type)

Add Slack Notification

Add Webhook Out task to notify sales team:

URL: https://hooks.slack.com/services/YOUR/WEBHOOK/URL
Method: POST
Body: 
{
  "text": "🎉 New lead: {{task_1002_client_name}} ({{task_1002_client_email}})"
}

Add Lead Assignment

Use Round Robin task to assign to sales rep:

Assign To: Sales Team
Update Field: assigned_to
Client ID: {{task_1002_client_id}}




Next Steps

You've built your first workflow!

Try these next: 1. Add more form fields (company, job title, etc.) 2. Create different email templates for different forms 3. Set up lead scoring based on UTM parameters 4. Add delay task for follow-up email after 24 hours 5. Create assignment rules for different lead sources

Need help? Check Troubleshooting or Best Practices