Simplify your day-to-day activities by creating a Workflow to follow up with your Inbound Leads. Everything from a welcome email to the first phone call, to creating an Opportunity if the lead converts to a customer.
In this tutorial, we will walk you step by step to create your own Inbound Lead Follow-Up Workflow. The process we will describe here is used to automatically assign all new leads that are generated from the Website to the corresponding Sales representative to then perform specific Follow-up Activities.
To create this workflow make sure you have the following fields available in your Apps:
App | Fields Required |
Contact App |
Owner |
Task App |
Type |
Opportunity App |
Name |
Once you have all the required fields, then proceed with the creation of your Workflow. Click the "Create New Workflow" button and give your Workflow a name, we recommend "Lead Follow-up". Then for triggers, select "After Create" as we want to make sure all this process happens when new contacts are created, but also under Conditions make sure to add "Contact Source Is Website" to apply this flow to all the new contacts that are received through the website.
Now that we have the basics for our Workflow, let's continue with the diagram following these steps:
1. Lead Assignment
To get started you need to create a StartEvent. Once you've placed the StartEvent click on it and select the Update Record Activity for the Lead Assignment. It's icon with the pencil.
Now, let's configure the Lead Assignment Activity. Select the Activity and click the 'Edit' button (the pencil icon).
Then configure it with information from the table:
Lead Assignment - Update Record | ||
Name | Lead Assignment | |
Marker | None | |
App |
Contact |
|
InstanceId |
Type: Dynamic Value = entityInstance.instanceId |
|
Input Parameters | ||
Field | Type | Value |
Owner | Static | Select the name of the user. |
2. Welcome Email
The second step is to send out an email to the new lead. To do this, we need to create a new Task that uses an existing email template to welcome the new lead.
Note: For this step, it is required that the Email Template is already created.
Welcome Email - Create Record | ||
Name | Welcome Email | |
Marker | None | |
App |
Task |
|
Input Parameters | ||
Field | Type | Value |
Type | Static | |
Template | Static | Welcome Template* |
Description | Static | Welcome Email |
Assigned To | Dynamic | entityInstance.owner |
Source App | Static | Contact |
Source Record | Dynamic |
entityInstance.instanceId |
To | Dynamic | [ { email: entityInstance.workEmail, name: entityInstance.workEmail } ] |
Due Date | Dynamic | date(entityInstance.created + duration("PT30M")) |
3. Intro Phone Call
For the third step, we want our sales rep to call the new lead. For this, we will create a task of type 'Call'.
Intro Phone Call - Create Record | ||
Name | Intro Phone Call | |
Marker | None | |
App |
Task |
|
Input Parameters | ||
Field | Type | Value |
Type | Static | Call |
Assigned To | Dynamic | entityInstance.owner |
Description | Static | Intro Phone Call |
Source App | Static | Contact |
Source Record | Dynamic |
entityInstance.instanceId |
Due Date | Dynamic | date(entityInstance.created + duration("PT2H")) |
So far, your Workflow should look like this:
Now that we have made that initial contact, we want to create a 6-day follow-up sequence to email and call the lead to get them to convert. For this, we will need to create a SubProcess. For this, we want to wait one day before sending the lead a follow-up email and giving them a follow-up call. If they don't convert, then we wait 2 more days before the next follow-up. If after 5 days they don't convert, we finish the Sequence.
If they converted at any time during these 6 days, then we update the lead to converted and we can proceed to create an Opportunity. If they don't convert, then, we update the lead and set it as Re-Market.
4. 6 day Sequence
To start the Sequence, we need to Create an expanded SubProcess. Within this subprocess, we need to get a StartEvent to begin and the EndEvent to finish the sequence.
First Follow-Up
For this first follow-up, we want to wait 1 day, send a follow-up email, and set a follow-up call. To start, we need to add a StartEvent. Then we proceed to create those 3 elements in the following order:
Wait 1 Day - Timer Intermediate Catch Event | ||
Name | Wait 1 Day | |
Duration | P1D |
Send Follow-up Email 1 - Create Record | ||
Name | Send Follow-up Email 1 | |
Marker | None | |
App |
Task |
|
Input Parameters | ||
Field | Type | Value |
Type | Static | |
Description | Static | Follow Up Email |
Assigned To | Dynamic | entityInstance.owner |
Source App | Static | Contact |
Source Record | Dynamic |
entityInstance.instanceId |
To | Dynamic | [ { email: entityInstance.workEmail, name: entityInstance.workEmail } ] |
Follow-up Call 1 - Create Record | ||
Name | Follow-up Call 1 | |
Marker | None | |
App |
Task |
|
Input Parameters | ||
Field | Type | Value |
Type | Static | Call |
Description | Static | Follow-up Call 1 |
Assigned To | Dynamic | entityInstance.owner |
Source App | Static | Contact |
Source Record | Dynamic |
entityInstance.instanceId |
Second Follow-up
Follow the same process as the First Follow-up, the only difference is that this time we will wait for 2 days before continuing with the sequence.
Create the same 3 elements as above, just make sure to set the names to
"follow-up 2" and the Duration for your Timer to "P2D".
End Sequence
After the second follow-up, we will wait for 5 more days to see if the contact converts. Here is where we end our sequence. First, we add a Timer Intermediate Catch Event.
Wait 5 Days - Timer Intermediate Catch Event | ||
Name | Wait 5 Days | |
Duration | P5D |
Next, add the EndEvent.
Sequence resolution
Two things can happen during the sequence:
- The contact doesn't convert. For this particular result, we want to change the status of the contact to Re-market and end the process here.
- The contact converts. If this is the case, we want to create an Opportunity for this contact to finish with this process.
For the first scenario, where the contact doesn't covert, we just continue our flow right after the Sequence. Make sure you select the Subprocess box to then add the Edit Record activity, to connect them.
Re-Market Lead - Edit Record | ||
Name | Create Opportunity | |
Marker | None | |
App |
Contact |
|
InstanceId |
Type - Dynamic Value - entityInstance.instanceId |
|
Input Parameters | ||
Field | Type | Value |
Contact Stage | Static | Re-Market |
To finish this process, add an EndEvent.
Now let's review what we need in case our contact converts.
First, create a Message Intermediate Catch Event on the top border of the Sequence. Then we will create our new opportunity with the Create Record Activity to finally end our process with the EndEvent.
If Lead Converts - Message Intermediate Catch Event | ||
Name | If Lead Converts | |
App | Contact | |
Trigger | On Update | |
Field |
Contact Stage * Here is where we verify that the contact converted. |
|
InstanceId |
Type - Dynamic Value - entityInstance.instanceId |
|
Conditions | ||
Field | Contact Stage | |
Operator | Is | |
Type | Static | |
Value | Converted |
Create Opportunity - Create Record | ||
Name | Create Opportunity | |
Marker | None | |
App |
Opportunity |
|
Input Parameters | ||
Field | Type | Value |
Name | Dynamic | entityInstance.name |
Account | Dynamic | entityInstance.account |
Owner | Dynamic | entityInstance.owner |
Stage | Static | 1 - Discover |
Status | Static | Open |
Opportunity Score | Static |
1- Heating Up |
Opportunity Source | Dynamic | entityInstance.contactSource |
Forecast Category | Static | Pipeline |
Deal Type | Static | New Business |
Win Probability % | Static | 10% |
Contacts Involved | Dynamic | [ entityInstance.instanceId ] |
Don't forget to add the EndEvent at the end of the process.
Now save your Lead Follow-up Workflow.