I am going to re-open this can of worms because this is dramatically impacting our reputation with our clients and it is something that every other Marketing Automation tool handles..
While filtering segments with Behaviors is a way to help control the flow of email to a contact this doesn't work with users that are in multiple journeys (specially when some are slow slow long running nurture campaigns and others are fast running event focused campaigns). The problem is only compounded when a contact might qualify for multiple fast running campaigns at the same time or be on multiple slow running nurture/drip campaigns at the same time
The root of our problem can fundamentally be described as there is no way to "pause" a contact on the journey..
1) Once a contact qualifies for a journey (is added to a segment that is in that journey) they flow through the entire journey, at the journey's schedule even if mid-way through they stop qualifying..
-- Example: Segment A is all users who have not bought widget X in 6 months, it is added to a journey espousing the value of widget X over 6 weeks with 1 email per week.. On week 3 the contact "Bob" buys 10 widgets X's from his account rep.. He is no longer in Segment A, however, he will continue to receive widget X until the journey is over UNLESS a suppression segment is setup, so we setup Suppression Segment B that is a list of all contacts that HAVE bought widget X in the last 6 months
-- How this plays out : Bob is on 3 drip campaigns for widget X, Y and Z.. they all have a behavior filter on the segments (for each campaign) that says "only for contacts that have not received more than 1 email in the last week".. The moment Bob doesn't have an email for a week he qualifies for all 3 campaigns.. If they all have the same email schedule from first email to last email (say once a week) he will be on all 3 journeys and will receive 3 emails a week (despite the segment filter).. This is because segments are gateways once a contact qualifies they are off to the races and their current segment status does not pause or cancel their participation (preferred behavior would be to pause them by the way)
2) Suppression segments remove contacts from a journey for ever.
-- Example: Bob is suppressed because he bought widget X 3 weeks into his journey, but this is a recurring campaign, and it is now 6 months in the future, he now qualifies Segment A (its been more than 6 months since he bought the widget) BUT because he was suppressed in a suppression segment B (that he no longer qualifies for because its more than 6 months since his last widget purchase) he is not put back into the campaign NORE is he re-started on week 3 of the segment.. He is frozen out and a whole new copy of the journey has to be created to re-market to that contact.
-- How this plays out: We are smart and put a suppression segment on the drips for widget X, Y, Z to make sure people who get more than 1 email a week are removed .. Great.. Bob gets 3 emails once (boo, but maybe solvable with scheduling), then the suppression segment kicks in Bob is removed from all 3 campaigns at the same time.. And more to the point never ever allowed into those journeys again.. New duplicate journeys would have to be created for widget X, Y and Z in order to continue to market to Bob.
This ends up playing out as making it impossible to really control the flow of journeys to contacts unless your journeys are either A) 1 email per journey (so suppression doesn't matter) OR B) 1 journey at a time...
If suppression segments only "paused" a user on a journey then Behaviors with filters would be PERFECT!
OR
If a contact was paused on journey they were on when they "fell out" of the qualifying segment that would also be PERFECT!
However neither are how journeys work and so behavior filters do not work in any marketing department that is sufficiently complex enough to run more than 1 off quick send type journeys or multiple journeys at the same time.
Its so close to enough to solve this problem.. yet, so far.. :-(
(the other option would be to create queues per contact and allow a system control to limit the flow of emails through said queue such that emails could be paused.. of course then email expiration would have to be checked just before sending... that kind of flow is what most other Marketing Automation platforms support, but frankly I could make my marketing department VERY HAPPY if we just got a "pausing" type feature.. anything that could deterministically control the flow of email!)