Branching Logic
Branching Logic — Branching logic is the structure in a decision-support workflow where the next step depends on a condition met by the user — 'if X, go to step A; if Y, go to step B.' Branching logic is the structural pattern underlying decision trees, troubleshooting guides, and adaptive content systems.
What is branching logic?
Branching logic is the structural pattern in which a workflow’s next step is determined by a conditional check on the user’s state, input, or characteristic. The pattern is the building block of decision trees, troubleshooting guides (“if the device powers on, go to step 2; if it doesn’t, check the cable”), survey routing, and adaptive content systems.
In editorial contexts, branching logic is the structural alternative to linear ranking. A linear ranking presents the same content in the same order to every user; branching logic adapts the path based on what the user wants.
Why it matters
App-selection content benefits from branching logic because the underlying decision is conditional, not absolute. The right calorie app depends on what the user wants logging to feel like; the right note app depends on the user’s mental model; the right budgeting app depends on their relationship with money. A linear ranking can’t address these conditions; branching logic can.
The publication you’re reading uses branching logic in two places:
- Within decision trees. Each tree branches on a user condition and presents the recommendation matched to that condition. See decision tree.
- Across decision trees. The site’s network of decision trees is itself a higher-level branching logic — the user picks the category they care about (calorie, notes, finance), then enters the corresponding tree.
Construction patterns
The two common ways to construct branching logic:
- Single-axis branching. The tree branches on one user characteristic, with each branch terminating in a recommendation. Our calorie-app tree branches on “what do you want logging to feel like” with five terminal branches.
- Multi-step branching. The tree branches in stages, with intermediate nodes that further branch. Our note-app tree could be expanded into multi-step branching (“first, do you want plain text or block-based?”; “if plain text, do you want local-first or cloud-first?”) but we’ve kept it single-axis for simplicity.
Most of our trees are single-axis because the population of users for each category is small enough that single-axis is sufficient. Categories with larger and more heterogeneous user populations may benefit from multi-step branching in future expansions.
When branching logic over-engineers
Branching logic adds structure but also adds friction. A trivial decision (which podcast app on iOS for casual listening) doesn’t need a tree; the recommendation is “Apple Podcasts.” Forcing a tree on a trivial decision is over-engineering.
The pragmatic test: if the recommendation would be the same for 80% of users regardless of condition, you don’t need a tree. You need a paragraph.