Introduction
Choosing between Google ADK 2.0 vs LangGraph for multi-agent orchestration is now one of the most consequential framework decisions an AI engineering team makes. Google rebuilt its Agent Development Kit around graph workflows in May 2026, which moved it directly onto ground that LangGraph has defended for years. Gartner predicts that over 40 percent of agentic AI projects will be canceled by the end of 2027, mostly because of escalating costs, unclear value, and weak risk controls. The orchestration layer you pick decides how visible, testable, and recoverable your agents are when those pressures arrive. This guide compares the two frameworks on architecture, state, human approval, tooling, deployment, cost, risk, and team fit. Every claim about versions, dates, and features comes from official documentation or release pages that were checked in September 2026. By the end you will have a concrete decision framework, side-by-side code, and a clear view of where each framework is likely to hurt.
Quick Answers on Google ADK 2.0 vs LangGraph for Multi-Agent Orchestration
What is the main difference between Google ADK 2.0 and LangGraph?
LangGraph is a low-level, cloud-neutral graph runtime where you own state and routing. ADK 2.0 is a code-first Google toolkit whose new graph workflows add routing, retries, and human input, with the tightest fit on Google Cloud.
Which is better for multi-agent orchestration in production?
Neither wins outright. LangGraph has the longer production record and mature persistence, while ADK 2.0 offers built-in collaborative agent modes and Google Cloud deployment. Pick by cloud, language, and how much control your team wants.
Is Google ADK 2.0 stable enough to use?
The official docs list Python 2.0 as generally available since May 19, 2026, but 2.0 breaks the 1.x agent API and event schema, so plan a migration and pin versions.
Key Takeaways for Choosing Between ADK 2.0 and LangGraph
- ADK 2.0 turned agents, tools, and functions into graph nodes, so it now competes head-on with LangGraph for explicit multi-agent orchestration.
- LangGraph is cloud-neutral with mature checkpointing and interrupts, while ADK 2.0 favors teams already committed to Google Cloud and Gemini.
- ADK 2.0 introduced breaking changes to the agent API and event schema, so migration cost is real and version pinning is essential.
- Pick by cloud, language mix, audit needs, and team skills, and prototype one workflow in both before committing.
Table of contents
- Introduction
- Quick Answers on Google ADK 2.0 vs LangGraph for Multi-Agent Orchestration
- Key Takeaways for Choosing Between ADK 2.0 and LangGraph
- What Is Multi-Agent Orchestration in Google ADK 2.0 and LangGraph?
- Why the Google ADK 2.0 and LangGraph Decision Suddenly Matters
- How Google ADK 2.0 Rebuilt Itself Around Graph Workflows
- How LangGraph Models Agents as a Stateful Graph
- Orchestration Patterns Side by Side: Supervisors, Pipelines and Parallel Fan-Out
- State, Memory and Durable Execution Compared
- Human Approval Pauses in Google ADK 2.0 and LangGraph
- Tools, MCP, A2A and Model Portability
- Observability, Evaluation and Debugging
- Deployment Paths and the Real Cost of Running Each Framework
- Language Support and Ecosystem Maturity
- Performance, Latency and Token Efficiency
- Implementation Walkthrough: One Supervisor Workflow, Two Frameworks
- Migrating From ADK 1.x or LangChain Agents
- Team Skills, Hiring and Community Support
- Risks: Maturity, Breaking Changes and Lock-In
- Ethics, Accountability and Oversight for Coordinated Agents
- A Decision Framework for Buyers Choosing Between ADK 2.0 and LangGraph
- The Future of Agent Orchestration Beyond 2026
- Key Insights on Google ADK 2.0 vs LangGraph for Multi-Agent Orchestration
- Real Deployments and Examples of LangGraph and ADK 2.0 in Practice
- Production Lessons From Teams Building on These Frameworks
- Frequently Asked Questions on Google ADK 2.0 vs LangGraph for Multi-Agent Orchestration
What Is Multi-Agent Orchestration in Google ADK 2.0 and LangGraph?
Google ADK 2.0 vs LangGraph for multi-agent orchestration compares two open-source frameworks that coordinate several AI agents through explicit graphs of nodes and edges, adding routing, shared state, retries, and human approval so teams can run predictable, recoverable, multi-step agent workflows in production.
An Interactive From AIplusInfo
Which framework fits your team?
Set four constraints and watch the fit scores for Google ADK 2.0 and LangGraph move in real time.
Google Cloud and Gemini
Python
5 of 10
5 of 10
50
50
Calculating.
Illustrative heuristic built from this article, not a benchmark. Reference points: LangSmith Plus lists at 39 dollars per seat per month, the ADK 2.0 documentation dates Python general availability to May 19, 2026, and Gartner expects over 40 percent of agentic AI projects to be canceled by 2027.
Why the Google ADK 2.0 and LangGraph Decision Suddenly Matters
Stepping back from feature lists, the two frameworks used to belong to different categories, and that is why older advice no longer fits. LangGraph was the explicit graph runtime where you drew nodes and edges and owned every transition. Google's Agent Development Kit was a code-first toolkit built around sequential, parallel, and loop agents plus model-driven delegation between sub-agents. ADK 2.0 erased that boundary by making agents, tools, and plain functions nodes inside a workflow graph. The official ADK 2.0 page lists Python as generally available as of May 19, 2026, with Go following on June 30 and TypeScript on August 21. Early reviews from that same week still called the Python SDK a beta, so treat launch-week commentary with caution.
Overlapping feature lists now make the buying conversation harder than it was a year ago. Both frameworks offer conditional routing, parallel fan-out and fan-in, loops, retries, nested workflows, and human approval pauses. LangGraph reached version 1.0 in late October 2025 with a promise of no breaking changes, and it has kept shipping frequent point releases since then. The google-adk package on PyPI reached version 2.10.0 on September 25, 2026, and the project publishes roughly every two weeks. A fast release cadence is good news for features and bad news for anyone who copies a tutorial written three months ago.
Given the churn, most comparison articles you will find are already stale, which raises the cost of an uninformed decision. One recent independent comparison benchmarked ADK version 1.32.0 against LangGraph 1.1.10 and never touched the graph workflows that define 2.0. Orchestration code is not a thin wrapper you can swap later, because it shapes your state model, your tool contracts, your test harness, and your incident runbooks. Rewriting that layer after launch means rewriting the parts of the system your operators trust most. This guide treats Google ADK 2.0 vs LangGraph for multi-agent orchestration as an architectural commitment and compares the frameworks the way you would compare databases.
How Google ADK 2.0 Rebuilt Itself Around Graph Workflows
Shifting to the Google side, the defining change in 2.0 is architectural rather than cosmetic. According to the official documentation, agents, tools, and functions are now evaluated as individual nodes within a workflow graph instead of as standalone hierarchical executors. In Python, the base agent class now subclasses a base node class, which means every agent can sit anywhere in a graph. That single design decision explains most of the new features and most of the breaking changes. The scheduler owns execution order, so retries, timeouts, and pauses can be applied uniformly to any node type. Teams that liked the older class-based hierarchy should read this as a new programming model, not an incremental upgrade.
Defining a workflow in Python is deliberately compact, and the ADK graphs documentation shows the whole idea in one declaration. You create a Workflow object with a name and an edges list, and each row lists nodes to run in order starting from the special START marker. The return value of each node becomes the input of the next node, so you do not need to write intermediate results to session state. Router nodes return an event that carries a route value, and the following edge row maps each route value to the node that handles it. Route values can be strings, numbers, or booleans, and a default route catches anything unmatched so the graph always has a valid path forward.
Beyond the graph itself, ADK 2.0 offers two other workflow styles that trade explicitness for flexibility. Dynamic workflows drop the fixed graph and let you write ordinary code, with loops and conditionals, that invokes nodes like functions at runtime. Collaborative workflows let a coordinator agent delegate to sub-agents using three explicit modes named chat, task, and single-turn. The Google Cloud I/O 2026 announcement describes chat mode as a full handoff of the conversation. It treats task mode as a delegated assignment that returns automatically, and single-turn mode as an agent used like a tool. Independent coverage notes that dynamic workflows remained alpha-labeled inside the 2.0 release, so check the label before you bet a roadmap on them.
Rounding out the picture, the Go release shows how far Google intends to take the graph runtime. The June 30, 2026 Go announcement describes a scheduler that manages concurrent execution, state persistence, pausing for humans, and resumption across process restarts. Node types include function nodes, agent nodes, tool nodes, join nodes that act as fan-in barriers, dynamic nodes, sub-workflow nodes, and parallel workers. The published retry example uses five attempts, a one-second initial delay, a sixty-second cap, and a two-times backoff multiplier. Those defaults are sensible enough that most teams will copy them, which is exactly the kind of boring reliability that graph runtimes exist to provide.
How LangGraph Models Agents as a Stateful Graph
Turning to LangGraph, the project describes itself as a low-level orchestration framework and runtime for building, managing, and deploying long-running, stateful agents. Its GitHub repository credits Google's Pregel system, Apache Beam, and the NetworkX interface as design inspirations, and it lists Klarna, Replit, and Elastic among trusted users. The repository showed about 38.1 thousand stars when checked in September 2026. The word low-level is the honest summary of its philosophy: LangGraph gives you primitives and expects you to make architectural decisions. The package is MIT licensed and maintained by LangChain Inc, and PyPI lists it as production-stable on Python 3.10 and later.
Its programming model starts with a shared state object, typically a TypedDict or a Pydantic model, where each key can carry its own reducer function. The default reducer replaces a value, while a custom reducer such as list concatenation lets several nodes append results without overwriting each other. Nodes are plain functions that receive the current state and return updates, and edges are either fixed transitions or conditional functions that inspect state. The LangGraph graph API guide explains that execution proceeds in discrete super-steps, where nodes scheduled in the same step run in parallel. You must compile the graph before use, and compilation performs structural validation and is where you attach a checkpointer or breakpoints.
Routing goes beyond static edges, and this is where LangGraph's expressiveness shows. The Send primitive lets a node fan work out to a dynamic number of parallel branches, each with its own version of the state, which is the standard map-reduce pattern. The Command primitive combines a state update and a routing decision in one return value, so a node can say what changed and where to go next. The default recursion limit is 1000 steps, and a remaining-steps helper lets a graph degrade gracefully before it hits that ceiling. Compared with ADK's route values, LangGraph asks you to think in terms of shared state first and topology second.
Orchestration Patterns Side by Side: Supervisors, Pipelines and Parallel Fan-Out
Looking at the patterns teams actually ship, both frameworks can express the same handful of shapes with different amounts of ceremony. Google's December 2025 guide to multi-agent patterns in ADK lists eight designs. They are sequential pipeline, coordinator and dispatcher, parallel fan-out and gather, hierarchical decomposition, generator and critic, iterative refinement, human in the loop, and composite patterns. Each mapped to a named 1.x primitive such as SequentialAgent, ParallelAgent, LoopAgent, or an agent wrapped as a tool. In 2.0 those same shapes become graph topologies, which is why the older primitives now log deprecation warnings in the TypeScript SDK. The patterns survived the rewrite, but the way you express them did not.
A supervisor with specialists is the pattern most readers care about, and the two frameworks differ in where the intelligence lives. In LangGraph you typically build a supervisor node that chooses the next worker, either through a routing function or through handoff tools that the model calls. In ADK 2.0 you can build a coordinator agent that delegates in chat, task, or single-turn mode, or you can write a router function that emits explicit route values. The explicit-route approach keeps the delegation decision in ordinary code, which makes it testable without a model call. The model-driven approach is faster to prototype and harder to audit, and both frameworks let you mix the two within one graph.
Pipelines and fan-out are the easy cases, and they show the frameworks' different defaults. A linear pipeline in ADK 2.0 is a single edges row, and in LangGraph it is a chain of add-edge calls between nodes that read and write shared state. Parallel fan-out in LangGraph uses Send or several edges leaving one node, and results merge through reducers. In ADK 2.0 fan-out uses parallel branches that meet at a join node acting as a barrier, so synthesis waits for every branch. That barrier is convenient, but one tutorial author notes that it means no partial results if a single branch stalls.
Among the trickier patterns, loops with a critic reveal how each framework handles termination. A generator produces a draft, a critic reviews it, and the loop repeats until the critic approves or a maximum round count is reached. LangGraph expresses this with a conditional edge that routes back to the generator or forward to the end, plus a counter in state and the recursion limit as a backstop. ADK 2.0 expresses it with a route value that returns to the generator node and a deterministic exit check in a function node rather than in the model. Either way, the lesson is identical: never let the model alone decide when a loop ends. Teams building hierarchies of managers and workers can study hierarchical coordination in multi-agent tasks before choosing depth.
State, Memory and Durable Execution Compared
Building on the pattern discussion, state management is where the two frameworks feel most different in daily use. LangGraph makes state the center of the design, with a typed schema, per-key reducers, and a checkpointer that snapshots the state after every super-step. Threads identify a conversation or run, and you pass a thread identifier in the configuration to resume the same execution. Checkpointing gives LangGraph time travel, fault recovery, and human-in-the-loop pauses from a single mechanism. The persistence documentation lists an in-memory saver for development, a SQLite saver for local work, and a Postgres saver for production.
ADK 2.0 approaches state differently, because data flows between nodes as return values and inputs. A node's output becomes the next node's input, so simple pipelines need no shared state at all. A workflow context still offers a state dictionary for values that must persist across steps. Sessions and events carry the durable record, and version 2.0 added node information and output fields to the event schema. The project README notes that 2.0 sessions can be read by ADK 1.28 and later but not by older 1.x versions. If your database schema is rigid rather than a JSON blob, the official migration notes say you must update it.
Memory across conversations deserves separate attention, because checkpoints are not long-term memory. Both frameworks distinguish short-term working state from long-term stores that survive across sessions, users, and deployments. LangGraph's documentation also warns about unbounded checkpoint growth, so production teams should plan pruning or retention policies to control storage and latency. Designing what an agent remembers, for how long, and under whose permission is an architectural task that no framework solves for you. The site's explainer on AI agent memory architecture is a useful primer before you design either system.
Human Approval Pauses in Google ADK 2.0 and LangGraph
Moving on to oversight, both frameworks now treat a human pause as a first-class workflow event rather than a hack. In ADK 2.0 a node yields a request-input object that carries a message, an optional payload for clients to render, and an optional response schema. The documentation stresses that these nodes need no AI model, which makes the interruption deterministic and predictable. When the reply arrives, a configuration flag decides whether the answer flows directly to the next node or whether the paused node reruns from the top. Because the pause is a graph event and not a model decision, an approval step cannot be skipped by a creative prompt. The ADK human input guide also warns that catching overly broad exceptions can trap the interrupt and break resumption.
LangGraph's equivalent is the interrupt function, which pauses a node, saves state through the checkpointer, and waits indefinitely for external input. You resume by invoking the graph again with a resume command carrying the value, and that value becomes the return value of the original interrupt call. A durable checkpointer and a stable thread identifier are mandatory, because they tell the runtime which paused execution to reload. The LangGraph interrupts guide lists sharp edges that surprise newcomers. Code before the interrupt reruns on resume, so side effects must be idempotent, and multiple interrupts in one node are matched strictly by index.
Comparing the two designs, the practical difference is how each handles a rerun of the paused node. ADK's default sends the human reply straight to the successor, which is simpler when the human is just supplying data. Its rerun option restarts the node with the reply available, which suits approval logic that must re-evaluate context. LangGraph always reruns the node from its beginning and returns the reply at the interrupt call, which is flexible but demands idempotent code. Neither approach removes the need for good product design, such as showing reviewers a clear payload, a deadline, and a safe default when nobody answers.
Tools, MCP, A2A and Model Portability
Turning to integrations, the tool layer decides how much of your existing estate an agent can actually touch. The original ADK launch post describes built-in support for the Model Context Protocol, third-party tools from LangChain and LlamaIndex, and more than 100 pre-built connectors for enterprise systems. It also reaches models beyond Gemini through a LiteLLM integration, which covers providers such as Anthropic, Meta, and Mistral AI. Model flexibility is real, but ADK's defaults, samples, and managed tooling are written with Gemini first, so test your preferred model early. Protocol support matters because tools are where agents touch money, customer data, and production systems. Treat every tool as an interface with permissions, rate limits, and audit requirements rather than as a convenience import.
LangGraph takes the opposite stance by staying agnostic and leaning on the wider LangChain ecosystem for models, tools, and retrievers. Its managed deployment product exposes more than 30 API endpoints, including Agent-to-Agent and Model Context Protocol endpoints, webhook triggers, streaming outputs, and semantic search over long-term memory. The LangSmith Deployment page also lists an agent registry with versioning and instant rollback, plus a Studio environment for visual debugging. Both ecosystems therefore speak the two protocols that matter for interoperability, and both can call each other as remote agents. That makes a hybrid architecture, where each framework runs the workloads it suits best, more realistic than it sounds.
Observability, Evaluation and Debugging
Shifting from integrations to operations, you cannot fix what you cannot see, and agents fail in ways that logs alone rarely explain. LangGraph pairs naturally with LangSmith, which visualizes each step of a graph run and records inputs and outputs per node, while checkpoints support time travel. ADK integrates OpenTelemetry natively, a capability that independent coverage of the 2.0 beta dates to version 1.17.0, so traces can flow to Cloud Trace or any compatible backend. The vendor-neutral tracing standard matters most to organizations that already run a central observability stack. Google's I/O 2026 materials add an evaluation suite with synthetic user simulation, model-based graders, and trace logging for multi-turn testing.
Evaluation deserves the same engineering attention as orchestration, because a beautifully wired graph can still produce wrong answers confidently. Each framework lets you unit test deterministic nodes without a model call, which is the single biggest advantage of explicit graphs over free-form agent loops. For the model-driven nodes, you need golden datasets, regression suites, and metrics such as faithfulness and answer relevance. The site's walkthrough on evaluating agents with RAGAS shows one open-source way to score agent outputs regardless of the framework underneath. Whatever you choose, capture traces from day one, because reconstructing an incident from memory is a poor substitute.
Debugging workflow bugs also differs between the two, and the difference shapes team habits. LangGraph's checkpoints let you rewind to a prior state, edit it, and branch a new run, which turns a mysterious failure into a repeatable experiment. ADK's web interface and command-line runner let you exercise an agent locally, and 2.0 events now carry node information that shows which graph node produced each output. Neither tool replaces disciplined logging of tool calls, prompts, and model versions. Teams that treat traces as a product, with owners and review rituals, catch regressions weeks earlier than teams that open the tracing dashboard only during outages.
Deployment Paths and the Real Cost of Running Each Framework
Weighing total cost, start by separating the framework license from the infrastructure and model bill. Both projects are free and open source, with LangGraph under the MIT license and ADK under Apache 2.0. Neither license charges per agent, per workflow, or per seat, so the money you spend goes to hosting, storage, observability, and model tokens. The cheapest framework is the one whose runtime model matches the infrastructure you already pay for. ADK can run locally, in containers, on Cloud Run, and on Google's managed agent platform that evolved from Vertex AI, which suits Google Cloud shops.
LangGraph's commercial path runs through LangSmith, and the LangSmith pricing page publishes concrete numbers. The Developer plan costs nothing for one seat and includes up to 5,000 base traces per month. The Plus plan costs 39 dollars per seat per month, includes 10,000 base traces, and comes with one free small serverless deployment. Additional deployments bill by resource use, metered while the deployment database is live. Runtime costs 0.045 LangChain compute units per vCPU-hour and the database costs 0.177 storage units per vCPU-hour, priced at 1.50 and 1.00 dollars respectively. Running one always-on vCPU of runtime for a 730-hour month therefore consumes about 32.85 units, roughly 49 dollars, before memory, database, and model charges.
Comparing those numbers with Google's side is harder because managed runtime pricing depends on region, resources, and usage. ADK itself costs nothing, so your bill is the sum of Gemini or third-party model calls plus whatever compute hosts the agent. Independent reviewers flag the trade-off directly, noting that managed deployment paths for ADK are tied to Google Cloud. Self-hosting either framework on Kubernetes avoids that coupling at the price of running your own database for state and your own tracing stack. The site's analysis of how AI agent pricing is evolving gives a wider view of how vendors package and charge for agents.
Beyond list prices, hidden cost lines usually dominate the total, and they tend to be the same for both frameworks. Model tokens outweigh compute for most agent workloads, and a graph that makes fewer, better-targeted model calls saves more than any hosting discount. Checkpoint storage grows with every step of every thread, so retention policies belong in the first design review rather than the first outage. Human review time is a real operating cost, which is why approval steps should trigger on risk thresholds rather than on every action. A quarter of engineering time spent on migration or upgrades, driven by fast release cadences, deserves a line in the budget too.
Language Support and Ecosystem Maturity
Looking at languages, the frameworks serve different populations, and this often settles the decision before any benchmark. ADK 2.0 targets Python, TypeScript, and Go, and the documentation also lists Java and Kotlin, with Kotlin described in Google's I/O announcement as a beta aimed at on-device Android agents. LangGraph is best known as a Python framework, with a JavaScript counterpart that follows the same graph model. A polyglot backend team with Go or Java services will find ADK's language coverage a genuine differentiator. An InfoWorld review from April 2026 cautions that non-Python samples remain sparse, so expect to read source code in those languages.
Community size is the other half of ecosystem maturity, and here LangGraph holds a clear lead today. The LangGraph repository showed about 38.1 thousand stars in September 2026. The ADK Python repository showed about 21.1 thousand, and it is Apache 2.0 licensed with releases roughly every two weeks. A larger community means more answered questions, more third-party integrations, and more production war stories to learn from. LangGraph also sits inside the broader LangChain family, whose agent constructor is built on it, and that coupling helps discovery. The site's comparison of LangGraph versus CrewAI and AutoGen offers a wider survey that includes other multi-agent toolkits.
Performance, Latency and Token Efficiency
Given the marketing around speed, it helps to be precise about where agent latency and cost actually come from. Almost all of the wall-clock time in a multi-agent workflow is spent waiting on model calls and tool calls, not inside the orchestration framework. Both runtimes add only small scheduling overhead, so a published framework benchmark rarely predicts your production latency. The biggest performance lever in either framework is replacing model-driven routing with deterministic code wherever the decision is simple. A router that inspects a field and returns a route value costs microseconds, while asking a model to choose the same branch costs seconds and tokens.
Parallelism is the second lever, and both frameworks support it natively. LangGraph runs nodes scheduled in the same super-step concurrently, and its Send primitive creates as many parallel branches as your data requires. ADK 2.0 offers parallel branches joined by a barrier node, and its single-turn agent mode is described as parallel execution with automatic return. Parallel fan-out shortens latency but multiplies token spend, so cap the number of branches and set per-branch timeouts. Retries deserve the same discipline, because a generous retry policy on an expensive model node can quietly double a bill.
Footprint is a smaller but real factor for serverless and edge deployments. One independent comparison counted 45 direct dependencies for ADK 1.32.0 against six for LangGraph 1.1.10, which affects image size, cold starts, and supply-chain review. Those counts will drift with each release, so measure your own container before drawing conclusions. Whichever framework you pick, define service-level objectives for latency, cost per completed task, and success rate before launch. The guide on measuring AI agent performance is a solid starting point for those metrics.
Implementation Walkthrough: One Supervisor Workflow, Two Frameworks
In practice, the fastest way to feel the difference is to build the same small router twice. The scenario is a support desk that classifies an incoming request and sends it to a billing specialist or a technical specialist. Both listings are deliberately small so that the structure, rather than the business logic, stays in focus. The ADK 2.0 version below follows the documented pattern of a workflow object, a START marker, and a router function that returns a route. A dictionary then maps each route value to the node that handles it. The model name is only an example, and you should confirm current signatures against the official graphs documentation before copying anything into production.
from google.adk import Agent, Event, Workflow
billing_agent = Agent(
name="billing_agent",
model="gemini-2.5-flash",
instruction="Resolve billing and refund questions.",
)
tech_agent = Agent(
name="tech_agent",
model="gemini-2.5-flash",
instruction="Resolve technical support questions.",
)
def classify(node_input: str):
text = node_input.lower()
if "invoice" in text or "refund" in text:
return Event(route="BILLING", output=node_input)
return Event(route="TECH", output=node_input)
root_agent = Workflow(
name="support_router",
edges=[
("START", classify),
(classify, {"BILLING": billing_agent, "TECH": tech_agent}),
],
)
The LangGraph version expresses the same topology through a typed state object, named nodes, and a command that carries the routing decision. Because nodes are registered by name, the compiled graph can be inspected, checkpointed, and visualized without extra work. The specialist nodes below return placeholder strings so the example runs without a model key. In a real system each would call a model or a sub-agent, and each could be a full subgraph of its own. The LangGraph supervisor reference is worth reading next, since its maintainers now recommend building the supervisor pattern directly with tools.
from typing import Literal
from typing_extensions import TypedDict
from langgraph.graph import StateGraph, START, END
from langgraph.types import Command
class State(TypedDict):
request: str
answer: str
def classify(state: State) -> Command[Literal["billing", "tech"]]:
text = state["request"].lower()
if "invoice" in text or "refund" in text:
return Command(goto="billing")
return Command(goto="tech")
def billing(state: State):
return {"answer": "Billing reply for: " + state["request"]}
def tech(state: State):
return {"answer": "Technical reply for: " + state["request"]}
builder = StateGraph(State)
builder.add_node("classify", classify)
builder.add_node("billing", billing)
builder.add_node("tech", tech)
builder.add_edge(START, "classify")
builder.add_edge("billing", END)
builder.add_edge("tech", END)
graph = builder.compile()
print(graph.invoke({"request": "Where is my refund?"}))
Comparing the two listings shows the philosophical gap in a single screen. The ADK version is shorter because agents are ready-made nodes and data flows through return values, so you write less plumbing. The LangGraph version is longer because you declare the state schema, register each node, and wire each edge, but every transition is explicit and inspectable. Neither listing is better; they optimize for different moments in a project's life. Shorter code wins during a prototype, and explicit wiring tends to win when a graph grows to dozens of nodes and several engineers. For a broader look at assembling agents into real business processes, the guide to custom AI agents for workflow automation covers the surrounding design work.
Migrating From ADK 1.x or LangChain Agents
Moving on to upgrades, the ADK 2.0 migration notes read like a checklist of things that will fail quietly if you ignore them. In Python, agents now subclass the node base class, and custom overrides of the old internal run method or the model-generation method are silently ignored. You must use before-agent and after-agent callbacks instead, and you may no longer append directly to the session event list because that breaks determinism. Silent failure is the real hazard, because an ignored override compiles, deploys, and simply stops doing what you wrote. The ADK 2.0 documentation also warns that catching the base exception class traps the interrupt used for human pauses. It further lists TypeScript field collisions and deprecated sequential, parallel, and loop agents.
Go teams face a different set of edits, and the ADK Go 2.0 announcement spells them out. The module path gains a version suffix, the first parameter of agent functions changes to a unified context type, and creating an event now requires a context argument. A sensible rollout pins the 1.x version in production, ports one agent at a time to a branch, and reruns the existing evaluation suite after each port. Teams coming from LangChain agents have an easier path, because the newer agent constructor in LangChain is itself built on LangGraph. You can therefore start with the high-level constructor and drop down to explicit graphs only where a workflow needs custom routing or approvals.
Team Skills, Hiring and Community Support
Beyond the code, every framework choice is also a people decision, and the skills you need are broader than either README suggests. A production multi-agent system needs graph thinking, state schema design, prompt and tool contracts, evaluation practice, and the operational habits of running long-lived stateful services. InfoWorld's April 2026 hands-on review calls ADK capable and mostly complete while warning that the framework is extensive and carries a significant learning curve. Budget for learning time as an explicit line item, because the fastest prototype is rarely the cheapest production system. The same review found few TypeScript, Go, or Java examples, so non-Python teams should expect to lean on source code.
Hiring dynamics follow community size, and LangGraph currently has the larger pool of practitioners, tutorials, and answered questions. That advantage is a reasonable tiebreaker when two options otherwise fit equally well, but it is not a reason to ignore a strong cloud alignment. A team already fluent in Google Cloud identity, networking, and deployment will onboard onto ADK faster than the star counts suggest. Conversely, a team that lives in Python notebooks and a multi-cloud footprint will feel at home with LangGraph. Whatever you choose, write down the conventions for state schemas, node naming, and error handling early, because graphs become tangled quickly without them.
Mentorship and shared vocabulary matter as much as documentation in the first quarter. Pair engineers who understand distributed systems with engineers who understand prompts, since each group misses the other's failure modes. The site's guide to agentic AI for smarter workflows offers accessible background for the product and operations colleagues who will sit in design reviews. Run a short internal workshop where everyone builds the same router in both frameworks, as the implementation walkthrough did. That exercise surfaces preferences and objections far faster than a slide-based debate, and it produces reusable code for your platform team.
Risks: Maturity, Breaking Changes and Lock-In
Turning to downside risk, the two frameworks fail in different ways, and a fair comparison has to list both. ADK 2.0 carries the risk of youth, starting with breaking changes to the agent API and event schema. Independent coverage from July 2026 still labeled dynamic workflows as alpha, and beta-era documentation cautioned against production use where backward compatibility is critical. A May 2026 review of ADK 2.0 rated it three out of five, citing Google Cloud lock-in for managed deployment and a smaller community than LangGraph. A young runtime with a fast release cadence is a bet on the vendor's roadmap as much as on the code. Pin exact versions, read every release note, and keep an evaluation suite that runs on each upgrade.
LangGraph carries the risk of maturity, which is subtler than it sounds. The PyPI page for the LangGraph package shows that several releases, including 1.2.3 and 1.1.7, were yanked after bugs or regressions, so even a stable project ships mistakes. Its interrupt mechanism has sharp edges around idempotency and ordering, and unbounded checkpoint growth can inflate storage and latency. The most polished tooling sits in the commercial LangSmith products, which creates a softer form of vendor dependence. None of this is disqualifying, but each item belongs in your risk register.
Shared risks matter more than differences, and they are mostly about the models rather than the frameworks. Tool calls are an attack surface, because a prompt injected through a document or web page can steer an agent toward a harmful action. Runaway loops burn money, so use step limits, round caps, and budget alerts in every environment. Data in checkpoints and sessions often includes personal information that persists longer than anyone intended. Put these three risks in the register for both frameworks, with an owner and a review date for each.
Ethics, Accountability and Oversight for Coordinated Agents
Stepping back to ethics, explicit orchestration changes who can be held accountable when a chain of agents acts. In a free-form agent loop, nobody can say exactly why a particular action happened, while a graph records which node ran, what it received, and what it returned. That auditability is an ethical asset only if organizations actually review the record and assign a named human owner to each consequential path. Approval nodes help, yet people asked to approve dozens of actions an hour drift into rubber-stamping, which is automation bias in its purest form. Design approval thresholds around risk and reversibility, and measure how often reviewers change or reject the agent's proposal.
Transparency and data stewardship complete the picture, and both are easy to neglect during a prototype. Users deserve to know when an agent, rather than a person, made or influenced a decision that affects them. Checkpoints that store conversation state also store whatever personal data users typed, so retention limits and deletion pathways are ethical requirements as much as technical ones. Guidance on oversight frameworks for autonomous agents explains how governance structures can keep humans meaningfully in control. Pair that with deterministic guardrails for AI agents, which show how hard limits in code complement softer prompt instructions.
A Decision Framework for Buyers Choosing Between ADK 2.0 and LangGraph
Choosing among the options gets easier when you rank a handful of constraints in order of how costly they are to change. Start with cloud and data gravity, because a team that is committed to Google Cloud, Gemini, and Google's managed agent platform gains real integration benefits from ADK 2.0. If your estate spans several clouds or runs mostly on premises, LangGraph's neutrality and its self-hosting path reduce coupling. Cloud alignment is the first filter because it is the hardest constraint to reverse later. Language comes second, since Go, Java, Kotlin, and TypeScript services point toward ADK, while a Python-centric data science team is well served by either.
Control and audit needs come third, and this is where the graph engines earn their keep. If auditors will ask you to prove that an approval step cannot be bypassed, prefer explicit routes and deterministic approval nodes in either framework rather than model-driven delegation. LangGraph's mature checkpointing, time travel, and Postgres persistence give it an edge for long-running, heavily audited workflows today. ADK 2.0's collaborative modes and unified runtime give it an edge for teams that want a coordinator to manage specialists with less wiring. The summary guide to AI agents for leaders can help frame those trade-offs for executives who will sign off on the budget.
Maturity tolerance is the fourth factor, and it should be an explicit conversation rather than an assumption. A team that can absorb a migration every few months and wants the newest primitives will enjoy ADK 2.0's pace. A team that needs a quiet dependency for a regulated workload may prefer the framework with the longer track record. LangGraph also promised no breaking changes when its 1.0 line arrived. Neither preference is wrong, but writing it down prevents an unpleasant surprise during the next upgrade. Security posture is a practical tiebreaker too, and the framework for securing agentic AI in enterprises helps you compare how each option handles permissions and tool exposure. The interactive scorer earlier in this article lets you weight these factors and see how the recommendation shifts.
Hybrid architectures are a legitimate answer, not a cop-out, when different teams own different workloads. ADK can wrap LangChain tools, and LangSmith's deployment product exposes Agent-to-Agent endpoints, so a coordinator in one framework can call a specialist in the other. Keep business logic in plain functions with thin adapters to each framework, and you preserve the option to switch later. Run a two-week bake-off on one real workflow with agreed success metrics, and let measured latency, cost, and developer effort settle the argument. A bake-off is cheap compared with the price of rewriting an orchestration layer after launch, which is why Google ADK 2.0 vs LangGraph for multi-agent orchestration deserves a measured trial.
The Future of Agent Orchestration Beyond 2026
Looking ahead, the direction of travel is convergence on runtimes that blend deterministic graphs with model-driven flexibility. Google's own I/O 2026 messaging describes ADK 2.0 as a unified graph engine with a slider from dynamic, model-led reasoning to strict, deterministic workflows. LangGraph points the same way, since its 1.0 release presents durable execution, human oversight, and memory as built-in agent runtime features. The competitive frontier is moving from drawing graphs to governing them, with identity, gateways, registries, and evaluation built around the runtime. Google's platform announcements already list agent identity, an agent gateway, a skill registry, and simulation-based evaluation as first-class governance pieces. Expect the Google ADK 2.0 vs LangGraph for multi-agent orchestration debate to shift from graph syntax toward governance, cost control, and interoperability.
Adoption forecasts explain why that governance layer will matter so much. Gartner expects at least 15 percent of day-to-day work decisions to be made autonomously by agentic AI by 2028, up from essentially none in 2024. It also expects a third of enterprise software applications to include agentic capabilities by then. Interoperability standards such as Agent-to-Agent will let teams mix frameworks, which lowers the stakes of today's choice. Google's ongoing push toward AI-powered agents across its products shows how quickly the competitive landscape can shift, so design for replaceability from the start.
Chart From AIplusInfo
Community size: GitHub stars, September 2026
Thousands of stars on each project's main repository. Bars are horizontal because the chart compares categories at one point in time.
Source: LangGraph on GitHub and ADK Python on GitHub, checked September 2026.
Key Insights on Google ADK 2.0 vs LangGraph for Multi-Agent Orchestration
- Gartner forecasts that over 40 percent of agentic AI projects will be canceled by the end of 2027, so auditable orchestration doubles as cost control.
- The official ADK 2.0 page dates generally available Python, Go, and TypeScript releases to May 19, June 30, and August 21, 2026, a 94-day rollout across three languages.
- PyPI shows that google-adk reached version 2.10.0 on September 25, 2026, after 2.0.0 on May 19, so the project ships roughly every two weeks and demands version pinning.
- LangGraph's repository shows about 38.1 thousand stars and lists Klarna, Replit, and Elastic as users, evidence of a broad community that keeps answering questions.
- The LangSmith pricing page lists the Plus plan at 39 dollars per seat per month with 10,000 base traces, so a five-person team pays 195 dollars monthly before deployment usage.
- Go ADK 2.0's published retry example uses five attempts, a one-second initial delay, and a sixty-second cap, showing that the graph scheduler owns reliability policy instead of each agent.
- The LangGraph default recursion limit of 1000 steps is a backstop rather than a budget, so add explicit round caps and cost alerts to every loop.
Taken together, these figures describe two frameworks that have converged on graph orchestration while keeping very different personalities. ADK 2.0 is young, fast-moving, and multilingual, and it has Google's managed agent platform standing behind it. LangGraph is older, larger, and cloud-neutral, with checkpointing and interrupts that production teams have exercised for years. The shared thread is that explicit routing, bounded loops, and human approval nodes reduce the odds of joining the canceled projects Gartner describes. Cost and risk therefore depend less on which logo you choose than on how carefully you cap steps, pin versions, and evaluate outputs. Treat the decision as reversible only if you keep your business logic outside the framework.
| Dimension | Google ADK 2.0 | LangGraph |
|---|---|---|
| Core abstraction | Workflow graph of nodes (agents, tools, functions) joined by edges and routes | StateGraph over a shared typed state with per-key reducers |
| Latest release checked | google-adk 2.10.0 (September 25, 2026) | langgraph 1.2.12 (September 21, 2026) |
| License | Apache 2.0 | MIT |
| Languages | Python, TypeScript, Go, Java, Kotlin (beta) | Python, with a JavaScript counterpart |
| Routing | Route values on events with a default route, or router functions | Conditional edges, Send for fan-out, Command with goto |
| Parallelism | Parallel branches with a join node barrier, single-turn agent mode | Nodes in one super-step run in parallel, Send map-reduce |
| Human approval | Request-input node, optional rerun of the paused node on resume | interrupt() paired with Command(resume=...) on a checkpointed thread |
| State and persistence | Node outputs as inputs, workflow state, sessions and events | Checkpointers (in-memory, SQLite, Postgres), threads, time travel |
| Multi-agent modes | Coordinator with chat, task, and single-turn modes | Supervisor via handoff tools, swarm, subgraphs |
| Observability | OpenTelemetry integration and built-in evaluation | LangSmith tracing, Studio, and evaluation |
| Managed deployment | Google Cloud agent platform (formerly Vertex AI), Cloud Run, containers | LangSmith Deployment, Plus plan at 39 dollars per seat per month |
| Interoperability | MCP, A2A, LangChain and CrewAI tool wrappers, LiteLLM models | MCP and A2A endpoints in LangSmith Deployment, LangChain integrations |
| Community (GitHub stars) | About 21.1 thousand (adk-python) | About 38.1 thousand |
| Main risks | Young 2.0 line, breaking changes, Google Cloud pull | Yanked releases, checkpoint growth, commercial tooling dependence |
| Best fit | Google Cloud and Gemini teams, polyglot backends, managed runtime seekers | Multi-cloud or audit-heavy teams, Python shops, long-running stateful flows |
Real Deployments and Examples of LangGraph and ADK 2.0 in Practice
Klarna's Multi-Agent Support Assistant on LangGraph
Klarna deployed its AI assistant as a multi-agent system on LangGraph, with LangSmith providing observability, evaluation, and prompt engineering. The design relies on controllable routing, so each type of customer request reaches an agent built for that task. According to the LangChain case study published in February 2025, the assistant serves 85 million active users and handles about 2.5 million conversations. Klarna reports an 80 percent reduction in average resolution time and roughly 70 percent of repetitive support tasks automated over nine months. The team also credits the controllable architecture with lower latency, better reliability, and reduced token costs. The limitation is that every figure comes from a vendor-published write-up that names no independent audit and no failure analysis. Treat the numbers as directional, and run a pilot on your own tickets before promising similar savings.
AppFolio's Realm-X Copilot After Moving to LangGraph
AppFolio built Realm-X, a natural language copilot for property managers, first on LangChain and then migrated it to LangGraph as requests grew more complex. The LangChain customer story explains that parallel branches now calculate fallbacks and answer questions from help pages while the system determines which actions apply. The team also used LangSmith for tracing, dynamic few-shot prompting, and evaluations wired into its CI pipeline to catch regressions. AppFolio reports more than 10 hours saved per week for property managers and text-to-data performance rising from about 40 percent to about 80 percent. Parallel execution reduced latency and code complexity, which is the practical payoff of expressing a copilot as a graph. The write-up still omits failure modes, cost analysis, and scalability constraints, so the headline numbers lack the context needed to reproduce them.
A Procurement Workflow Built With ADK 2 Graphs
A July 2026 tutorial built a manufacturing procurement assistant with ADK 2 graphs, using language model subagents for sourcing, compliance, pricing, logistics, and synthesis. Function nodes handled request capture, routing, and approval checks, while a join node made the parallel price, compliance, and logistics branches finish before synthesis. The author's walkthrough caps purchase order refinement at 3 rounds, with a deterministic exit check instead of trusting the critic model to stop. The whole topology reads in one edges list with five named routes plus a default fallback, which the author says makes the code mirror the architecture. The measurable outcome is architectural rather than commercial, because the tutorial publishes no percent savings, hours saved, or production traffic. Its own limitations are that single-turn nodes keep no chat history, cycles need careful validation, and parallel synthesis has no partial results.
Recommended by AIplusInfo
Books to go deeper on agent orchestration
Hand-picked titles that map to the orchestration, evaluation, and deployment decisions described above.
As an Amazon Associate, AIplusInfo earns from qualifying purchases.
Book
AI Engineering: Building Applications with Foundation Models
Covers evaluation, agents, and production tradeoffs for foundation model applications, useful whichever orchestration framework your team chooses.
Buy on AmazonBook
AI Agents in Action: Build, orchestrate, and deploy autonomous multi-agent systems
Walks through building, orchestrating, and deploying multi-agent systems, a natural companion to the routing and handoff patterns compared in this article.
Buy on AmazonBook
Building Applications with AI Agents: Designing and Implementing Multiagent Systems
Focuses on designing and implementing multiagent systems, which maps directly to the supervisor, pipeline, and fan-out patterns discussed in this guide.
Buy on AmazonProduction Lessons From Teams Building on These Frameworks
Case Study: Uber's AutoCover and Validator Agents
Uber's developer platform faced a scaling problem, because engineers needed thousands of unit tests and code fixes that hand-written tooling could not produce fast enough. The team built AutoCover, a test-generation agent, and Validator, a code-quality assistant, using LangGraph as the orchestration layer over several sub-agents under a central coordinator. According to ZenML's summary of Uber's talks, the design mixes language model analysis with deterministic tools such as static linters to reduce hallucinations. The hybrid of deterministic checks and model reasoning is the pattern that graph orchestration makes easiest to build and audit. For large files AutoCover runs up to 100 iterations of code generation and 100 test executions in parallel. That fan-out is a natural fit for a graph runtime that schedules independent nodes concurrently.
Uber reports that AutoCover achieved two to three times more coverage in half the time compared with competing agentic coding tools. The tools generate thousands of tests each month and raised developer platform coverage by about 10 percent, which Uber equates to 21,000 developer hours saved. Validator handles thousands of fix interactions from engineers every day, according to the same summary. The main concern is methodological, because the performance claims come without detailed methodology and are hard to validate independently. The summary also notes that testing of the agents themselves, and their handling of edge cases and failures, receives little coverage in the talks. Teams copying the pattern should therefore budget for their own evaluation harness rather than assuming the reported gains transfer.
Case Study: Fastweb and Vodafone's Super TOBi
Fastweb and Vodafone faced a familiar customer service problem: traditional chatbots struggled with nuanced requests that needed context, multiple system lookups, and end-to-end resolution. Call center consultants also needed faster access to customer data and service history while they were on live calls. The company built Super TOBi for customers and Super Agent for internal consultants on LangGraph and LangSmith, as its published case study describes. Super TOBi uses a supervisor agent that validates input, applies guardrails, and routes each query to use case agents for billing, roaming, and sales. Separating routing and guardrails in a supervisor keeps policy decisions in one auditable place. Super Agent classifies each question with an intent router, then either walks a graph-based procedure or answers open questions through graph retrieval over a Neo4j knowledge graph.
The company reports that Super TOBi serves 9.5 million customers with a 90 percent correctness rate and an 82 percent resolution rate. Super Agent reaches one-call resolution above 86 percent for consultants, and customers rate their effort at 5.2 out of 7. A daily automated evaluation in LangSmith scores responses from one to five and flags violated guidelines, which keeps quality visible. The lead engineer is quoted saying that agentic systems cannot run in production without deep observability. A limitation is that the story is written by the vendor together with the customer, so the figures are not independently audited. It also says little about cost, latency, or the failure cases behind the answers that were not correct.
Case Study: Google's ADK Rollout Across Products and Partners
The problem Google set out to solve with ADK was fragmentation, since product teams and partners needed one consistent way to build and evaluate multi-agent systems. Its solution, announced in April 2025, was an open-source toolkit that Google says already powers its own Agentspace and Customer Engagement Suite. A May 2025 update named Renault Group, Box, and Revionics among the companies using it and shipped Python ADK 1.0 as production-ready. Google's cloud announcement also cited more than 100 pre-built connectors, support for over 200 models, and more than 50 partners committed to the Agent2Agent protocol. ADK 2.0 then rebuilt that foundation around graph workflows, generally available in Python from May 19, 2026. That release added collaborative agent modes and a Kotlin beta, and one independent review puts the reach of on-device agents at more than 140 million Gemini Nano devices.
The measurable impact so far is adoption and reach rather than published savings, with roughly 21.1 thousand GitHub stars and version 2.10.0 released in September 2026. Google's I/O 2026 material adds a unified runtime, an evaluation suite with simulated users, and governance pieces such as agent identity and a gateway. The same independent review rated the product three out of five, citing beta SDKs at the time and a smaller community than LangGraph. The limitation for buyers is that none of these sources publishes customer-level results such as percent cost reduction or hours saved. That gap is a concern rather than a flaw, because ADK 2.0 is months old while LangGraph has years of public production stories. Ask Google or your account team for reference customers, and validate any claims with a pilot on your own workflow.
Frequently Asked Questions on Google ADK 2.0 vs LangGraph for Multi-Agent Orchestration
Google ADK 2.0 is the second major version of the open-source Agent Development Kit. It turns agents, tools, and functions into nodes inside a workflow graph, with routing, retries, and human input built in. The official documentation lists Python as generally available since May 19, 2026, followed by Go and TypeScript.
LangGraph is a low-level orchestration framework and runtime for building long-running, stateful agents. It is MIT licensed and maintained by LangChain Inc, and it powers the newer agent constructor in LangChain. Its core features include durable execution, human-in-the-loop pauses, memory, and streaming.
The biggest change is the graph-based workflow runtime, where every agent, tool, and function is evaluated as a node. Python agents now subclass a node base class, and the event schema gained node information and output fields. Some older overrides are silently ignored, so teams should follow the official migration notes carefully.
The official 2.0 page lists Python, Go, and TypeScript as generally available. Still, 2.0 breaks parts of the 1.x API, and independent coverage in July 2026 still labeled dynamic workflows as alpha. Pin exact versions, run an evaluation suite on every upgrade, and pilot with a low-risk workflow first.
Neither is better in every situation, so the right choice depends on your constraints. LangGraph offers mature checkpointing, time travel, and cloud-neutral deployment, while ADK 2.0 offers collaborative agent modes, broader language support, and tight Google Cloud integration. Choose by cloud alignment, language mix, audit needs, and how much wiring your team wants to write.
Yes, ADK can reach models from providers such as Anthropic, Meta, and Mistral AI through a LiteLLM integration. Google's defaults, samples, and managed tooling still lean toward Gemini. Test your preferred model early, because tool calling and structured output behavior can differ between providers.
In ADK 2.0 a node yields a request-input object, which pauses the workflow without any model call. LangGraph uses its interrupt function, which saves state through a checkpointer and waits until you resume with a command. Both approaches survive process restarts when a durable store is configured.
LangGraph snapshots state after every super-step using a checkpointer such as SQLite or Postgres, and you resume by thread identifier. ADK 2.0 passes data between nodes as return values and records sessions and events, with the scheduler handling retries and resumption. In both cases you should plan retention policies so stored state does not grow without limit.
Both frameworks are free and open source, under Apache 2.0 for ADK and MIT for LangGraph. Your costs come from model tokens, hosting, storage, and observability. LangSmith Plus lists at 39 dollars per seat per month, while ADK hosting costs depend on where you run it, such as Cloud Run or Google's managed agent platform.
Yes, hybrid designs are realistic because both ecosystems support the Model Context Protocol and Agent-to-Agent communication. ADK can also wrap LangChain tools, and LangSmith Deployment exposes Agent-to-Agent endpoints. Keep business logic in plain functions so either framework can call it through a thin adapter.
Effort depends on how much custom agent code you wrote. Python overrides of internal run methods are silently ignored, direct event appends are prohibited, and Go modules move to a versioned path. Port one agent at a time on a branch and rerun your evaluation suite after each change.
ADK 2.0 targets Python, TypeScript, and Go, and the documentation also covers Java and Kotlin, with Kotlin in beta for on-device Android agents. LangGraph is best known for Python and also offers a JavaScript version. Samples for non-Python ADK languages are still sparser than the Python examples.
Unit test deterministic nodes without a model call, then use golden datasets and regression suites for model-driven nodes. LangGraph pairs with LangSmith tracing, while ADK integrates OpenTelemetry and offers built-in evaluation. Capture traces from the first prototype so you can reconstruct incidents later.
Two weeks is usually enough to build one real workflow in both frameworks and compare results. Agree on success metrics first, such as latency, cost per completed task, developer effort, and reviewer satisfaction. Let measured results settle the decision instead of preference or marketing claims.