Salesforce

Read time : 

4
 mins

How to Guide for Round Robin Lead Assignment Set Up in Salesforce

If your team generates inbound leads and has multiple sales reps handling them, fair distribution matters. Assigning leads manually is slow and inconsistent. This guide shows you how to build a native round robin lead assignment system in Salesforce using Flow - no third-party app required.

By

Romain Blanc

Co-founder

September 19, 2025

What is Round Robin Lead Assignment?

Round robin assignment means leads are distributed evenly across your sales team in rotation. Rep 1 gets the first lead, Rep 2 gets the second, Rep 3 gets the third, then it cycles back to Rep 1 - and so on.

It keeps workloads balanced, removes bias from assignment, and ensures every new lead gets picked up quickly.

What You Will Build

A Salesforce Flow triggered on lead creation that:

  1. Finds the rep who was assigned a lead the longest time ago
  2. Assigns the new lead to that rep
  3. Updates a timestamp on that rep's user record so the rotation stays accurate

No custom code, no AppExchange package needed.

Prerequisites

  • Salesforce Admin access
  • At least one active queue or a defined group of users to rotate leads across
  • Flow Builder access

Step 1 - Create a Custom Field on the User Object

You need a way to track when each rep last received a lead. Create a new field on the User object:

Setting Value
Object User
Field Label Latest Lead Assignment Date
Field Type Date/Time
API Name Latest_Lead_Assignment_Date__c

This field will be updated every time a lead is assigned to a rep. It is what the flow uses to determine whose turn it is next.

Step 2 - Create a Flow Triggered on Lead Creation

Go to Setup > Flow Builder and create a new Record-Triggered Flow with the following settings:

  • Object: Lead
  • Trigger: A record is created
  • Optimize for: Actions and Related Records

Step 3 - Add a "Get Records" Element to Find the Next Rep

Add a Get Records element to the flow. This step looks up the user who has gone the longest without receiving a lead.

Configure it as follows:

Setting Value
Object User
Filter conditions Only include reps eligible for lead assignment (e.g. a specific Profile or Role)
Sort by Latest_Lead_Assignment_Date__c, Ascending
How many records Only the first record

Sorting by the assignment date ascending means the rep at the top is always the one who has waited the longest - exactly who should receive the next lead.

Step 4 - Add an "Update Records" Element to Assign the Lead

Add an Update Records element. This step does two things:

First, update the newly created Lead record:

  • Set OwnerId to the User ID returned from the Get Records element in Step 3

Second, update the User record of the rep who just received the lead:

  • Set Latest_Lead_Assignment_Date__c to the current date and time ({!$Flow.CurrentDateTime})

This keeps the rotation accurate for the next lead that comes in.

Step 5 - Activate the Flow

Save and activate the flow. From this point on, every new lead created in Salesforce will be automatically assigned to the next rep in rotation.

Going Further: Advanced Assignment Logic

The setup above handles simple round robin across a flat team. If your situation is more complex, you can extend the same approach:

  • Territory-based assignment - filter the Get Records element by a territory field on the User object before sorting by date
  • Product-based assignment - use a Decision element before the Get Records step to route leads to different rep pools based on the product field on the lead
  • Capacity weighting - instead of pure rotation, weight assignment by a "max leads" field on the User object to give senior reps more volume
  • Out-of-office handling - add a filter to exclude users where an "Active for Assignment" checkbox is unchecked

For complex configurations involving territory mapping, capacity rules, or multi-team routing, feel free to reach out - this is something we help Heeet customers set up regularly.

Summary

Building round robin lead assignment in Salesforce requires just two things: a custom Date/Time field on the User object to track the last assignment, and a Record-Triggered Flow that finds the rep who waited the longest and assigns the new lead to them. No paid tools, no code. The same logic can be extended to handle territories, products, or capacity-based routing as your team grows.

Ready to build smarter lead routing? Talk to us

Summary

Talk to us

Ready to track prospects from lead to close with Heeet?

Heeet gives marketers and sales professionals at IT & Security firms turn geuss work intro informed decisions that drive revenue while meeting the same secruity technical standards you provide your clients.

Talk to us