When splitting paths, contacts are duplicated in programs. If you split a path into several parts and then join them together in a single node it will cause the same amount of contacts to travel on several paths. This can cause duplicated email sends, among other issues. When you split contacts to travel on different paths, they will run in separate instances from this point, and even if you lead them into one single node afterwards, the two instances still will run separated.
See the example below:
In this case, node B and node A emails will be delivered once, but node C will be delivered twice, because contacts were duplicated without filtering at the split. This potentially unintended arrangement is often referred to as “island”.
There are two ways to resolve islands. You can use a Filter switch when splitting paths, so that contacts are not duplicated:
In this case all emails will be received only once by the relevant contacts.
Or, as another solution, you can end one of the split paths with a Finish node, so duplicated contacts will not return to the program: