The best way to set up workflows
Start your workflow on paper
Sit down, brainstorm and plan how you'll be using workflows, fields and preferences or interests for contact tagging and keeping track of information. All before you start off the cuff creating a workflow. If you don't you'll soon get stuck in a mess. Create a framework and set up some kind of spreadsheet to start listing all the goals, states and information you want to keep track off. Next create a second sheet with all your names, labels and descriptions so you can remember what each is for – share it with your team so they’re all working to the same system.
Also spend some time thinking about the most important behaviors your different types of contacts can take and which you want to use in your scenarios.
Split long and complex scenarios up into smaller chunks
Once you have built confidence in constructing a couple of simple workflows in Flexmail, it becomes tempting to set up ambitious and long scenarios. The advantages seem clear: all results in one single report. Rather than building one enormous automation to execute a marketing or sales process, it's so much more interesting to break it down into smaller, more manageable “chunks.”
Building an automation to execute a particularly long or complex process, especially, can be tricky because there are so many moving parts: You may need to employ waiting blocks, If/Else conditions, and have contacts entering and exiting the automation at various points. That’s a lot of logic to keep track of!
That’s why, when it comes to creating workflows, we recommend building little chunks. That is, rather than building one enormous, monster automation, break it down into smaller, more manageable “modules.” with only a couple of elements. Once your logic changes, switch from one module to the other one.
Benefits of this approach:
1. Easier to follow the logic
When an issue arises, it’s easier to troubleshoot and correct a smaller automation without disturbing the flow of the overall process for contacts who are currently making their way through.
Small, modular automations are also easier to approach and understand when it comes to training your team (or re-learning an automation yourself months after you created it!).
2. Easier to insert contacts at a specific point
Because these smaller chunks are less complex, it becomes a lot easier to introduce contacts into a specific point than for larger, more complicated flows. If you're building a giant scenario, you cannot add a contact into a specific step in your onboarding process without some risk that the contact is missing a vital part of information. With smaller automations, you can simply drop the contact into the automation at the point you would like them to start. Or have two journeys come together in the same messaging along the line.
3. Updating smaller automations is less risky
If you need to update a single portion of a large automation, you run the risk that all contacts in the automation will be affected by your change (your change could disrupt the logic for contacts already in the journey). But when you have smaller automations, it’s easy to replace one part of the entire whole without accidentally affecting the other pieces. Way better for optimization of your scenario when you find out a part is underperforming.
How do I know if my workflow is too complex?
Begin thinking of your automations as goals. For every scenario you wish to create, ask yourself this: "What goal do I want this automation to achieve for me?" If you identify more than one, perhaps this process will require multiple workflows.
The key to building easy-to-manage workflows is building goal-oriented. For every new goal, you start a new workflow. You can link several workflows together by using the "start other workflow" block (which will replace the start block of the other workflow for these contacts). Or by updating interests or other fields, and starting a new start block based on this information.
Making changes to an active workflow
Making changes to a workflow that has already been collecting results is always a risky process. Processes and analyses could still be running in the background, or contacts could be on hold in a waiting block. Once you start changing parameters, certain conditions could not add up anymore, or contacts could get stuck.
The very best solution is always to stop a workflow, and recreate one, making your changes in the new version. Once you're done, simply stop your old workflow, and launch your new one. Added benefit is that you can easily compare the effect of your changes when putting results of both side by side. This works even better if you keep your workflows lightweight.