Only start flow if not completed

A common use case is to have a recurring flow that starts periodically until the user completes it. This was possible before using a “Flow x is completed” condition. But now we’ve made it even easier with a simple checkbox:

Only if not completed

This checkbox appears if you pick either Multiple times per user or Unlimited times per user.

Control time between flows

Most Userflow customers have many flows that start automatically. But sometimes flows aren’t time-critical, and you want to avoid overwhelming the user with too many auto-started flows in quick succession.

Before, you could limit how quickly a flow was allowed to show after another flow using an Event condition such as “Flow Started exactly 0 times in the last 1 hour”. But that was neither intuitive nor that easy to maintain.

We’ve now made this a native feature in Userflow. For flows using Multiple times per user or Unlimited times per user, simply use the new At least x hours after any flow setting:

Control time between flows

The setting only applies to each individual flow. This way you can, for example, control that your NPS survey only appears if no other flow has shown in the last 1 hour (or 5 minutes, or whatever suits your use case).

The case against "Next-next-next tours"

A common pitfall in user onboarding is building what we call “Next-next-next tours”: A series of tooltips that point out stuff in your app with “Next” buttons to go to the next step. These tours are boring and unengaging, making users drop out early and not gain anything (or even worse: frustrate them!).

Instead, you should build action-based flows that drive users towards their “Aha moment”. Read more in our new Flow best practices guide.

To further combat Next-next-next tours, we’ve added a proactive detection in the flow builder that’ll warn you if a flow looks like a Next-next-next tour:

Warning about next-next-next tour

Tooltips now auto-dismiss by default if target can't be found

We’ve changed the standard behavior of when a tooltip target can’t be found. Previously, if you used our standard themes, the following message would be shown:


Going forward, the flow will auto-dismiss if the tooltip target is not found within 3 seconds.

We’re making this change in an effort to get more out of the user’s way. Only in cases where it’s absolutely necessary for the user to complete a guide, do we recommend presenting the user with the above message. In most regular onboarding flows or feature announcements, if the user does navigate away, it’s most likely that they just don’t want to continue the tour. Therefore we feel it’s better to err on the side of just dismissing the flow and let the user continue unhindered.

This change only applies if you’re using one of our standard themes. If you’re using a custom theme, the setting you had under Tooltip → Missing tooltip target behavior still applies. You can, of course, change that if you wish. Read more in our Missing tooltip target behavior guide.

Groups is now Companies

We’ve renamed our Groups feature to now be called Companies instead.

The word “group” was originally chosen because it was a broader term than “company”, meaning it could cover both companies, accounts, teams, organizations etc. - whatever term our customers may use to group multiple users belonging to the same entity together. Another reason was that popular tools used the term, too, such as Segment’s JavaScript API.

We’ve come to the conclusion that “groups” is a confusing term, and is often misunderstood as “segments” (which we also have).

To make the distinction crystal clear, Groups is now Companies 🤓

For now, this is solely a terminology rewording, and no actions are required of you. We’ve updated our UI and documentation use the word “company” everywhere possible. Userflow.js has not changed and still uses, just like the REST API has not changed and still uses endpoint URLs such as /groups and group_id for object properties.

The Product-led Stack

What tools do you actually need in a product-led stack?

Product-led Stack

Read full post

Time condition: Specify time range for content to show

We’ve made it easier to conditionally show content depending on the current time. The 2 most common use cases for this are:

  • Publishing content that shouldn’t go live until a specific time in the future. For example, a feature launch coming up in a few days, or a message related to the time of year, such as remembering a reporting deadline.
  • Automatically stop showing content after a period time, after which it’s no longer relevant. For example, a new feature that won’t be new in 3 months.

Simply use the new Current time condition. It works under any Add condition button in the builder. You can either fill in one of the 2 time fields, or both of them.

Time condition

Recurring flows

It’s now much easier to set up recurring flows that start up to a specific number of times, spaced out over time.

The drop-down now contains a new option, Start a specific number of times per user, which, when selected, lets you pick how many times the flow may start.

This option, as well as for Start unlimited times per user, now also allows you to specify a minimum number of minutes/hours/days that has to pass since the flow was last dismissed before it may start again.

Start multiple times

Bonus tip: If you only want to show the flow again if the user has not already completed it, you simply add that to the auto-start condition:

Start multiple times unless completed

Custom icons in resource center blocks and launchers

You can now use any icon of your choosing in resource center blocks and launchers.

The icon selector still supports a small selection of built-in icons. But now you can also choose to upload your own icon, or enter the URL to an icon hosted elsewhere.

Icon select

Wait condition: Delay flow start or continue after delay

Conditions, such as in triggers and Auto-start flow rules, now support waiting a specified number of seconds before performing actions or starting a flow.

This allows you to, for example, wait a few seconds after a user arrives on a page before starting a flow, or automatically continuing to the next step after a short delay.

Use the new Wait option in the Add condition popover.

Enable wait

Then choose the desired number of seconds to wait.

Condition wait popover

That’s it!