I have the "Mailchimp & CiviCRM" integration (v2.0) installed, and have created a Smart Group containing current mailable members which I've linked with a test MailChimp group. I've activated the Push job, but not the Pull job, as from what I understand I want CiviCRM to be the source of truth and push to MailChimp. The push seems to work, but the description of the module here: https://vedaconsulting.co.uk/civicrm-mailchimp seems to indicate that it will also pull back to CiviCRM when a user or admin unsubscribes.

This has not been the case in my testing -- when I unsubscribe my own user through the admin screen on MC, the Smart Group never gets updated. On the next scheduled push, the user shows up in MC as Subscribed again. I've double checked the Webhook settings, and they are set as shown in the above link. What am I doing wrong -- am I misunderstanding the push/pull, and I need to activate both jobs? Will this work correctly, so that individual unsubscribes are pulled from MC immediately, but everything else comes from Civi?

1 Answer 1


To clarify, the following activity on MailChimp is communicated immediately (within several seconds) via WebHook (this does not happen during the push sync):

  • Any users that unsubscribe themselves in MailChimp will have the Do not email flag set in their CiviCRM Communication Preferences
  • If a contact is removed from a group in MailChimp, then the contact is also removed from the corresponding group in CiviCRM
  • A new contact who subscribes directly via MailChimp will be added to CiviCRM as a contact within the corresponding mailing list group(s) that they subscribed to
  • Changes to contact names in MailChimp will be updated in the corresponding contact record in CiviCRM

If you have completed webhook the steps listed in the documentation, make sure you resubscribe yourself directly on MailChimp first, then:

  1. Verify whether the "Mailchimp: Allow Webhook Posts" permission has been toggled for the Anonymous User role:
  1. Navigate to Administer > Users and Permissions > Permissions (Access Control)
  2. Click on the "[CMS Name] Access Control" hyperlink (e.g. "Drupal Access Control")
  3. Use CTRL+F to find "Webhook" > toggle the permission for the Anonymous user role if it is not toggled
  4. Click the Save button
  1. Confirm MailChimp Group Settings:
    1. If using the Membership Sync, toggle the option to "Ensure list's webhook settings are correct at MailChimp when saved" enter image description here
    2. If using the Interest Sync, toggle the option of "Subscribers are able to update this grouping using MailChimp" enter image description here

If you made any changes to the above settings, test again by removing yourself from a group and/or unsubscribe yourself directly from MailChimp, then navigate to your contact record in CiviCRM (or refresh after a couple of seconds if you are already there):

  1. If you removed yourself from a group, then click on your Groups tab to see that you were removed by API from the corresponding group in Civi
  2. If you unsubscribed yourself entirely, then the DO NOT EMAIL flag should be toggled on your contact record

Hope this helps!

  • Thanks for the thorough response! I double checked all these settings (Mailchimp side, permissions, and group settings), and the user after unsubscribing, and 'Do Not Mail' is not set nor is it removed from the Smart Group. I also looked at the webserver access log, and right as I make the change in MailChimp I see a POST coming into the /mailchimp/webhook URL with a response code of 200. Drupal logs seem to indicate things went well, and the JSON passed contains the correct email address, but I still don't see 'Do not email' set under the user's communication preferences.
    – roberttdev
    Oct 31, 2018 at 18:26
  • If it helps, we are on Civi 4.4.19.
    – roberttdev
    Oct 31, 2018 at 18:27
  • 1
    Hmmmm.... I think the more technical people of this forum will need to respond on this - since images can't be included in responses (at least I couldn't figure out how to include them), I think you would be better off posting a new question and including a link to this one so that they know what has already been covered - sorry I couldn't be of more help on this! Oct 31, 2018 at 20:53

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.