Formidable Forms → ActiveCampaign Integration Guide

I see this integration request constantly. You’ve got Formidable Forms collecting leads on your WordPress site, but they’re just sitting there in your WordPress dashboard while your sales team is working out of ActiveCampaign. Every manual export and import is a chance for leads to slip through the cracks — and in about 30% of the setups I audit, that’s exactly what’s happening.

The good news? Formidable Forms has solid webhook capabilities, and ActiveCampaign’s API plays nice with automation tools. The bad news is that most people mess up the field mapping or don’t handle duplicate contacts properly.

What You’ll Have Working By The End

Prerequisites

Zapier is the most reliable option here. I’ve seen the direct webhook approach work, but it breaks more often when either platform updates their API.

In Zapier, create a new Zap with Formidable Forms as the trigger and ActiveCampaign as the action:

Trigger Setup:

Action Setup:

Critical Field Mapping Notes:

Turn on the Zap and test it with a form submission.

Step 2: Configure Formidable Forms Webhooks (Direct API Approach)

If you want to skip Zapier and go direct, Formidable Pro supports webhooks. This requires more setup but gives you complete control.

In your Formidable form settings:

  1. Go to Settings → Actions & Notifications
  2. Click “Add” and select “Register User” action
  3. Set up the webhook:
Webhook URL: https://youraccountname.api-us1.com/api/3/contacts
Method: POST
Headers:
Api-Token: your-api-key-here
Content-Type: application/json

Webhook Payload:

{
  "contact": {
    "email": "[email]",
    "firstName": "[first_name]",
    "lastName": "[last_name]",
    "phone": "[phone]",
    "fieldValues": [
      {
        "field": "1",
        "value": "[custom_field_1]"
      }
    ]
  }
}

Replace the bracketed values with your actual Formidable field IDs. You can find these in the form builder — they’ll look like [id field_id="25"].

Add to List: After creating the contact, you need a second webhook to add them to a list:

{
  "contactList": {
    "list": "your-list-id",
    "contact": "contact-id-from-previous-response",
    "status": 1
  }
}

This is why I usually recommend Zapier — it handles the two-step process automatically.

Step 3: Set Up ActiveCampaign Custom Fields

Before your integration goes live, create any custom fields you’re collecting in ActiveCampaign:

  1. Go to Settings → Fields
  2. Create fields for each additional form field you’re capturing
  3. Note the field IDs — you’ll need these for direct API integration
  4. Set appropriate field types (text, number, dropdown, etc.)

Common Field Mappings I See:

Make sure the field types match what your form is collecting. A dropdown in Formidable should map to a dropdown in ActiveCampaign with identical options.

Step 4: Configure ActiveCampaign Automations

Once contacts are flowing in, set up automations to handle new leads:

  1. Create a new automation triggered by “Contact subscribes to list”
  2. Select the list where form submissions are added
  3. Add actions for your lead nurturing sequence:
    • Send welcome email
    • Assign to sales rep
    • Create deal record
    • Tag based on form responses

Pro tip: I always add a 5-minute delay before the first action. This gives the webhook time to fully populate all custom fields before any automations fire.

Step 5: Handle Multi-Page Forms

Formidable Forms supports complex multi-page forms, but you need to decide when to create the ActiveCampaign contact:

Option A: Create contact on final submission

Option B: Create contact on first page, update on completion

I usually recommend Option A unless you have a particularly long form where abandonment is high. You can track page views separately with Google Analytics to see where people drop off.

Testing & Verification

Test the Integration:

  1. Submit a test entry through your Formidable form
  2. Check that the entry appears in WordPress admin → Formidable → Entries
  3. Wait 60-90 seconds for the integration to process
  4. Verify the contact appears in ActiveCampaign → Contacts
  5. Check that all custom fields populated correctly
  6. Confirm the contact was added to the correct list

Verify Automations:

Check for Duplicates: Submit the same email address twice and verify it updates the existing contact rather than creating a duplicate.

Numbers to Watch:

Troubleshooting

Problem: Form submissions aren’t creating ActiveCampaign contacts Check your webhook URL and API credentials. In Zapier, look at the task history for error messages. For direct webhooks, check your server logs for failed HTTP requests.

Problem: Custom fields aren’t populating in ActiveCampaign The field IDs in your integration don’t match ActiveCampaign’s field IDs. Go to Settings → Fields in ActiveCampaign and verify the exact field names and IDs you’re using in your mapping.

Problem: Duplicate contacts being created instead of updated You’re using “Create Contact” instead of “Create or Update Contact” in your integration. This is the most common mistake I see. Change the action type to handle existing email addresses properly.

Problem: Automations aren’t triggering for form leads Your automation trigger might be set to “Contact added to account” instead of “Contact subscribes to list.” Change the trigger to match how your integration adds contacts.

Problem: International phone numbers breaking the integration ActiveCampaign expects phone numbers in a specific format. Add phone number formatting in your integration to strip special characters and add country codes where needed.

Problem: Long form responses getting truncated ActiveCampaign has character limits on custom fields. Check the field settings and either increase the limit or truncate long responses before sending them over.

What To Do Next

Now that your forms are connected to ActiveCampaign, consider these next steps:

This guide is part of the ActiveCampaign Integration Hub — complete setup guides for connecting ActiveCampaign to your entire marketing stack.