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.
image 6

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.
image 7

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.
image 8

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
Expert Guide On Nominal XIRR Calculation Using LWC in Salesforce

When building financial tools within Salesforce, handling irregular cash flows with precision is a must. Whether you’re developing investment trackers, portfolio performance dashboards, or funding monitors, calculating Nominal XIRR (Extended Internal Rate of Return) becomes essential. In this blog, you’ll learn how to build a Lightning Web Component (LWC) in Salesforce that calculates Nominal XIRR […]

Read More
Beginners Guide to Making Your LWC Component Multilingual

If you’re wondering how to make your LWC component multilingual, you’re already ahead of the curve. Global users expect content in their native language, and Salesforce gives you the tools to deliver exactly that. With Custom Labels and the Translation Workbench, you can easily localize your Lightning Web Components without touching a single line of […]

Read More
Hands-On Guide Building a Drag-and-Drop Form Builder Using Lightning Web Components

Drag-and-drop interfaces are a user experience staple, and when paired with the power of Lightning Web Components (LWC), they unlock dynamic, highly interactive Salesforce components. In this blog post, we’ll walk you through how to build a custom drag-and-drop form builder in LWC. Users can drag form fields like text inputs and dropdowns into a […]

Read More
Please Make Blog Banner How to Create an Agentforce Enabled Scratch Org in Salesforce 100 1

Setting up an Agentforce-enabled scratch org is the most important step for developers who want to experiment with AI features such as Prompt Builder and Einstein GPT. Whether you’re developing the next generation CRM software or experimenting with how generative AI may improve user experience, a scratch org equipped with Agentforce is your playground. Follow […]

Read More
Step-by-Step Guide to Enhance Your LWC Development Workflow with the Logger API

Are you looking to streamline your LWC development workflow but confused about how to do it? Then you are in the right place. The Salesforce Logger API is a powerful tool that helps you monitor, debug, and improve code quality in real time.  This step-by-step guide walks you through how to set it up and […]

Read More
Enhancing Your Salesforce Experience with a Custom Activity Component

In today’s fast-paced business landscape, productivity hinges on streamlined workflows and intuitive interfaces. While Salesforce offers robust activity tracking capabilities, sometimes the standard components fall short of specific organizational needs.  That’s where a Custom Activity Component comes in—designed to tailor your activity management experience, boost user efficiency, and provide deeper insights into customer interactions. 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