How To Add Mailchimp Groups To The Bloom Email Opt-In Plugin Tutorial by Pee-Aye Creative

How To Add Mailchimp Groups To The Bloom Email Opt-In Plugin

In this Divi tutorial, you will learn how to easily add Mailchimp groups to the Bloom Opt-In Plugin. Now you can segment and personalize your audience!
Categories: Featured Tutorials

Step 1

In your Mailchimp account, go to “Audience”. Once you get to the Lists page, decide which list you want to add groups to and select it. Click on “View Contacts.”

Step 2

Under “Manage Contacts” and click on “Groups.” Then click the button to “Create Groups.”

Add Mailchimp groups to the Bloom optin plugin

Next, you will see a question, “How should we show group options on your signup form?” Go ahead and leave the first option selected since this will work best and is the option I’m going to be using in this tutorial.

Add Mailchimp groups to the Bloom optin plugin

First, enter a name for the group category.

Under the category, enter at least one group name. Three come up by default, but you can add or remove them.
Hit the save button.

Step 3

Before we jump into Bloom, we need to double-check on something to verify the fields are showing correctly and to help you understand what’s going on here.

Once again in the audience menu, click on “Signup Forms.” Select the first one called “Form Builder.” Here you will see your form with the fields you chose in step 2 and the groups from step 3.

You will notice the group fields are visible by default. That is very important, and the MUST BE VISIBLE here in Mailchimp (we will hide this later with CSS on your website).

How to use Mailchimp groups with the Bloom optin plugin

Step 4

Go to your website and go to Bloom>Email Accounts. The reason you are going here first is so that you can refresh your connection between Mailchimp and your website since you have added the group in Mailchimp.

How To Add Mailchimp Groups To The Bloom Email Opt-In Plugin

Step 5

If you haven’t already, create a new popup style option in Bloom. The most important part here is adding the custom fields. So first of all, go into the optin design settings and toggle on the button to enable “Custom Fields.” 

Enable Custom Fields in the Bloom Option Plugin

Create a new custom field. In the “Field” dropdown, choose the group category that we set up in step 2.

Also be sure to select and check the box beside the “Options,” since this is the actual Mailchimp group and it needs to be selected so that subscribers are automatically added to the group.

Adding a custom field in Bloom for Mailchimp groups

Step 6

Now once you finish up the other design settings for your Bloom opt-in, we are ready to go! Let’s go take a look and see if the custom field shows up.

showing the custom field in Bloom for Mailchimp groups

Step 7

Now let’s hide the custom field, since it is not necessary for the user to see that and could lead to confusion. We don’t want them unchecking the box, and we don’t really need them to know what group they are in. It also looks bad. So let’s get rid of it with some CSS. Copy and paste the following snippet into your Divi>Theme Options>Custom CSS Box.

.et_bloom_form_container .et_bloom_form_content .et_bloom_custom_field_options_wrapper {
display: none!important;

So then here you can see the CSS removed the custom field Mailchimp group. 

hide the mailchimp group custom field in Bloom

Step 8

As a final step, go back to Mailchimp and confirm everything is working. Submit a test subscriber with the Bloom popup form, and then after a minute or two it will show up perfectly in your Mailchimp audience. To double check the group feature is working (which is the point of this tutorial), go to “Groups” and you will see the test email address. That’s it, you’re all set! 

Contacts added to a Mailchimp group with Bloom
Last updated Jul 10, 2020 @ 7:53 pm

Please share this post!

Nelson Lee Miller (aka The Divi Teacher)

Nelson is the owner of Pee-Aye Creative Co in the beautiful state of Pennsylvania. He loves helping small businesses, exploring, building websites with Divi, and teaching others.
Divi Adventure Club Product And Course Membership by Pee Aye Creative

Become A Member!

Gain access to everything we offer!

Learn More

Leave A Response!

By commenting you agree to our Blog & YouTube Comments Policy


  1. Pawel Paluch

    Hi Nelson, great tutorial!
    One quick question – as this works perfectly is there a way to not disturb how to form look in mobile view as the Custom Hidden form takes a half of the pop up screen.
    So it looks really not professional.

      • Pawel Paluch

        Hi Nelson, i didn’t unfortunately.
        I will try to replicate the situation an show it to you.

        But long story short, while the block is display:none – the email address field is shortened like on your screen

        Desktop view could be OK with that, but when you display it on mobile – it is a disaster.

        So is there a way to have the fields hidden and the correct layout – pre-fielding ? 🙂

      • Helen Wakefield

        I’d assume you found a solution by now, but in case anyone else is wondering, also adding this CSS worked for me:

        .et_bloom_form_bottom .et_bloom_with_custom_fields .et_bloom_fields p {
          flex-basis: 100%;

      • Adam Willingham

        The code worked for me too — very helpful! But I had to add “!important” after “flex-basis: 100%” to get the code to work.

  2. Tracy Miller

    So, does this put this information next to the person’s name under the Tag column? That’s what I’m confused about. If “Tag” is available under a column, why use Groups? And what if you just want the subscriber to come in with a particular “Tag” assigned to them?

    • Nelson Lee Miller (aka The Divi Teacher)

      Hi Tracy,
      Historically, their was no support for Tags, and groups are the only method of any segmentation. However, if you have found some way to use Tags, please share 🙂

      • Tracy Miller

        Interesting. So it’s not in Divi, but when I’ve used the Mailchimp for WordPress Plugin (MC4WP) on other sites, it is hard-coded into the setup that you can assign a tag. I wish I could figure out how to do it with Divi!

      • Nelson Lee Miller (aka The Divi Teacher)

        I wish too, but don’t waste your time trying – the reason I made this tutorial was because it’s the only solution know to mankind to get any sort of segmentation. 🙂

  3. Claudia Klann

    Thank you for this tutorial.
    1. Everything worked up until actually being added to my mailchimp group or audience. When I tried the optin with a less-used email address of mine, it responded that an error occured with both attempts. Then I tried with my main email address which was accepted as subscribed. However, it is not on my Mailchimp list.
    2. These is a bit of CSS code in the Theme Option area that solved a problem from years ago. I don’t actually know if I still need it, but nervous to delete it. Can I simply add the new CSS code after the code already in there? If so, is there a limit to how many I add?
    3. Will this CSS code be used universally with all Bloom optins I create anywhere on my website? I have several different categories for optins.

    • Nelson Lee Miller (aka The Divi Teacher)

      Hi Claudio,
      Just an FYI, you can test signups by putting +1 and +2 and +3 etc after your name in your email. Unlimited fun! So just use etc. Anyhow, I’m not really sure, this tutorial is more for the Divi/Bloom connection rather than troubleshooting Mailchimp. Often it takes a few minutes for it to sync. Now sure if you have any luck now or not.

      As for the CSS, my snippet will remove the custom fields, so if your other forms have those custom fields like in this tutorial then yes, it will hide them everywhere. As for CSS, you can add as much CSS as you want there in Theme Options. Most likely it is not the same code.

  4. Melanie

    Hola Nelson, que tal? espero me puedas ayudar. Seguí tus pasos al pie de la letra y funcionó perfecto. Ahora bien, yo solía agregar un campo para que los suscriptores aceptaran las políticas de privacidad y también queda oculto con ese código… Como podría ajustar el código para que no me ocultara ese campo?

  5. Rebecca

    Does this update a excising subscriber on mailchimp or does it “only” add new ones?
    If he subscriber are on other groups in the same mailchimp list but not on this specific group for this pop up

      • Tom Roberts

        Nice post Nelson. I’ve done this successfully, however, it appears that it only add’s new subscribers. If I have a test subscriber that is in another group, it doesn’t seem to update that subscriber. Am I missing something here? Would appreciate your thoughts on this.

      • Nelson Lee Miller (aka The Divi Teacher)

        Hi Tom, I just tested it on my site and it auto updates. I don’t remember if there is a Mailchimp setting or not, but it works for me!

      • Greg Freeman

        Hi Tom. For the next person who comes across this. It does require a code change otherwise Bloom will not update Mailchimp correctly when an “existing subscriber” submits another opt-in form.

        So if you use the workaround for mailchimp groups described in this post, it only works the first time the subscriber opts in.

        This is not what you want.

        You want the groups the be updated each time.

        The files you need to change are


        In my tests, only the MailChimp.php file in the Divi theme folder itself was used, but I’m listing both here for completeness.

        The code you need to change is around line 323 and looks like this:

        if ( false !== stripos( $result, 'already a list member' ) ) {
           $result = $err;
           if ( $user = $this->get_subscriber( $list_id, $email ) ) {
              if ( 'subscribed' === $user['status'] ) {
                 $result = 'success';
              } else {
                 $this->prepare_request( implode( '/', array( $url, $user['id'] ) ), 'PUT', false, $args, true );
                 $result = parent::subscribe( $args, $url );

        This code checks if the user is already a list member and then ONLY sends an update request to mailchimp if the user is NOT subscribed at all. So group additions are not sent.

        Change it

               if ( false !== stripos( $result, 'already a list member' ) ) {
                 $result = $err;
                 if ( $user = $this->get_subscriber( $list_id, $email ) ) {
        // old code doesn't send the PUT request to mailchimp when custom fields are changed
        // we need to do this in order to use the mailchimp groups workaround:
        //          if ( 'subscribed' === $user['status'] ) {
        //             $result = 'success';
        //          } else {
        //             $this->prepare_request( implode( '/', array( $url, $user['id'] ) ), 'PUT', false, $args, true );
        //             $result = parent::subscribe( $args, $url );
        //          }
                        $this->prepare_request( implode( '/', array( $url, $user['id'] ) ), 'PUT', false, $args, true );
                        $result = parent::subscribe( $args, $url );
      • Greg Freeman

        My guess is if it worked for you without this change Tom, you were using an old version of the plugin before they implemented this check.

      • Darcy

        Hi Greg – I tried to use your code update and I got this from WordPress:
        Error message: syntax error, unexpected end of file, expecting function (T_FUNCTION) or const (T_CONST)

        Not sure what went wrong? Any advice? Not a developer! 😉

      • Alexia

        Hi Greg !
        Thanks a lot for your article ! I used you code and instead of updating the contact, it makes the contact completly disapear in Mailchimp.They’re not even in the Archive anymore ! Any idea what I could do ?

      • Tom Roberts

        Thanks for this Greg. This worked perfectly. A quick question that maybe you can provide some insight on. Would you update this file each time you update the Divi theme?

      • August


      • Garry


      • Dustin

        is it possible to change this in the child theme, so it is always updated?

  6. Joni

    thanks for taking the time to do this. Made it much easier!

  7. Mike Edwards

    Thanks for this post!! Your solution works perfectly! 😀

  8. Rana


    I recently used your code to help mask the groups on one opt in form on my Divi site but when I’ve created a second group I cannot get the code to mask the group name(s) on the opt in form.

    I have tried pasting the code in again on the Custom CSS box in Theme Options – but no success.

    Can you please help as it is now driving me crazy!

    Thank you!


      • Rana

        The popup is on the site now (you should have the URL) – Home Page and About – Do let me know if you find anything. And thank you.

  9. Vanessa

    Even though I have checked the box next to the email group in the custom field, it isn’t checking the box on the popup for that group. The groups are showing on the popup in the preview but it isn’t checking the group box that I need. Any ideas? I was able to hide the boxes with the code, just not check the group box. Thanks!

    • Hemant Gaba

      It’s very behavior as we are not able to replicate this on our end. Please provide the URL where you have placed the form so that we can check if it is working or not.


Submit a Comment

Your email address will not be published. Required fields are marked *

Asset 7

Shop Our Divi Products

Plugins • Courses • Templates

Visit The Shop

Divi Adventure Club Product And Course Membership by Pee Aye Creative

Become A Member!

Gain access to everything we offer!

Learn More

Divi Tutorials On YouTube

Our videos have views! Join subscribers and enjoy over video tutorials!

Visit Our Channel

Recent Posts

Pin It on Pinterest


Your Cart