Mailchimp question/issue

With the Mailchimp integration, is the double opt-in required?
Even when I disable this in the Mailchimp settings the double opt-in email is still sent out and the user is not subscribed to the list in Mailchimp until it is actioned.

However, in Treepl, the user is marked as being subscribed even before actioning the double opt-in.

Are we able to disable double opt-in?
Can the subscription status be set/synced based on the Mailchimp status - not just the form submission?

Any thoughts on this one @vlad.z, @alex.n?

Thanks @Adam.Wilson
We will look into the issue on one of the grooming meetings and once we found a solution we will add it to a sprint. You also can speed up this feature if it will be set as public backlog request.

As far as I remember - the double opt-in is required on mailchimp but we need to re-check it to be sure.

Thanks @vlad.z.
From what I can tell, the Double Opt-in is not required via the API and it looks like you can set the contacts ā€œstatusā€ to ā€œsubscribedā€ instead of ā€œpendingā€ - there doesnā€™t seem to be anything about the Double Opt-in being required here:
See here for reference:

This is really effecting at least one of my clients as it seems very few contacts are following through with the double opt-in (or may not even be receiving it - or itā€™s sent to spam/junk, etcā€¦)

1 Like

Just to addā€¦ I did a test POST to my clients Mailchimp account using the Mailchimp API Playground (https://us1.api.mailchimp.com/playground/) and was able to fully subscribe a new contact to a list via the list/member API.
No double opt-in required.

1 Like

Hey @Peter-Schmidt, could you consider adding this one the Backlog?
So in summary:

Mailchimp Double Opt-in and Subscription Status
Option to disable the forced double opt-in when subscribing to a list via a form.
And sync the subscription status of CRM contacts to Mailchimp contacts.

1 Like

Sorry that I missed this one @Adam.Wilson :slight_smile:

Added here: https://treepl.co/public-backlog-state/request/mailchimp-double-opt-in-and-subscription-status

ā€“ Let me know if you want me to add further details :slight_smile:
Thanks for writing it up :+1:

No problem @Peter-Schmidt. Thanks!

What about existing email lists? I have several clients with large email lists that were gathered from email opt-ins. I already know if I import them into Mailchimp they will not be double-opted in and will not be able to send email. Does the Mailchimp API allow for importing existing opt-in lists? When I looked at it I couldnā€™t see where to do that on the Treepl side?

Hi @rachelward.
Currently we canā€™t import contacts into Treepl and set a mailing list subscription status.
You can set imported contacts as ā€˜opted-inā€™ during the import process in Mailchimp though, so you can add them to Mailchimp for sending to.

Then, what Iā€™d do, is create a new mailing list in Treepl admin (which will get synced to Mailchimp).
Then merge your imported Mailchimp contacts into the new synced mailing list (Audience).
From then on, Treepl contacts/subscriptions will be synced to your Mailchimp Audience (within the limits of the current Treepl integration/sync that is).

Re-opening this topic for the new backlog review process:
@Peter-Schmidt
@vlad.z

Referring to the existing backlog item here:
Mailchimp Full CRM Sync, Existing Mailing List Sync, Double Opt-in And Subscription Status

And combining this backlog item:
WYSIWYG interface In Mailchimp Integration

So, in summary of these existing items:

  • Sync all/relevant CRM data to MailChimp (particularly Phone number)
  • Disable forced double opt-in (see above for notes on this)
  • Enable MailChimp ā€œTagsā€ and ā€œGroupsā€ during the subscribe process.
  • Enable WYSIWYG editor for the Treepl email campaign editor.

FURTHER DETAILS

Connectivity to online marketing and communication tools is paramount to modern websites and eMail marketing is still one of the most cost-effective and powerful marketing/communication mediums.
It can be used in so many different ways and has the potential to automate and customise many aspects of website content management and personalisation.

BC was onto something great with built-in email marketing that could utilise CMS data for campaign content as well as how and who the campaigns were sent to - but of course, it never reached its potential in BC.

I think MailChimp is a good choice due to its market position, feature set, reasonable costs, useability and seemingly good range of APIs, but we need a good integration for it to be really useful.
With access to Treepl data and Liquid it could be a massively powerful feature.

I try to encourage all my clients to utilise email marketing in some form or another, but it needs to be easy for them. If itā€™s easy they use it - if they use it itā€™ll help strengthen their business - if their business is strong they will be more likely to stay around and on Treepl CMS :slight_smile:

I believe there are 2 critical areas to make this work well and 2 bonus areas.

  • 1: Contact/Subscription Management

  • 2: Campaign Content Management

  • BONUS 1: Automation and Workflow Triggers

  • BONUS 2: Campaign Stats Dashboard

Iā€™ll explore these in more detail below;

(1) Contact/Subscription Management

The ability to manage who receives your emails is critical. And while there is good control for this within Mailchimp there is a lot of potential missed from contact information within the website CRM, user interactions and behaviours (assuming the CRM will be opened up).

Itā€™s clear to see this potential with Mailchimpā€™s integrations with other ecommerce platforms, allowing the ability to send abandoned cart emails, follow-up emails based on sales activity, product interest, etc.

Having this kind of power with customer activity throughout your whole site would be huge.

Obviously how we track and store customer data and activity is another issue, but at a basic level I think this would start with ā€˜tagsā€™ (in conjunction with mailing lists).

Mailchimp, along with many other email platforms, have shifted to a tagging/segmentation mentality over the use of mailing lists. Mailchimp recommend only having one mailing list (or ā€œAudienceā€ as they now call it) and then use segmentation techniques to tag and group contacts for further email targeting.

If you can, itā€™s best to have one audience that you organize with tags, groups, or segments, rather than maintain multiple audiences in your account. Mailchimp treats all the audiences in your account separately, and billing is based on the total number of subscribed contacts across all your audiences. If you have duplicate contacts across audiences, having one audience could save you money. One audience is also easier to manage and keep clean.

At minimum we need to be able to sync with the tagging system in Mailchimp.

The mailing list subscription we already have integrated sets the opt-in status (and syncs the contact with Mailchimp), while tagging extends the CRM for other uses (not only for Mailchimp, but admin filtering and front-end Liquid usage as well). So tagging should be available for all CRM contacts not just those synced with Mailchimp via a mailing list subscription.

Some examples:

  • Sign-up or Enquiry forms with ā€˜Tagā€™ fields to save (and even create) tags against a CRM record.
  • A logged in user might perform any other action (ie: product purchase, page view, button click, etcā€¦) which triggers a form submission (or API call) to set a ā€˜Tagā€™ against that user.
  • Manual tagging via the admin.

With these tags synced with Mailchimp we can then use Mailchimpā€™s segmenting features to further control how campaigns are sent.

Obviously, a two-way sync is desirable to keep contact records consistent - and even pull in other/new records from Mailchimp, if people are using other contact record sources with Mailchimp (Mailchimp sign-up forms, other integrations, etc).

Later, some filtering and segmentation tools within Treepl admin would be cool in order to bulk tag contacts based on Treepl data. But that can come later :slight_smile:

Possible API reference:

https://developer.mailchimp.com/documentation/mailchimp/reference/lists/members/

https://developer.mailchimp.com/documentation/mailchimp/reference/lists/segments/

PS: To extend the CRM capabilities, it would be cool to make the CRM a nested custom module. This way we can just make it what we want and have all the same methods for using that data (front-end and back-end). ā€˜Companyā€™ record would be the top level module/group while ā€˜Contactsā€™ are the nested module.

If/when nested items can be assigned to multiple top level groups, we could have Contacts belonging to multiple Company records as well.
Total freedom and flexibility for the CRM :slight_smile:

(2) Campaign Content Management

I donā€™t think it would be feasible to build a full email campaign builder that wouldnā€™t limit what Mailchimpā€™s editor has available. However, what we do need is the ability to push CMS/CRM data/layouts to a Mailchimp campaign/template - so that we can utilise the power of the site content and customer personalisation in emails.

Iā€™m not sure what APIs are available here, but my initial thoughts were that, in Treepl admin, we select from a list of existing Mailchimp campaigns (or perhaps generate a new one via API if feasible). Then we ā€˜buildā€™ content sections (ie: multiple WYSIWYG fields) using Liquid, component modules, HTML, etc. which are saved, rendered and pushed to the Mailchimp campaign as part of its contents (as individual HTML blocks perhaps), or if possible, data merge tags/block which can be inserted into the campaign.

Ideally, these blocks of content get auto-synced to the campaign again just before time of scheduled sending so that the data is up-to-date.

So in this case, we are relying on using Mailchimp as the main editor and main way of managing campaigns - which I think is better in the long run - and using Treepl as a ā€˜connectorā€™ of data/content if needed.

Failing the possibility of the above, Iā€™d say we need some basic WYSIWYG editor that can work, in full, with a Mailchimp campaign/template without destroying itā€™s editability when back in Mailchimp - and that can support Liquid :slight_smile:

Possible API reference:

https://developer.mailchimp.com/documentation/mailchimp/reference/campaigns/

https://developer.mailchimp.com/documentation/mailchimp/reference/campaigns/content/

(BONUS 1) Automation and Workflow Triggers

It would be cool to have some advanced options for triggering Mailchimp Automations/Workflows.

I think if we have the ability to tag contacts, both from admin and front-end, as outlined above, then we should be able to utilise Mailchimpā€™s Automation, but it might also be nice to explore the API triggered automation/workflows (and ecommerce workflows now that ecommerce is available).

Further info on this:

Possible API reference:

https://developer.mailchimp.com/documentation/mailchimp/reference/automations/

(BONUS 2) Campaign Stats Dashboard

Just as a nice feature, having a Mailchimp campaign statistics dashboard in Treepl could be cool.

Probably showing recent campaign activity and/or subscriber activity.

In addition to pulling these stats into Treepl it would be awesome to be able to use statistical data from Mailchimp campaigns to dynamically control website content.

For example, a logged in user will see content specific to certain links they click on in the last email campaign, or content related to an email campaign they recently openedā€¦

For non logged in users and general site visitor, you could use Mailchimp campaign stats to dynamically show website content based on the most popular email links clicked, or any other insight from subscribers interests or user patterns.

Possible API reference:

https://developer.mailchimp.com/documentation/mailchimp/reference/reports/

Thank you, and open to feedbackā€¦
PS: technically, would this be a BC equivalent feature?

2 Likes

@Adam.Wilson Good job writing-up and fleshing-out this detailed feature requestā€¦

May I make one suggestions. I suggest we not combine these two items. Syncing of data to mailchimp from the CRM is a high priority. So that our clients can use mailchimp to build their campaigns. The mailchimp email builder is excellent and I really think it would be a duplication of effort for the treepl team to work on it in the near future. There are few use cases where I would want our clients building emails, or myself want to build custom email templates, in the treepl interface when mailchimp has their excellend drag and drop interface. What I do want to be able to do is bull in all the data from the CMS and use it to segment, mail merge data into MC campaigns. My 2 c.

In summary I would be more inclined to vote on the MC data integration in the near term.

@Alex_B_Centrifuge yes I agree. Breaking this up into 2 requests is probably the best approach and I assumed thatā€™s how the Treepl team would approach it once reviewed. I just wanted to lump this all together to get a better overall picture of the end goal.

Regarding the WYSIWYG, likewise, I donā€™t think itā€™s feasible to try and rebuild an email campaign builder to replace Mailchimpā€™s editor - but there would have to be some sort of interface in order to construct CMS data and push it to a MailChimp template. Enabling WYSIWYG just gives more flexibilityā€¦ or is it more dangerous? should it be locked to just code view???
How might this work otherwise? Iā€™m not sure.

@Adam.Wilson Iā€™ve spent quite a bit of time thinking about how the WYSIWYG email editor that integrates with MC might work and I just canā€™t crack it. Youā€™ve got some great ideas and you raise some valid points. I think the answer to whether or not itā€™s possible to create something like you described needs to be answered by somebody looking closely into how MC and the API work. I think thatā€™s probably a @vlad.z and team question.

My gut take is that it would be super complicated to merge website generated html and liquid into MC, and I would guess that itā€™s not feasible.

My initial thought on a WYSIWYG email editor in treepl was that it shouldnā€™t be included. It would just cause too many issues. People have a pretty high expectation of mass emails. I know personally if itā€™s not responsive (ideally dark mode enabled) then Iā€™m not looking at it unless I REAAAAALLLLYYY need the info.

That being said I think there is a use case where somebody just needs to send out simple mass emails to a group (think soccer team, club etc) where the capability is to just send out simple emails to a group. So I think there is an argument to be made there. That being said, since MC account is required anyway to send out group emails at this point, there is frankly little advantage to allowing email authoring through the interface.

If there was a way of sending group emails directly from treepl without a MC account, I could see a stronger case for a simple WYSIWYG email editor in the treepl admin.

Originally, I did want a duplicate of of BC email campigns in treepl, but frankly my experience is that good html emails are time consuming to build and even customize and most clients arenā€™t interested in the benefit they might get. Ultimately I think they would be better served by just using MC.

Iā€™m conflicted on this one. Open to hearing feedback, input.

Yeah, it seems like a tricky issue and I agree custom building HTML campaigns is far from ideal. But if the option was there, if we needed it, it would be good.
Currently, with the editor in place now you can push a complete, custom built, email campaign to MC, so if that editor supported Liquid weā€™d at least have that functionality in a raw sense. And templates/layouts could be made to make this a little easier.

But having this would be a huge point of difference for the platform and a very powerful feature.
Perhaps the answer is to integrate with a different sending service, like SendGrid or perhaps something Amazon offersā€¦? but I think MC brings a lot of other benefits with itā€¦ but then again, MC seem to be moving into the web building space too, so maybe not!?

Agreed, it could be a differentiation for those who are focused on email marketing.

@alex Iā€™d love to hear back from the treepl team on the feasibility of what Adam is proposing, and which options would be lower/higher on the development side.Is it even possible to inject custom HTML from treepl into a an email campaign, and if so is it possible to do that on a per email basis (i.e. inject customer specific liquid)? If not, what are the options here?

Hi @Alex_B_Centrifuge

It is possible to extend the campaign content parsing functionality so it will parse liquid each time:

  • The admin user clicks save.
    • Content with liquid would be saved to the admin and parsed content will be saved to the mailchimp
  • The ā€œsendā€ campaign action is triggered
    • The parsed content will be saved to the mailchimp first and then ā€œsendā€ action will be triggered.

Most of those features seem to be feasible.
But in order to be sure it needs to be groomed and investigated via the grooming sessions.
So once we review the appropriate public backlog request and it will get some votes then we will schedule it to the grooming session.

3 Likes

This looks interesting. I havenā€™t used it but if it does what it says it may be part of the solution https://mjml.io/api

" The only API to provide responsive email as a service

Programmatically build responsive emails right in your app by integrating the MJML REST API, itā€™s free to use!"

That does look interesting @Alex_B_Centrifuge. And Mailjet (which this is made by looks good too). Seem like they use Liquid (or a very similar templating language) for their dynamic data too.
But maybe this is something for another discussion/thread?
Is looking at an alternative email service on the cards or are we too invested in MailChimp?

In terms of the email building, Iā€™ve always preferred Zurbs solution as it seems more robust and customisable and Iā€™m a Foundation guy :slight_smile: (not that I build a lot of custom emails though): Foundation for Emails
Although, it doesnā€™t have an API like MJML does and the project hasnā€™t been updated for some time.

1 Like

The backlog item was pushed to ā€œUnder Reviewā€ state.
Once it passes the grooming brief session Iā€™ll get back here with the summary to confirm the description.

3 Likes