How to skip delays for emails that have already been sent in a campaign

Your software
My Mautic version is: 2.16.1
My PHP version is: 7.2

Your problem
I have a slightly more complex version of this campaign set up:
Screen Shot 2020-04-14 at 9.15.12 PM

  • If a contact is removed from the “nurture” segment, they stop receiving emails from this campaign (great!)
  • If a contact is subsequently re-added to the “nurture” segment, they restart the campaign (great!)
  • A contact restarting the campaign is not resent the emails they were sent the first time because Mautic prevents this (great!)
  • If a contact is added back to the segment and campaign after receiving the first two emails, they still have to go through the wait steps to get to the third email and pick up where they left off (not great :frowning:)

If there were a decision based on having been sent an email, I could easily jump to the step for the appropriate email, but I don’t see that as a decision option.

If a campaign action set with a delay checked if the action was valid before scheduling instead of when triggered then the contact would skip the delays associated with the emails they had already received, but this is not how Mautic works.

I could set a tag for each email, but there will ultimately be 10s of these nurtures with 5-10 emails each, and that’s a lot of tags just to maintain a state that Mautic already maintains (which emails a contact has received).

It seems like this should be easy. It seems like I am missing something fundamental here. What is it?


Hi steverobinson,

It would definitely be nice to have the email sent condition and since is there on the filter for segments there should be a way to reuse existing code.

Meanwhile, as a workaround, I wonder if you could leverage the filter in the segments to and use multiple segments on the campaign, order maybe use stages and move the user across stages?

Re: As per adding the using emails sent as a condition on the campaign you should add it to the ideas topic

Hi @renzof,
That’s a great suggestion, though in my use case, that would be hundreds of segments and just as messy as tags.

I will definitely post the idea of an “email sent” decision to ideas and if I get gutsy or have a little time, maybe even post a PR if I can figure it out.

If nothing else, I appreciate you validating I’m not crazy and this should be easier than it is.


1 Like