If you've ever stared at a BPMN diagram and wondered which gateway symbol does what, you're not alone. Gateways control the flow of a process they decide what happens next, under what conditions, and whether paths run in parallel or pick one route. Choosing the wrong gateway type leads to misread diagrams, broken workflows, and confused stakeholders. A clear comparison chart saves you time, reduces modeling errors, and helps everyone on your team understand the process logic at a glance.
What are BPMN gateways and why do they exist?
In BPMN (Business Process Model and Notation), a gateway is a diamond-shaped element that controls how a process splits or merges. Think of it as a traffic intersection for your workflow. Without gateways, every process would be a single straight line with no branching, no conditions, and no concurrency.
Gateways answer questions like:
- Does the process take one path or multiple paths?
- Is the decision based on a condition, an event, or a message?
- Do all branches need to complete before the process continues, or just one?
The Object Management Group (OMG) maintains the BPMN specification, which defines these gateway types as part of the standard notation. Getting familiar with them is a core skill for anyone mapping business workflows.
What are the main types of BPMN gateways?
There are six commonly used gateway types. Each one controls process flow in a different way:
Exclusive Gateway (XOR)
The exclusive gateway picks exactly one path based on a condition. It's the most common gateway in BPMN diagrams. Use it when a decision leads to one outcome like approving or rejecting a request. The symbol is a diamond with an "X" inside.
Parallel Gateway (AND)
The parallel gateway splits the process into multiple paths that all run at the same time. It merges them when every branch is complete. Use it when tasks need to happen simultaneously like sending a notification while processing a payment. The symbol is a diamond with a "+" inside.
Inclusive Gateway (OR)
The inclusive gateway activates one or more paths based on conditions. Unlike the exclusive gateway, multiple branches can be true at the same time. The merge waits for all active branches to finish. The symbol is a diamond with a circle inside.
Event-Based Gateway (Event)
The event-based gateway waits for a specific event to happen before choosing a path. It doesn't evaluate a condition it reacts to something occurring, like receiving a message or a timer expiring. You can learn more about how BPMN event definitions and trigger types work to use this gateway effectively.
Complex Gateway
The complex gateway handles situations that don't fit the other types. For example, "continue when three out of five branches are done." It's rarely used in practice because most process engines don't fully support it.
Exclusive Event-Based Gateway
This gateway is similar to the event-based gateway but specifically waits for the first event in a set. Once that event fires, only the corresponding path activates. It's useful in scenarios like waiting for a customer reply or a timeout whichever comes first.
How do the gateway types compare side by side?
Here's a direct comparison to help you pick the right gateway quickly:
- Exclusive (XOR): One path chosen by condition. Standard decision point.
- Parallel (AND): All paths activate at once. Merge waits for all branches.
- Inclusive (OR): One or more paths activate by condition. Merge waits for all active branches.
- Event-Based: Path chosen by which event occurs first. No condition evaluation.
- Complex: Custom rules for splitting and merging. Limited tool support.
- Exclusive Event-Based: First event in a set determines the single path taken.
If you need a quick-reference version of this alongside other diagram elements, the BPMN diagram elements cheat sheet for workflow engineers covers gateways together with tasks, events, and flows in one place.
When should you use an exclusive gateway vs. an inclusive gateway?
This is the comparison that trips people up most often. Here's the simple rule:
- Use exclusive when only one condition can be true. Example: an expense report is either approved or denied never both.
- Use inclusive when multiple conditions can be true at once. Example: a customer order triggers free shipping AND a loyalty points reward both happen if both conditions are met.
A practical way to test your choice: if you read the conditions out loud and they sound mutually exclusive ("yes or no," "high or low"), go with XOR. If they could overlap ("free shipping if over $50, bonus gift if it's a holiday"), go with OR.
What mistakes do people make with BPMN gateways?
These errors come up regularly in process modeling:
- Using a parallel gateway when conditions should decide the path. A parallel gateway always activates every branch. If any branch depends on a condition, you need an inclusive or exclusive gateway instead.
- Mismatched split and merge gateways. If you split with a parallel gateway, merge with a parallel gateway. Mixing types like splitting with AND and merging with XOR creates ambiguous behavior.
- Overusing the complex gateway. Most BPMN tools and workflow engines don't fully implement complex gateway logic. If you use it, be prepared for limited execution support.
- Not labeling gateway conditions. An exclusive gateway without labels on its outgoing flows is hard to read. Always label each path clearly "Yes/No," "Approved/Rejected," or the specific condition.
- Confusing event-based gateways with exclusive gateways. An exclusive gateway evaluates a condition. An event-based gateway waits for something to happen. They look similar but behave differently at runtime.
How do you choose the right gateway for your process?
Walk through this logic each time you add a gateway to your diagram:
- Ask: does the process need to split at all? If not, skip the gateway.
- Ask: is the decision based on a condition or an event?
- If it's a condition: can multiple paths be true? If yes, use inclusive. If only one, use exclusive.
- If it's an event: do you need exactly one path from a set of possible events? Use exclusive event-based. Do you need to react to an external event like a message? Use event-based gateway.
- If the logic is truly non-standard, consider the complex gateway but check your tool's support first.
- Always pair your split gateway with the matching merge type downstream.
Practical checklist for working with BPMN gateways
- ☐ Identify every decision point in your process before picking gateway types
- ☐ Confirm whether conditions are mutually exclusive or can overlap
- ☐ Match every split gateway with the same type of merge gateway
- ☐ Label all outgoing flows from exclusive and inclusive gateways
- ☐ Avoid complex gateways unless your workflow engine explicitly supports them
- ☐ Verify event-based gateways against actual system events, not assumptions
- ☐ Review diagrams with stakeholders if they can't follow the gateway logic, simplify it
Next step: Pick a process you're currently working on. Map out every decision point, apply the gateway selection logic above, and check each split-merge pair for consistency. If you need a broader reference while modeling, keep the cheat sheet open alongside your diagram tool.
Bpmn Task Types Classification and Usage Examples
Bpmn 2.0 Symbol Reference Guide for Business Analysts
Bpmn Diagram Elements Cheat Sheet for Workflow Engineers
Bpmn Event Definitions and Trigger Types Explained
Iec vs Ansi Circuit Diagram Notation: Key Differences Explained
Sequence Diagram Notation Explained for Beginners