Skip to content

Round Robin Assignment with Workload Balancing in ClickUp

ClickUp users have long requested a native feature for round-robin task assignment that also considers workload. The idea is simple: when a new task comes in, automatically assign it to team members in rotation, but prioritize those with fewer tasks currently on their plate.

ClickUp Feature Request

This guide shows you how to build this solution using EnforcedFlow’s Advanced Round Robin feature integrated with Zapier to create two automations:

  1. Automation 1 (Task Assignment): When a new task is created in ClickUp, it automatically assigns the task to the next available agent based on their current workload priority.

  2. Automation 2 (Workload Tracking): Runs on a schedule (e.g., every hour) to count each agent’s in-progress tasks and update their priority weights accordingly. Agents with fewer tasks get higher priority for new assignments.


Before you begin, ensure you have:

  1. An account with EnforcedFlow (Sign up here)
  2. Zapier account
  3. EnforcedFlow and ClickUp connected to your Zapier account (you can do this when setting up the automation)

Ensure you have a Zapier account with your ClickUp workspace connected. You’ll need this connection for both automations.


After signing up, you’ll land on the EnforcedFlow dashboard where you can configure your round-robin group.

  1. Navigate to the Advanced Round Robin section in your dashboard
  2. Click to create a new group
  3. Give your group a descriptive name (e.g., “ClickUpTaskAssignmentDemo”)

Create Group

You need to add a field to store each agent’s ClickUp User ID. This allows EnforcedFlow to identify which ClickUp user corresponds to each agent.

  1. In your group, under the Settings tab, find the Agent’s Information Fields section
  2. In the Add New Field input, type clickup_user_id
  3. Click Add

Adding Agent Information Field

Once added, you’ll see the field listed under Agent’s Information Fields.

Agent Information Field Added

Now switch to the Fields tab to add a weight field for workload tracking.

Fields Tab

  1. Click Create First Field
  2. Select Weight as the Field Type
  3. Set Display Label to In Progress Tasks
  4. Select De-prioritize as the Weight Mode
  5. Click Save

Understanding Weight Modes: Weight fields control agent prioritization. Prioritize means higher values receive more assignments (useful for seniority). De-prioritize means higher values receive fewer assignments (ideal for workload balancing). With De-prioritize, agents with more in-progress tasks will be deprioritized, and agents with fewer tasks will receive new assignments first.

Weight Field Configuration

Switch to the Agents tab to add your team members. Click Add Agent to open the agent form.

Agents Tab

Before adding agents, you’ll need each team member’s ClickUp User ID. To get it:

  1. Log into ClickUp
  2. Click Teams in the left sidebar
  3. Select All People to see all workspace members

ClickUp Teams Page

  1. Click the more options (three dots) on a team member’s card
  2. Select Copy member ID

Copy Member ID

For each team member, fill in the Add New Agent form:

  1. Enter the Agent Name (e.g., “Sarah”)
  2. Paste the Clickup User Id you copied
  3. Set the In Progress Tasks weight value to 1 (starting value)
  4. Click Add Agent

Repeat for all agents in your team.

Add New Agent Form

Once done, you’ll see all agents listed.

Agents List


Part 2: Automation 1 - Assign Tasks on Creation

Section titled “Part 2: Automation 1 - Assign Tasks on Creation”

This automation triggers when a new task is created in ClickUp and assigns it to the next available agent.

We recommend creating a folder in Zapier to organize both automations.

Zapier Folder

The completed automation flow looks like this:

Automation 1 Flow

  1. Create a new Zap in Zapier
  2. Select ClickUp as the app
  3. Choose New Task as the trigger event
  4. Connect your ClickUp account
  5. Click Continue

ClickUp Trigger Setup

  1. Select your Workspace
  2. Optionally select a Space to limit the scope (leave empty to track all tasks)
  3. Set Include Subtasks to True if needed
  4. Click Continue

ClickUp Trigger Configure

  1. Click Find new records to pull recent tasks from ClickUp
  2. Select a test task from the list
  3. Click Continue with selected record

ClickUp Trigger Test

Click the + button to add a new step.

Add Step

  1. Search for EnforcedFlow
  2. Select EnforcedFlow from the results

Search EnforcedFlow

  1. Select Get Next Agent (Advanced Round Robin) as the action
  2. Connect your EnforcedFlow account
  3. Click Continue

Select Action

  1. Click on Round Robin Group dropdown
  2. Select your group from the list

Select Group

Click Test step to retrieve agent data. This is required for the next step to work properly.

Test EnforcedFlow

Add another step and configure it:

  1. Select ClickUp as the app
  2. Choose Update Task as the action
  3. Connect your ClickUp account
  4. Click Continue

Note: Zapier may show a warning about potential loops. This is safe to ignore as long as your trigger is “New Task” and you’re using “Update Task” (not “Create Task”).

Update Task Setup

  1. Select your Workspace
  2. For the Task field, click to switch to Custom mode

Update Task Configure

  1. Expand 1. New Task in ClickUp from Previous Steps
  2. Select Task Id to map the task from the trigger

Map Task ID

The Task field should now show the mapped Task Id.

  1. Scroll down to Add Assignee and select the Clickup User Id from the EnforcedFlow step

Task ID Selected

  1. Test the step to verify it works
  2. Click Publish to activate the automation

Publish


Part 3: Automation 2 - Update Agent Workloads

Section titled “Part 3: Automation 2 - Update Agent Workloads”

This automation runs periodically to count each agent’s tasks and update their weights, ensuring the round-robin stays balanced based on actual workload.

Automation 2 Overview

  1. Create a new Zap
  2. Select Schedule by Zapier as the trigger app
  3. Choose Every Hour as the trigger event (adjust frequency as needed)
  4. Configure and continue

Schedule Trigger

Step 2: Find Agents in the Round Robin Group

Section titled “Step 2: Find Agents in the Round Robin Group”
  1. Add an EnforcedFlow action
  2. Select Find Agents in Round Robin Group
  3. Connect your account and select your group
  4. Test to retrieve the list of agents

This step returns all agents configured in your group (e.g., 3 agents with their ClickUp User IDs).

Find Agents

Step 3: Create a Loop to Process Each Agent

Section titled “Step 3: Create a Loop to Process Each Agent”

Since we need to check each agent’s task count individually, we’ll use Zapier’s Loop feature.

  1. Add a Looping by Zapier action
  2. Select Create Loop From Line Items
  3. For the field, name it Assignee
  4. Click in the value field and use the / key to insert dynamic data
  5. Select Agents Meta Clickup User Id from the EnforcedFlow step

Test to confirm the loop iterates through each agent.

Loop Setup

Inside the loop, add a ClickUp action to find tasks for the current agent.

  1. Add a ClickUp action
  2. Select Find Tasks (List All)
  3. Select your Workspace

Find Tasks

Filter for active tasks only (tasks that represent actual workload):

  1. Under Task Status, select statuses like:

    • To Do
    • In Progress
    • Shortlisted
    • (Exclude “Completed”)
  2. Under Task Assignee, switch to Custom and select the Assignee from the Loop step

This ensures you only count incomplete tasks assigned to each specific agent.

The ClickUp step returns a list of tasks, but EnforcedFlow needs a number. Use Zapier’s Code step to count the tasks.

  1. Add a Code by Zapier action

  2. Select JavaScript as the language

  3. In the Input Data section:

    • Name: tasks
    • Value: Select Task ID from the ClickUp step (Zapier will join multiple IDs with commas)

Code by Zapier

Use this code to count the tasks:

const taskList = inputData.tasks;
const count = taskList ? taskList.split(',').length : 0;
return { count };

This code:

  • Takes the comma-separated list of task IDs
  • Splits it into an array
  • Returns the count (or 0 if no tasks)

Step 6: Update the Agent’s Weight in EnforcedFlow

Section titled “Step 6: Update the Agent’s Weight in EnforcedFlow”

Finally, update the agent’s weight with their task count.

  1. Add an EnforcedFlow action
  2. Select Add/Update Agent
  3. Select your group
  4. For ClickUp User ID, select the Assignee from the Loop step
  5. For InProgressTasks (the weight field), select the count from the Code step

Update Agent

Test the full workflow and click Publish to activate it.


Once both automations are published:

  1. Create a new task in your monitored ClickUp space
  2. Wait a few seconds for Zapier to process
  3. Verify the task was automatically assigned to an agent
  4. Check the EnforcedFlow dashboard to see current agent weights

The agent with the fewest in-progress tasks should receive the assignment. After the hourly update runs, weights will adjust based on actual workload.


EnforcedFlow supports working hours configuration for each agent. When enabled, agents outside their working hours will be skipped during assignment.

To configure:

  1. Go to your group in EnforcedFlow
  2. Edit an agent
  3. Set their Working Days and Working Times
  4. Save the configuration

This is useful for teams across different time zones or with varying schedules.


You’ve now set up a complete workload-balanced round-robin assignment system for ClickUp:

ComponentPurpose
EnforcedFlow GroupStores agents, their ClickUp IDs, and workload weights
Automation 1Assigns new tasks to the agent with lowest workload
Automation 2Updates workload weights hourly based on actual task counts

Key Benefits:

  • Tasks are distributed fairly based on current workload
  • No manual assignment needed
  • Workload weights update automatically
  • Optional working hours support

For questions or support, visit the EnforcedFlow documentation or contact support.