skip to Main Content

How To Collect Emails in Messenger With ManyChat

Max van Collenburg By Max van Collenburg

In this guide, you’ll learn the exact strategy I’m using to capture 80,46% of my subscriber’s email addresses in Facebook Messenger with ManyChat.

It’s easy to set up and it only requires one click from your subscriber to join your email list.

Let’s dive in!

I’ll first show you how to set it up in ManyChat and then how you can add someone to your Email Service Provider & deliver your lead magnet after they give their email address.

Setting up an email custom field in ManyChat

To store the email address in the subscriber’s profile we first need to create a custom field.

Go to Settings » Custom Fields » New User Field.

Create custom field in ManyChat

When you click ‘New User Field’ you’ll see the screen below.

Name it email, set the type to text and if you like you can also give it a fancy description.

Crete new user field

When you go over to a random profile under audience you’ll now see “Email” under Custom Fields:

This is where we’re going to store the email address after we’ve asked for it.

That’s it!


Creating the email capture flow

Ok, this is the fun part.

We’re now going to ask for someone’s email address in exchange for a lead magnet.

The conversation in Messenger will look like this:

Email capture in Messenger example

As you see the subscriber only has to click one quick reply to give their email address.

(The email address that will be shown is the email that they signed up with for Facebook)

To achieve this we have to create a little flow inside ManyChat.

Here’s a zoomed out view of the flow we’re going to build:

Email capture flow ManyChat

(get the link to import this flow here)

It works like this:

  1. Show a visual teaser of the lead magnet we’re giving away.
  2. Describe why it would be useful for them.
  3. Set the expectation you’re going to ask for an email address.
  4. Ask for the email address.
  5. Tell them to check their spam folder if they can’t find it.

Let me explain you each step.

I like to tease people a bit with what they’re about to get.

That’s why I show a little GIF of the ebook I’m giving away.

You can insert GIFs by inserting an image block.

ManyChat flow: visual teaser

Directly after that, we tell the subscriber what it is and how it will help them.

I’m using conditional content to show different messages to different people, which makes it more relevant to them.

Reason why they should give their email address

Then, we set the expectation that we’re going to ask for an email address.

This is an important step most Messenger bot builders don’t think about.

It’s good for two reasons;
1) We’re still giving people a way out. Otherwise, they’ll be stuck in the email capture part.
2) When the subscribers click yes, they do a micro-commitment because they tell themselves that they want it which makes it much more likely they’ll actually give their email address.

This is just a simple yes or no question where we ask if it’s okay if we send the lead magnet by email.

Set the expectation that you ask for an email address

After someone clicks ‘yes’ we quickly check with a condition if we by any chance don’t have the email address already.

(would be silly to ask for it again, right?)

Condition ManyChat: check if already have email address

If you already captured the subscriber’s email address you can just send the download over to them, which you’ll learn how to do in the next step.

But if they didn’t give their email address yet, we have to ask for it first and store it to the custom field we created at the beginning of this guide.

You create a user input field, set the Reply Type to ‘Email’ and save the response to your email custom field.

Email capture ManyChat example

After you’ve created all this, you preview the flow and see if the email address is successfully stored into the subscriber’s profile.

Check subscriber profile for email address


Adding contacts to your Email Service Provider

After you’ve captured an email address in Facebook Messenger you need to add this email address to your Email Service Provider.

Depending on which one you’re using these steps might be slightly different.

But most tools work pretty similarly.

I’ll show you the exact steps for ActiveCampaign, but the process is very similar if you’re using another tool like Infusionsoft, Drip, ConvertKit or MailChimp.

To make the connection between ManyChat and ActiveCampaign we’re going to need a tool called Integromat.

(Integromat is free up to 1000 tasks)

It’s pretty similar to Zapier, in case you’re familiar with that, but it’s way more affordable.

With Integromat you can connect all kinds of tools without any programming knowledge.

Really cool stuff!

So the first thing we need to do is to create a new scenario.

Create a scenario in Integromat

You’ll see the screen below, just click “Skip”.

Skip integrations

The first step is going to be a webhook.

Search for “Webhooks”, click it, click “Custom webhook”, click “Add’, give it a name, click “Save” and copy the URL you see there.

Integromat: create a webhook

We then go back to the flow in ManyChat and add an “External Request” action like I’m doing below.

You need to add this directly after the subscriber gave their email address.

It’s also possible to use the “Trigger Integromat” action, but I like the External Request better because it’s more flexible.

ManyChat: add external request

After you’ve done that, go back to Integromat.

If you previewed the external request you’ll see a little notification that says that the data structure was successfully determined.

That’s important because this way Integromat can use all the little pieces of information that ManyChat gave.

If you don’t see it, click “Re-determine data structure” and try to preview the External request again.

Integromat: succesfully determined

We’re then going to add another step to the scenario.

Click “Add another module”

Add another module

Search for ActiveCampaign & click it.

Integromat: select ActiveCampaign

You’ll then see a long list of cool possibilities.

Forget about the rest for now and just click “Create/Update a contact”.

Create or update contact

And then use the data from the webhook to fill in the fields.

Integromat: fill in the fields

Then scroll down and select the list you want to subscribe this person to.

This is also the step where you could add tags to the contact if you like.

Select an email list

That’s it!

Click the save button at the bottom.

(I forget this so often, lol)

Save the scenario

And then click “Run once” & preview the flow in Messenger to test if everything is working.


Delivering your lead magnet

One step left.

You now know how to capture an email address in Messenger and how to add it to ActiveCampaign.

But how do you send the lead magnet your promised?


We’ve to create a simple automation to deliver it 🙃

Lead magnet delivery activecampaign

It’s sending the email below and then ends the automation.

Example email for lead magnet delivery

Easy hu? 😛

We’re almost done!

The only thing left is that we have to add someone automatically to this automation.

To do that we go back to Integromat and add another ActiveCampaign module.

This time we’re using “Manage contact in the automation”.

Manage contact in automation

And then we’re using the email address from the webhook module again, select the right automation and set it to “add”.

module to deliver lead magnet



Cool right?

This way you can grow your email list superduper easy by simply asking your subscribers for their email address directly inside Messenger.

It’s very user-friendly and because of that highly effective.

Any questions? Ask them below 🙃

This Post Has 12 Comments
  1. Lea J Smith says:

    Hi Max,

    Thank you so much for the step by step instructions on how to add a custom field.

    Can you help with the process when using SendPulse for email?

    Thank you!
    Lea <
    Pet Pro/Entrepreneur

    1. Max van Collenburg says:

      Hey Lea! Thanks, glad you like it. I don’t have any experience with SendPulse, sorry.

  2. Ales Kalina says:

    Hello Max, big thanks for your detailed manual

    1. Max van Collenburg says:

      You’re welcome! 😄

  3. Hi Max, I’m so glad I found you! You deliver tons of advice I was looking for. However, I found it a bit difficult to use Clickfunnels Actionetics in this scenario. Is there a way to send all the useful information (like custom fields: gender, tags, and so on)? Thanks for the response!

    1. Max van Collenburg says:

      I’ve never used Clickfunnels, so I can’t help you with that. Sorry.

  4. in your example, you have the email address pre-filled in the button, so the user just has to click it to confirm it. How did you get the email address to pre-populate for that field?

    1. Max van Collenburg says:

      Hey Simon! When you set the Reply Type of the user input to Email, Facebook will automatically pre-populate the quick reply with the email address that’s associated with that person’s account.

  5. Great tutorial. I had some issues integrating it with Get Response but its all sorted out now!

    Kudos Brother.

    1. Max van Collenburg says:

      Happy to hear you got it to work! 😄

  6. Dariusch Zadeh says:

    Hey Max,

    great content thank you very much.

    I have a question, I used a part of you E-mail Opt In flow.
    If the consumer types in a wrong email address like my flow tells him to check the wrong email and correct it.

    Unfortunately, the E-mail address saved into the custom field will be the wrong first one an not the corrected second one.

    Would be great if you could help me out.


    1. Max van Collenburg says:

      Hey Dari! That’s weird!

      Maybe try to insert an action that manually clears the email custom field after a subscriber gave one that’s invalid.

      Or you could try to use the new email system field because that field can only store valid email formats.

      Hope that helps!

Leave a Reply

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