Ensuring a proper workload balance and quick follow-ups from internal or external team members, leads, opportunities, or task distributions is crucial. To achieve this, all you need is a Round Robin assignment.
In this step-by-step guide, we will walk you through the process of implementing a round-robin assignment in Salesforce using Apex. Here, we’ve used the lead object; however, you can use it for any object. You can choose a suitable object for the Round Robin assignment based on the use case.

What is Round Robin Assignment?

Round Robin assignment is a method where each item is assigned to team members in a cyclic order. This ensures that every team member gets equal items, promoting fairness and efficiency.
In this implementation, we will utilize a checkbox on the user object. This checkbox will indicate which users are eligible for assignments. After setting up the checkbox, we will write a custom Apex trigger to implement round-robin logic. It ensures that records are evenly distributed among eligible users systematically and cyclically.

Step-by-Step Guide to Implement Round Robin in Salesforce

Steps you should follow to implement Round Robin in Salesforce

1. Create a Custom Field for Round Robin Assignment

Create a custom field on the target object to store the round-robin assignment number. This field will be used to manage and track the distribution of assignments.
In this blog, we are using the lead object for this, But you can use it for any object.

To create the field follow the below steps

  1. Open Setup.
  2. Search for Object Manager, and open it.
  3. Click Lead.
  4. Click Fields & Relationships.
  5. Click New Select Autonumber
  6. In Display Format, enter {0000}
  7. In Starting Format, enter 1
  8. Click Next and do not add this field into Layout and Click on Save.

2. Creating a checkbox for the User

We are creating a checkbox Field on the User object to identify which users need to be included in the round-robin assignment.

Create a Custom Checkbox Field

  1. In the User object, click on Fields & Relationships.
  2. Click on the New button.
  3. Choose the Checkbox data type and click Next.
  4. Enter the Field Label (Include in Round-Robin).
  5. Add the field to the desired page layouts and click Save.

Mark Users for Round-Robin Assignment

  1. Navigate to the User records you want to include in the round-robin process.
  2. Edit the User record and check the Include in Round-Robin checkbox.
  3. Save the changes.

3. Write the Apex Class for Round Robin Assignment

We will create an Apex class that implements the Round Robin assignment logic. This class will:

  • Retrieve a list of active users to whom leads will be assigned.
  • Assign leads to users in a cyclic order based on the Round Robin Number, which is a field created on the objects.

Here’s the Apex class:

In the above code, the Math.mod() function calculates the modulus of the record number divided by agents. This determines the position (or index) in the agent list to which the record will be assigned.

4. Call this Apex Class from a Trigger

We will call the Apex class from a trigger and pass the required parameters.
In this case, I am using it from the Lead object, but you can use the following code for any object in Salesforce by customizing the object and field references to suit your specific use case.

Test the functionality

Finally, test the functionality by creating multiple records. These records will be assigned to available users using the Round Robin algorithm.

Here is a demo for the Lead object.

Conclusion

Implementing a round-robin assignment in Salesforce using Apex ensures that leads, cases, opportunities, or tasks are distributed evenly among team members, promoting efficiency and fairness.
Hope this guide was helpful to you! Stay tuned for such informative blogs.

Related Articles
Best Salesforce Developments Services Provider

In this step-by-step guide, we will walk you through the significant role of Large Data Volumes in Salesforce, and what strategies or practices you should keep in mind. What is Large Data Volumes? In Salesforce, Large Data Volumes (LDV) refers to managing a huge amount of records available in the platform. LDV usually comes into […]

Read More

Salesforce Apex includes numerous built-in text handling classes, and in addition to them, the Pattern and Matcher classes are good for performing complex string operations. These classes enable us to define and work with regular expressions, which are of particular importance for data validation, searching, and modification. In this technical blog, we will find out […]

Read More

Maintaining security and compliance in Salesforce requires effective user access management. This article will lead you through the process of creating expiration dates for Permission Sets and Permission Set Groups, allowing you to automate access removal while minimizing manual work. Know how this functionality simplifies workflows, guarantees compliance, and improves security procedures. Why Use Expiration […]

Read More
Guide to Integrating Salesforce Data Cloud with Snowflake

Salesforce Data Cloud is an extensive data platform that offers a 360-degree view of your data. It functions as an AI platform which is used by marketing teams, sales departments, and other businesses. The primary goal of Data Cloud is to provide a comprehensive picture of customer data. It integrates with Snowflake which is a […]

Read More
How to Insert Contact from Salesforce into MailChimp using API

With the Mailchimp and Salesforce integration, you can begin using the leads and contacts in your Salesforce CRM to create email campaigns. The integration makes it relatively simple to construct list segmentations in Mailchimp using synchronized contact and lead details from Salesforce. Among other things, this integration lets you manage subscribers, view campaign reports, and […]

Read More

A headless Quick Action in Salesforce is a custom action executed within a Lightning Web Component (LWC). It doesn’t open the default modal window for user interaction and allows you to use custom logic and dynamic content. In this blog, we will walk you through the key steps of creating a headless Quick Actions in […]

Read More
Our Location worldwide
Indian Flag India
3rd Floor, A-10, Pegasus Tower, Sector 68, Noida, Uttar Pradesh 201301 +91-1203117884
United States of America Flag USA
333 West Brown Deer Road Unit G – 366 Milwaukee WI, USA 53217 +1(262) 310-7818
United Kingdom Flag UK
7 Bell Yard, London, WC2A 2JR +44 20 3239 9428
Canada Canada
HIC Global Solutions INC
43 Lafferty Lane, Richmond Hill, L4C 3N8, CA +1(262) 310-7818