Get the Latest

News, tips and tricks

Export ActiveCampaign Analytics Data with

STEP 1: Setup a "Hook" in & configure Amplitude

Login to, and navigate to the "hooks" menu item.

Create a new hook.

Give your hook a name. As best practice, I like to include a prefix that tells me where the incoming webhook is coming from. In this case it is coming from ActiveCampaign, so lets name our webhook "[ActiveCampaign] Email Opens"

Make sure to include a description of where the hook is coming from as well. Be specific, so that it is easy to track down the generating webhook if there is a problem.

Here's an example of what that could look like:

"This webhook is generated from the settings → developer → webhooks menu of the ActiveCampaign dashboard, named "[BigPicture] Email Opens" and is triggered on email open."

Notice that I am going to name the webhook in ActiveCampaign "[BigPicture] Email Opens" since the webhook is sending data to BigPicture.

So to summarize our flow and naming scheme:

1) ActiveCampaign "Send" Webhook: "[BigPicture] Email Opens"
2) BigPicture "Catch" Webhook: "[ActiveCampaign] Email Opens"

Once you click "Next" You will be given a unique url for your "Catch" webhook. press the button to copy this to your clipboard.

Step 2: Paste the "hook" url in ActiveCampaign settings

Next, we need to create the "send" webhook in our ActiveCampaign account. Login to ActiveCampaign and navigate to the manage webhooks page of the developer settings.

Add a new webhook, and paste the URL you copied to your clipboard in Step 1.

Give your webhook a name. In this tutorial we are using the name "[BigPicture] Email Open". I am prefixing the webhook name with "[BigPicture]" since that is where we are sending the data, and I want to be able to track it down.

Since we want to export Email Open events to Amplitude, make sure the "Campaign Opened" box is checked. In the bottom section, make sure that all of the "Initialize From" boxes are checked. is expecting some sample data to log. Click the "Send Sample Data" button to send a sample webhook payload.

If you see a green success bar at the top, life is good! Head back over to to customize the payload.

Step 3: Configure the data transform

Once you have sent sample data to, you are able to transform it before sending it to Amplitude. This is great if you want to leave some detail out to remove cruft or to prevent PII (personally identifiable information) from being sent. integrates with ActiveCampaign (for sending tracking events in), Amplitude, or many other integrations via Segment. Choose Amplitude for this tutorial, to bring up the data transform view. uses a mustache-like templating language to transform the payload. It is slightly technical, but very easy to learn.

Leave the Event property alone to fill it with the name of the event. In our case this will be "[ActiveCampaign] Email Open".

In order to tell Amplitude who the user is, under User ID we'll put a reference to the contact's email address. We use the format {{ contact[email] }} to point to location of the email value on the left.

Press "Test Output" to see what the results should be.

We could stop here, but let's add some additional "event properties" so that we can do a better job interpreting the results.

Fill the lower text box with additional event property information you want to include when sending the data to Amplitude. For now, we will fill it with just the Campaign ID like this:

  "Campaign ID" : "{{ campaign[id] }}"

Awesome! You are all set!

Step 4: Publish the "hook" in and ActiveCampaign

If everything looks good "enable" the integration, click "Save" in, and then "back"

You still aren't done though. Enable the webhook, click save, and click back again.

You are ready to start sending data. In ActiveCampaign, click "Add" to save your webhook.

You're all set! Keep an eye on Amplitude, and the data should start to roll in!