---
title: Use Conditional Logic to Route Tasks
description: "**Purpose:** Show how to use **one form** with **multiple Asana feeds** plus **Conditional Logic** to route each submission to the right project/section/assignees and/or apply different task values based on specific form data. --- #### 1. When to Use This Approach…"
url: "https://brightleafdigital.io/docs/use-conditional-logic-to-route-tasks/"
updated: "2026-10-18"
category: "Integrate Asana with Gravity Forms / How-to Guides"
---

# Use Conditional Logic to Route Tasks

**Purpose:** Show how to use **one form** with **multiple Asana feeds** plus **Conditional Logic** to route each submission to the right project/section/assignees and/or apply different task values based on specific form data.

---

#### 1. When to Use This Approach

Use this when you have a **single form** that collects similar requests but needs to create different tasks depending on answers:

- **Request Type** field routes to different projects (e.g., Bug → Engineering Intake; Feature → Product Backlog; Billing → Ops Queue).
- **Department** field assigns to different reviewers or sections (e.g., Scholarships → Admissions Review; Finance → Budget Approvals).
- **Region/Location** field assigns to different team members (e.g., EMEA → EMEA Manager; NA → NA Manager).
- **Priority/Category** field escalates urgent items to a separate project/section while normal items go to the general queue.

---

#### 2. How It Works

- Create **one feed per route**. Each feed defines its own project, section, assignee, due date, tags, etc.
- In each feed, enable **Conditional Logic** and set rules like: *Process this feed if* → **All/Any** of the following are true → *Field* *is* *Value*.
- A submission will trigger **any feeds whose conditions match** (result: one submission can create multiple tasks if you design it that way).
- All **non-conditional feeds** will be processed. To avoid duplicates, it’s best practice to make each feed conditional—even if it’s just serving as a fallback.

---

#### 3. Setup Instructions

1. **Add routing fields to the form** (e.g., Request Type, Department, Region, Priority).
2. **Create a base feed** under Forms → Settings → Asana Integration and configure project/assignee/section.
3. **Enable Conditional Logic** for that feed and set its rule(s) (e.g., *Request Type is Bug*).
4. **Duplicate the feed** for each additional route.
5. In each duplicate, **change the destination** (project/section/assignee) and **adjust the condition** to match its route.
6. **Test** with sample submissions that hit each path.

---

#### 4. Example Configurations (Single Form)

- **Request Type routing**
  - If *Request Type = Bug* → Project: Engineering Intake; Section: Triage; Assignee: On-call.
  - If *Request Type = Feature* → Project: Product Backlog; Section: New Requests; Assignee: PM.
- **Department reviewers**
  - If *Department = Scholarships* → Project: Admissions Review; Collaborator: Dept Lead.
  - If *Department = Finance* → Project: Budget Approvals; Assignee: Finance Analyst.
- **Regional assignment**
  - If *Region = EMEA* → Assign to EMEA Manager; Tag: emea.
  - If *Region = NA* → Assign to NA Manager; Tag: north-america.
- **Priority escalation**
  - If *Priority = Urgent* → Move to Escalations project/section; Due Date: +1 day.
  - Else → General queue project.

---

#### 5. Tips & Best Practices

- Keep feed names descriptive (e.g., "Route: Bug → Eng Intake").
- Prefer **mutually-exclusive conditions** to avoid creating duplicate/parallel tasks unless that’s intentional.
- When testing, verify the exact values used in rules match the form’s choice values.
