Freshsales uses a serial method of background process for executing the triggers. This means that when a record is created or updated through the product UI or API automations, there is an order of precedence with which the triggers will be executed.
Triggers - Order of Execution
The order of execution for triggers in Freshsales is as follows:
Advantages of Serial Background Updation
More control on the order of execution
Better predictability on the outcome of execution compared to parallel background updation resulting in enhanced performance of the CRM.
To understand this better, let’s look at an example. Say, you create a lead named Fred Markley. As this is a manual action in the CRM, this will be reflected in the UI immediately. The automations or triggers related to James Markley will follow the order below before execution:
If there is a Marketplace Event present, this will be triggered. Any App listening to this event will be executed right away
The lead data enrichment for this record which is an automatic action will be queued first for execution. This includes first name, last name, full name, display pictures and personal social media profiles that would be retrieved using the email address of the contact.
The lead’s company data fields such as company logo, company address, company phone number that are retrieved from the company website will be next in line for automatic updation.
As this lead is from Michigan, the territory rule to automatically assign an owner is next in the queue for execution.
Since Fred is a Webinar lead, the workflow automation that specifies that contacts with the source as ‘webinar’ would have the stage as ‘Interested’ will be queued for execution.
Implicit Lead scoring - Lead score that helps determine if the contact is an ideal decision maker based on fields such as job title, company, industries and revenue.
Explicit Lead scoring - Lead scoring based on observed or inferred behaviors such as web pages visited, content downloaded or webinars attended.
Marketplace Event specified in step 1 is triggered again. Any App listening to this event will be executed right away.
The background execution for the above automations will be grouped and executed all at once.