The Trick With Decision Diamonds

Decision Right Wrong Sign
Is Your Decision Diamond Logic Broken?

Are you struggling to get your Keap advanced automation (campaign) decision diamonds working when you want to test that a contact doesn’t have either of two or more tags, or field values?

This is caused by a common mistake when translating natural language into logic that Keap understands.

Help is at hand… this article is going to help you understand the problem, so you can get it right from now on in. No more broken decision diamonds, and no more additional decision diamonds when one will do the job (and is easier to debug, change, and document).


Let’s say you have two sequences, and you want to send the contact to one of these based on them having either one of two tags, therefore they go to the other sequence if they don’t have any of the two tags. You might write this like so…

  • If contact has Tag 1 or Tag 2 then go to Sequence A
  • If contact doesn’t have Tag 1 or Tag 2 then go to Sequence B

Ok, that makes sense. We all understand what we want to happen here. So we then create the following decision diamond rules…

Sequence A: If the Contact’s Tags contains Tag 1 or Tag 2

Decision Diamond 1 Tick

Sequence B: If the Contact’s Tags doesn’t contain Tag 1 or Tag 2

BOOM! Right? That will work yeah…


Decision Diamond Logic 2 Cross

This is the common mistake.  The first rule is fine… but the second rule needs to be changed. But why?!? You may ask… well I am glad you asked!

The problem comes down to two things:

  1. The way we express the logic in English is shorthand, and while it makes sense in common language, it’s not mathematically correct.
  2. The “doesn’t contain” qualifier is implied for Tag 2 which, if you read that out in full.

Let’s look at that second one first, if we now write that in English it now says:

If the Contact’s Tags doesn’t contain Tag 1 or doesn’t contain Tag 2.

Already that is starting to sound not quite what we were after, so if we now also consider the first issue above, then how we really should express this logic to make sense is like this:

If the Contact’s Tags doesn’t contain Tag 1 AND doesn’t contain Tag 2

Which we can set up in the Decision Diamond like this…

Decision Diamond 3 Tick

Alternatively, we can also create a rule that is the same thing but in a longer form, that shows the “doesn’t contain” in front of the subsequent tag(s).

Decision Diamond Logic 4 Tick

Still confused? Don’t worry, it can be a tricky thing to get your head around, and we have all made mistakes with decision diamond logic. Just remember that if you are using doesn’t contain with more than one tag, use the AND instead of OR.

When in doubt, use the Test feature from the Actions dropdown in the top right of the window to see what happens based on different criteria. 

I have a video coming out soon that goes into this a little bit deeper, make sure you sign up to get notified when that comes out.

Share the Post:

Related Posts

Email Sending Health Review Terms & Conditions


To allow us to provide a full review with as much information as possible, the following must be available or supplied by the purchaser:

  1. Have a custom domain that you send marketing email from.
  2. Have access, and can make changes to, your DNS records (we can assist with this to a limited degree).
  3.  Be using a CRM or email marketing platform.
  4. Complete the initial questionnaire that we send you.
  5. Provide a single domain name that you send marketing email from for us to review

To allow us to be able to provide the Google Postmaster Tools review, we will require the following:

  1. You are sending “enough” marketing/business email from your custom domain that Google is able to report data for. This is out of our control and Google do not publish this threshold. Low email sending may mean we will be unable to provide the Google Postmaster Tools component of this review. 
  2. You can add a DNS TXT record for us to tell Google you are allowing us to view your Postmaster Tools statistics.

To allow us to be able to provide the EmailSmart email health score, we will require the following:

  1. You are using a compatible CRM platform to send marketing emails.
  2. You can successfully connect your CRM to EmailSmart, or we are able to do this on your behalf.

To allow us to be able to provide the Email Authentication review, we will require the following:

  1. Your custom domain name.
  2. You send us test emails to a special email address that we will inform you of, from all your services that you send email from. i.e. CRM, email provider, help desk, etc.
  3. You inform us of every platform and service that you use to send email from your custom domain.

General Terms and Conditions

By purchasing this service, you acknowledge the following:

  1. You understand the prerequisite and that not meeting some ore all of them will impact the ability of us to provide a full review.
  2. The Email Sending Health Review is a review, and is not a comprehensive in depth analysis or audit of your sending practices, content, list health, automation, etc. If you require a more in depth audit, we can provide this for you at additional cost.
  3. While we will provide as much specific and actionable advice as possible, much of the advice may be general in nature based on the limited information we are able to gather from the questionnaire, DNS, Email Authentication, Google Postmaster Tools and EmailSmart HealthScore.
  4. Any factor outside our control that makes providing some or all of the review content impossible, we are not liable for.
  5. If for reasons outside our control we are not able to do any of the review items, we will refund your fee less (at our discretion) a small fee to cover our costs in handling this unlikely event.
  6. If we are unable to provide the review due to factors completely within our control, we will refund the full fee.
  7. We will not be liable for any costs that you may or may not incur from following or ignoring any of the advice or recommendations in the review.
  8. Due to the nature of how some of the data is collected, there can be delays in completing the review that are outside our control. For example, getting DNS records updated, waiting for Postmaster Tools to populate with data, etc.