Exclusive Gateway (XOR)
A diamond that routes the token down exactly one of its outgoing paths — the classic "if / else if / else" of BPMN.
What an exclusive gateway does
An exclusive gateway is a diamond, often with an "X" marker inside. It takes one incoming token and routes it out along exactly one of its outgoing sequence flows — whichever matches its condition. If multiple conditions could match, BPMN demands the modeller disambiguate (by ordering or by explicit priority); exclusivity is the contract.
A well-formed exclusive gateway has a default flow — the outgoing sequence flow with a short back-slash mark at its source — that fires when none of the conditional flows match. Without a default, a token that fails every condition is stuck, which is usually a bug in the process design and sometimes a legitimate "impossible state" the modeller wants to surface.
When to pick XOR over inclusive or parallel
- Use an exclusive gateway when exactly one path fires — "approve / reject", "high risk / medium / low", "domestic / international".
- Use an inclusive gateway when one *or more* paths can fire simultaneously — "send email AND/OR SMS AND/OR push".
- Use a parallel gateway when *all* outgoing paths always fire together — no conditions involved.
Exclusive gateways in LucidFlow
LucidFlow produces exclusive gateways whenever the source document describes a clean mutually-exclusive decision ("the manager approves or rejects", "the request is either standard or expedited"). Branch conditions are labelled on the arrows with the plain-English text from the source; you can refine them into formal expressions later if you plan to run the process on a BPMN engine. The cost dashboard computes a weighted average across branches using the frequencies you set, which is how you get an accurate "expected cost per instance" even when different branches do different work.
Frequently asked questions
Do I need to draw the X marker inside the diamond?
Technically no — an empty diamond is, by convention, an exclusive gateway. Best practice is to draw the X anyway so the reader does not have to guess, and so your diagrams stay unambiguous when exported to a tool that renders gateways differently.
Can an exclusive gateway have two default flows?
No. A gateway has at most one default flow. Two would mean "which default fires when nothing else matches?" — which defeats the point.
Is it valid to model the "else" branch with a conditional flow instead of a default flow?
It is valid but weaker. A default flow guarantees the token is never stuck; a final conditional flow only fires when its condition matches. If "not-A and not-B" was intended, a default flow expresses that safely; a third conditional flow has to explicitly code it.