Branches: Different paths based on conditions. Use if/then branches when the same trigger needs different responses.
Example: Form submission → check form type → if demo request go to path A (notify sales, create high-priority task, send confirmation email) → if content download go to path B (add to nurture list, send content, low-priority lead score).
Keep branches under 4-5 paths. If you need 10 different paths, you probably need separate workflows or your conditions are too specific.
Loops: Repeating actions until condition met. Use loops for follow-up sequences, checking statuses, or retry logic.
Example: Send email → wait 3 days → check if replied → if no, send follow-up → wait 5 days → check if replied → if no, send final follow-up → wait 7 days → if still no reply, exit workflow and flag for manual outreach.
Limit loops to 3-5 iterations maximum. Infinite loops cause problems. Always include exit conditions.
Complex logic with AND/OR: Combine multiple conditions. AND means all must be true. OR means any can be true. Use parentheses for clarity.
Example: If (company size > 100 AND industry = 'finance') OR (company size > 500) then assign to enterprise team. This catches large finance companies (100+) OR any very large company (500+).
Test complex logic carefully. Write out truth tables if needed to ensure it works correctly.