Convarza AI
Call flows

Add condition branches to a flow

If and else-if branches, each with its own chain of steps. First match wins, top to bottom — which is the whole rule.

Conditions are what let the other steps compose into something that handles a real business. They are also where flows become unreadable if you are not disciplined.

The rule is simple and worth stating precisely: first match wins, top to bottom. The first branch whose condition is true runs, and nothing below it is considered. That has one important consequence — a broad condition placed early will swallow every narrow one beneath it, and the symptom is a branch that "never runs" for no apparent reason.

The summary line reads as a sequence. If yours does not make sense read aloud, the order is wrong.
The summary line reads as a sequence. If yours does not make sense read aloud, the order is wrong.

Before you start

  • A call flow.
  • Your cases written down, ordered narrowest first, with a catch-all at the end.

Steps

Add a condition step

It gives you If and Else-if branches, each carrying its own chain of steps.

Steps are picked from a list rather than configured freely, which is what keeps a flow readable to whoever inherits it.
Steps are picked from a list rather than configured freely, which is what keeps a flow readable to whoever inherits it.

Branch on something stable

Where the call came from, whether you are open, which IVR option they pressed. Branching on something that changes constantly produces a flow nobody can reason about.

Order from most specific to most general

The first match wins. Put your narrow cases above your broad ones, always — this is the rule that catches everybody at least once.

Always have a final catch-all

Every condition needs an else path. A call that matches nothing and has nowhere to go is a call left ringing.

Keep the nesting shallow

Two levels is readable. Four is a flow nobody will dare edit in a year, which means it will be replaced rather than maintained.

Test every branch, including the improbable one

The branch you are sure will never fire is the one that fires at 3am on a Sunday.

Check it worked

Read the flow top to bottom and, for each branch, say out loud when it would run. If two branches could both be true at once, check they are in the order you intended — because only the first will ever execute.

Worth knowing

The parts people get wrong

  • If a flow needs conditions three levels deep, consider whether an AI voice agent asking one question would replace all of them.
  • A branch that appears never to run is usually being swallowed by a broader condition above it.
Questions

The ones people actually ask

My narrow case never fires.

It is below a broader one. The first match wins, so narrow cases must sit above broad ones. This is the rule that catches everybody at least once.

A call matched nothing and went nowhere.

You are missing the catch-all. Every condition needs a final else path, or a call that matches nothing is a call left ringing.

How deep can I nest conditions?

Technically deeper than you should. Two levels is readable; four is a flow nobody will dare edit in a year, which means it gets replaced rather than maintained. If you need that depth, you probably want a nested flow instead.

Rather be shown than read?

Thirty minutes, your numbers and your channels on the screen.

No setup fee. No per-conversation charge. Cancel from inside the product.