This workflow keeps your contact records perfectly aligned between your CRM (e.g. HubSpot / Salesforce / Pipedrive) and Mailchimp. Whenever a contact is created or updated in one system, the automation propagates the change to the other platform, ensuring every email address, phone number and custom field stays in sync.
| Environment Variable | Description | Example |
|---|---|---|
PIPEDRIVE_API_KEY |
Stored in n8n credential manager | 123abc456def |
MAILCHIMP_API_KEY |
Stored in n8n credential manager | us-1:abcd1234efgh5678 |
MAILCHIMP_DC |
Mailchimp Datacenter (sub-domain) | us-1 |
CRM_WEBHOOK_URL |
Generated by the Webhook node | https://n8n.myserver/webhook/... |
This workflow keeps your contact records perfectly aligned between your CRM (e.g. HubSpot / Salesforce / Pipedrive) and Mailchimp. Whenever a contact is created or updated in one system, the automation propagates the change to the other platform, ensuring every email address, phone number and custom field stays in sync.
Setup Time: 15-25 minutes
Create credentials
• In n8n, add new credentials for Pipedrive and Mailchimp using your API keys.
• Name them clearly (e.g. “Pipedrive Main”, “Mailchimp Main”).
Import the workflow
• Download or paste the JSON template into n8n.
• Save the workflow.
Configure the Webhook node
• Set HTTP Method to POST.
• Copy the generated URL and register it as a webhook in your CRM’s contact-update events.
Map CRM fields
• Open the first Set node and match CRM field names (firstName, lastName, email, etc.) to the standard keys used later in the flow.
Select Mailchimp Audience
• In the Mailchimp node, choose the audience/list that should receive the contacts.
Define Pipedrive Person Fields
• If you have custom fields, add them in the Pipedrive node’s Additional Fields section.
Enable the workflow
• Turn the workflow from “Inactive” to “Active”.
• Send a test update from the CRM to verify that contacts appear in both Mailchimp and Pipedrive.
// Place inside a Code node before the Mailchimp Upsert
item.tags = ['Synced from CRM', 'High-Value'];
return item;
// Pipedrive node → Additional Fields
"deal": {
"title": "New Lead from Mailchimp",
"stage_id": 2
}
The workflow outputs structured JSON data:
{
"id": 1472,
"status": "updated",
"email": "[email protected]",
"source": "CRM",
"synced": {
"pipedrive": "success",
"mailchimp": "success"
},
"timestamp": "2024-04-27T10:15:00Z"
}
Continue On Fail in non-critical nodes to prevent the entire run from stopping.Pro Tips:
Community Template Disclaimer:
This workflow is provided by the n8n community “as is”. n8n GmbH makes no warranties regarding its performance, security or compliance. Always review and test in a development environment before using it in production.