CrewAI Process Types: Sequential, Hierarchical, and Consensual Workflows
Compare CrewAI's three process types — sequential for linear pipelines, hierarchical for managed delegation, and consensual for collaborative decision-making — with practical examples of when to use each.
Process Types Control the Flow
The process parameter on a CrewAI Crew determines how tasks are assigned and executed. Choosing the right process type is one of the most important architectural decisions in a multi-agent system. It affects execution order, context flow, agent autonomy, and the overall quality of results.
CrewAI offers three process types: sequential, hierarchical, and consensual. Each serves a distinct pattern of collaboration.
Sequential Process
Sequential is the default and most straightforward process type. Tasks execute one after another in the order they appear in the tasks list. Each task's output is automatically passed as context to the next task:
from crewai import Agent, Task, Crew, Process
researcher = Agent(
role="Researcher",
goal="Gather comprehensive data on the topic",
backstory="Expert at finding reliable information from diverse sources.",
)
analyst = Agent(
role="Data Analyst",
goal="Extract actionable insights from raw data",
backstory="Skilled at pattern recognition and statistical analysis.",
)
writer = Agent(
role="Content Writer",
goal="Produce polished, publication-ready content",
backstory="Experienced technical writer with a knack for clarity.",
)
research_task = Task(
description="Research the impact of AI on healthcare diagnostics.",
expected_output="A list of 8 key findings with supporting evidence.",
agent=researcher,
)
analysis_task = Task(
description="Analyze the research findings and identify the 3 most impactful trends.",
expected_output="A ranked list of trends with impact scores and reasoning.",
agent=analyst,
)
writing_task = Task(
description="Write a blog post based on the analysis.",
expected_output="A 600-word blog post with introduction, trends section, and conclusion.",
agent=writer,
)
crew = Crew(
agents=[researcher, analyst, writer],
tasks=[research_task, analysis_task, writing_task],
process=Process.sequential,
)
result = crew.kickoff()
When to use sequential: Linear pipelines where each step builds on the previous one. Research-then-analyze-then-write is the classic example. Sequential is predictable, easy to debug, and has the lowest token cost since there is no coordination overhead.
Hierarchical Process
Hierarchical introduces a manager agent that delegates tasks to workers. Instead of a fixed execution order, the manager decides which agent handles each task based on agent roles and task requirements:
from crewai import Agent, Task, Crew, Process
manager = Agent(
role="Project Manager",
goal="Coordinate the team to deliver a high-quality market report",
backstory="""You are a seasoned project manager who knows how to delegate
tasks to the right people and synthesize their outputs into cohesive
deliverables.""",
)
researcher = Agent(
role="Market Researcher",
goal="Gather market data and competitive intelligence",
backstory="Expert at mining data from industry reports and databases.",
)
financial_analyst = Agent(
role="Financial Analyst",
goal="Analyze financial metrics and valuation models",
backstory="CFA with expertise in SaaS company valuations.",
)
strategist = Agent(
role="Strategy Consultant",
goal="Develop strategic recommendations based on market and financial data",
backstory="Former McKinsey consultant specializing in tech strategy.",
)
tasks = [
Task(
description="Research the CRM software market size, growth rate, and key players.",
expected_output="Market overview with size, CAGR, and top 5 players.",
),
Task(
description="Analyze Salesforce's financial performance over the last 3 years.",
expected_output="Financial summary with revenue, margins, and growth trajectory.",
),
Task(
description="Recommend a go-to-market strategy for a new CRM entrant.",
expected_output="A 3-point strategy with target segment, positioning, and pricing.",
),
]
crew = Crew(
agents=[researcher, financial_analyst, strategist],
tasks=tasks,
process=Process.hierarchical,
manager_agent=manager,
)
result = crew.kickoff()
Notice that tasks in hierarchical mode do not specify an agent. The manager decides the assignment. You provide a manager_agent or let CrewAI create a default one using manager_llm.
When to use hierarchical: Complex projects where task routing depends on content. The manager can reassign tasks, request revisions, and coordinate across agents. This mimics how real teams operate with a project lead.
See AI Voice Agents Handle Real Calls
Book a free demo or calculate how much you can save with AI voice automation.
Consensual Process
The consensual process type enables agents to collaborate on decisions. Instead of a single agent owning a task, all agents contribute and reach consensus:
crew = Crew(
agents=[researcher, analyst, strategist],
tasks=[strategy_task],
process=Process.consensual,
)
In consensual mode, agents discuss the task and iteratively refine the output. Each agent contributes its perspective based on its role and backstory, and the final output reflects the merged viewpoints.
When to use consensual: Decision-making tasks where multiple perspectives improve quality — investment decisions, risk assessments, or design reviews. The tradeoff is higher token usage since every agent processes every task.
Choosing the Right Process
| Factor | Sequential | Hierarchical | Consensual |
|---|---|---|---|
| Task dependencies | Linear chain | Manager decides | Shared |
| Token cost | Lowest | Medium | Highest |
| Debuggability | Easiest | Medium | Hardest |
| Best for | Pipelines | Complex projects | Group decisions |
Start with sequential. Move to hierarchical when you need dynamic task routing. Use consensual only when multi-perspective synthesis genuinely improves your output.
FAQ
Can I mix process types in a single application?
Not within a single crew, but you can create multiple crews with different process types and chain them together. A sequential crew could feed its output into a hierarchical crew. Use the first crew's output as input to the second crew's kickoff(inputs={}).
Does the manager agent in hierarchical mode consume additional tokens?
Yes. The manager agent makes LLM calls to analyze tasks, select appropriate agents, review outputs, and coordinate re-work. For a crew with 5 tasks, expect the manager to add 30-50 percent additional token usage compared to sequential mode. The benefit is smarter task routing and quality control.
Is consensual mode production-ready?
Consensual mode is the newest and least battle-tested process type. It works well for tasks where diverse perspectives add clear value, but the token cost and latency are significantly higher. For most production workloads, sequential or hierarchical are more practical choices.
#CrewAI #Workflow #ProcessTypes #Orchestration #MultiAgent #AgenticAI #LearnAI #AIEngineering
CallSphere Team
Expert insights on AI voice agents and customer communication automation.
Try CallSphere AI Voice Agents
See how AI voice agents work for your industry. Live demo available -- no signup required.