Close (X)

Blog

Email Marketing, Business & Monkeys

Conditional (Dynamic) Content in MailChimp

May 14th, 2008 | by Ben

One of the new features going live this weekend in MailChimp is what we call “Smart Merge Tags.”

If you’re a MailChimp customer, you’re familiar with sticking the merge tag *|FNAME|* wherever you want the recipient’s first name to appear. Simple stuff.

But we’ve got a new set of merge tags that let you do some really smart stuff with logic and conditions and A/B test content…

Here’s a list of some of the new Smart Merge Tags in MailChimp, and what you can do with them.

Simple Stuff

*|TITLE:MERGE|* will upper-case the first letter of each word of the field, so that *|TITLE:FNAME|* *|TITLE:LNAME|* will convert “roGEr WATERS” into “Roger Waters”

*|UPPER:MERGE|* will upper-case all the letters in the field

*|LOWER:MERGE|* lower-cases all the letters

*|HTML:MERGE|* will print the field without escaping. So if you merge in HTML code like, <b>Bananas!</b> it’ll actually render like: Bananas! in your email.

Interest Groups

*|INTERESTED:Pizza,Pie|*
This will only show up if they’re interested in pizza or pie
*|END:INTERESTED|*

Note: the interested block right now can only do OR, not AND conditions.

A/B Splits

For A/B splits, there’s

*|GROUP:A|*
This will only show for group A
*|END:GROUP|*

(this lays the foundation for upcoming A/B tests on content)

Advanced Stuff: Conditions

Ever wanted to dynamically change content in your campaigns, based on the recipient?

In general,

*|IF:MERGE|*
something
*|ELSE:|*
something else
*|END:IF|*

For example, a sporting goods store could send a holiday promotion to its entire list, but swap out the offer by the recipient’s state:

*|IF:STATE|*
*|IF:STATE=CA|*
Save 20% on surf boards!
*|END:IF|*
*|IF:STATE=GA|*
Save 20% on Mountain Bikes!
*|END:IF|*
*|IF:STATE=FL|*
Save 40% on water skis!
*|END:IF|*
*|IF:STATE=CO|*
Save 50% on ski gear
*|END:IF|*
*|ELSE:|* Save 10% on everything in the store!
*|END:IF|*

More advanced conditions can be done like:

*|IF:MERGE != Bob|*
Your name’s not Bob!
*|END:IF|*
There’s also:
*|IFNOT:MERGE|* to do negative conditions.

And what if you want to start with “Dear *|FNAME|*” but not all your recipients have FNAME data (someone called about this yesterday)? You don’t want it to be blank. You can replace it with something generic:

*|IF:FNAME|*
Dear *|FNAME|*,
*|ELSE:|*
Dear Braves Fan,
*|END:IF|*

Spread the monkey love:
  • TwitThis
  • Digg
  • Facebook
  • del.icio.us
  • Reddit
  • StumbleUpon
  • description
  • Google
  • LinkedIn
  • Ma.gnolia
  • MisterWong
  • Netvouz
  • NewsVine
  • Slashdot
  • Technorati
  • YahooMyWeb
  • BlinkList
  • Design Float
  • Mixx
  • Pownce
  • Propeller
  • Webnews.de

6 Comments

    • HJH says:

      This is very, very nice. Now, can we combine these dynamic content tags with RSS merge tags? Like for filtering RSS articles/content by category ? This would open the door to showing selected RSS content on selected spots in a newsletter. Cheers, HJH

    • Jen & Rob says:

      This is awesome.. have done a lot with conditional content in the past with enterprise systems. If you need a beta tester let me know.

      Will things blow up if I nest conditional IF statements? Is there an ELSEIF function? How about STATE=CA,OR,WA ?

      Give an inch… :)

    • Jenn says:

      I used the TOC merge tag in our newsletter…however, it did not show up in a Yahoo email. Is there something I can do to fix this?

      This is awesome by the way…especially now that I could use it with a 2 column newsletter. Love it!

    • Stephen says:

      Are there more complicated conditions that can be tested for, and if so, what are they? For example, can I do *|IF:AGE>24|*, or even *|IF:(some function involving a number merge tag)=1|*?

Leave a Reply

* indicated required
http://www.mailchimp.com/nonrestrictiveocean.php