SOLVED

Email frequency in subscription centre

Go to solution
Anonymous
Not applicable

Email frequency in subscription centre

I'm looking to add email frequency as an option to be managed by people within the subscription centre. Looking at options for what this might be at the moment, but for arguments sake let's go with 1 email a week, 2-4 emails a week, 5-7 emails a week. This will definitely change.

How do I go about creating those options and ensuring that anyone that checks just 1 email a week, will only receive 1 email a week? I understand I'll need to create a custom field for frequency, but not sure how this could work in practice? I guess I'll want to temporarily suspend emails?

Thanks

1 ACCEPTED SOLUTION

Accepted Solutions
Grégoire_Miche2
Level 10

Re: Email frequency in subscription centre

Hi Carly,

Indeed, you will need to create a frequency field to capture the info. But you will have to make the threshold a simple value, not an interval. Let call this field "Max weekly emails"

I would combine this with a "Weekly email counter" field, type score, and a "Counter start date" field, type datetime.

Then you will have to create a program with some elements, but before this, there is a point you need to address: you would need to differentiate operational emails from non operational emails, so that the counter is incremented only for non operational emails. This can only be done through the email naming convention. Let's say all operational emails contain the string "(O)" and all marketing email contain the string "(M)" in their name.

In the program, you will need:

A smart list

Name it "Max email reached", combining "Weekly email counter" and their threshold:

Advanced rules : (1 or 2) and (2 or 4) and (5 or 6)

Filters:

  1. Max weekly emails is 1
  2. Weekly email counter is 1
  3. Max weekly emails is 4
  4. Weekly email counter is 4
  5. Max weekly emails is 7
  6. Weekly email counter is 7

A static list.

Name it "Suspended leads" this will serve on smart lists all around the database if you need to exclude them from targeting

Some smart campaigns

SC1:

  • Smart list:
    • Trigger: lead is created
  • Flow
    1. Change data value- Choices:
      • If "Max weekly emails" is empty New value is 1, 4 or 7, depending or where you want to start
      • Else Do Nothing
    2. Change Score - Score is "Weekly email counter, Change is =0

    Also run the same Change data value flow steps on your whole database to initialize it.

    SC2:

    • Smart List:
      • Trigger "email is delivered" - constraint : email contains (M)  // Fires only on non operational emails
    • Flow:
      1. Change score : "Weekly email counter", Change: +1
      2. Change data value - Choice:
        • If Weekly email counter is 1, "Counter start date" new value is {{system.datetime}}
        • Else do nothing

    SC3:

    • Smart List:
      • Trigger Score is changed, Score "Weekly email counter"
      • Filter: member of smart list IN "Max email reached"
    • Flow:
      1. Change data value - Attribute is "Marketing Suspended", new value is "true"
      2. Add to list List is "Suspended leads"
      3. Wait until "Counter start date" + 7 days
      4. Change data value - Attribute is "Marketing Suspended", new value is "false"
      5. Change data value - Attribute is "Counter start date", new value is NULL
      6. Change Score - Score is "Weekly email counter, Change is =0

    Note that these types of triggers (email is delivered, score is changed) are resource consuming and will slow down your Marketo instance if your database.

    -Greg

    View solution in original post

    3 REPLIES 3
    Grégoire_Miche2
    Level 10

    Re: Email frequency in subscription centre

    Hi Carly,

    Indeed, you will need to create a frequency field to capture the info. But you will have to make the threshold a simple value, not an interval. Let call this field "Max weekly emails"

    I would combine this with a "Weekly email counter" field, type score, and a "Counter start date" field, type datetime.

    Then you will have to create a program with some elements, but before this, there is a point you need to address: you would need to differentiate operational emails from non operational emails, so that the counter is incremented only for non operational emails. This can only be done through the email naming convention. Let's say all operational emails contain the string "(O)" and all marketing email contain the string "(M)" in their name.

    In the program, you will need:

    A smart list

    Name it "Max email reached", combining "Weekly email counter" and their threshold:

    Advanced rules : (1 or 2) and (2 or 4) and (5 or 6)

    Filters:

    1. Max weekly emails is 1
    2. Weekly email counter is 1
    3. Max weekly emails is 4
    4. Weekly email counter is 4
    5. Max weekly emails is 7
    6. Weekly email counter is 7

    A static list.

    Name it "Suspended leads" this will serve on smart lists all around the database if you need to exclude them from targeting

    Some smart campaigns

    SC1:

    • Smart list:
      • Trigger: lead is created
    • Flow
      1. Change data value- Choices:
        • If "Max weekly emails" is empty New value is 1, 4 or 7, depending or where you want to start
        • Else Do Nothing
      2. Change Score - Score is "Weekly email counter, Change is =0

      Also run the same Change data value flow steps on your whole database to initialize it.

      SC2:

      • Smart List:
        • Trigger "email is delivered" - constraint : email contains (M)  // Fires only on non operational emails
      • Flow:
        1. Change score : "Weekly email counter", Change: +1
        2. Change data value - Choice:
          • If Weekly email counter is 1, "Counter start date" new value is {{system.datetime}}
          • Else do nothing

      SC3:

      • Smart List:
        • Trigger Score is changed, Score "Weekly email counter"
        • Filter: member of smart list IN "Max email reached"
      • Flow:
        1. Change data value - Attribute is "Marketing Suspended", new value is "true"
        2. Add to list List is "Suspended leads"
        3. Wait until "Counter start date" + 7 days
        4. Change data value - Attribute is "Marketing Suspended", new value is "false"
        5. Change data value - Attribute is "Counter start date", new value is NULL
        6. Change Score - Score is "Weekly email counter, Change is =0

      Note that these types of triggers (email is delivered, score is changed) are resource consuming and will slow down your Marketo instance if your database.

      -Greg

      Anonymous
      Not applicable

      Re: Email frequency in subscription centre

      Thanks Greg for the comprehensive feedback - this is so helpful.

      Grégoire_Miche2
      Level 10

      Re: Email frequency in subscription centre

      Slightly edited the smart campaign flow steps to streamline them a bit.