Google Sheets to MailChimp Auto-Importer
Overview
This n8n workflow automatically imports contacts from Google Sheets into your MailChimp mailing list. Perfect for businesses collecting leads through Google Forms, event registrations, or maintaining contact lists in spreadsheets.
Key Features
- 📊 Bulk Import: Process entire Google Sheets at once
- 🔄 Smart Name Parsing: Automatically splits full names into first and last names
- 📱 Phone Number Support: Includes phone numbers as merge fields
- ⚡ Error Resilience: Continues processing even if individual contacts fail
- 📝 Import Summary: Generates a summary of processed contacts
Prerequisites
Before using this workflow, ensure you have:
- An active n8n instance (self-hosted or cloud)
- A Google account with access to Google Sheets
- A MailChimp account with at least one audience/list created
- Basic understanding of n8n workflows
Initial Setup
Step 1: Import the Workflow
- Copy the workflow JSON
- In n8n, click "Import from File" or paste the JSON
- Save the workflow with a meaningful name
Step 2: Configure Google Sheets Connection
- Click on the "Get Google Sheet Data" node
- Click on "Credential to connect with"
- Select "Create New" and choose "Google Sheets OAuth2"
- Follow the OAuth flow to authenticate your Google account
- Save the credentials
Step 3: Configure MailChimp Connection
- Click on the "Add to MailChimp" node
- Click on "Credential to connect with"
- Select "Create New" and choose "MailChimp OAuth2" or "MailChimp API"
- For API method:
- Log into MailChimp
- Go to Account → Extras → API keys
- Generate a new API key
- Copy and paste it into n8n
- Save the credentials
Step 4: Configure Your Specific Settings
Google Sheets Settings:
- Open the "Get Google Sheet Data" node
- Replace
YOUR_GOOGLE_SHEET_ID
with your actual sheet ID
- Find this in your Google Sheets URL:
https://docs.google.com/spreadsheets/d/[SHEET_ID]/edit
- Replace
YOUR_SHEET_NAME
with your worksheet name (e.g., "Sheet1" or "Form Responses 1")
MailChimp Settings:
- Open the "Add to MailChimp" node
- Replace
YOUR_MAILCHIMP_LIST_ID
with your audience ID
- Find this in MailChimp: Audience → Settings → Audience name and defaults
- Verify the status is set to "subscribed"
Google Sheets Format Requirements
Your Google Sheet must have the following columns (exact names):
- Names: Full name of the contact (e.g., "John Doe")
- Email address: Valid email address
- Phone Number: Contact phone number (optional)
Example:
How to Use
Manual Execution:
- Open the workflow in n8n
- Click "Execute Workflow"
- Monitor the execution progress
- Check the output of "Create Import Summary" for results
Scheduling (Optional):
To run this automatically:
- Replace the "Manual Trigger" node with a "Schedule Trigger" node
- Set your desired schedule (e.g., daily at 9 AM)
- Activate the workflow
Customization Options
Adding More Fields:
To include additional fields like company name or address:
- Add columns to your Google Sheet
- Modify the "Edit Fields" node to include new fields
- Update the "Format Subscriber Data" code to map new fields
- Add corresponding merge fields in the MailChimp node
Handling Duplicates:
The workflow uses "continueRegularOutput" error handling, which means:
- Existing subscribers will be skipped
- New subscribers will be added
- The workflow continues processing
Adding Email Notifications:
To receive import summaries via email:
- Add a Gmail or Email node after "Create Import Summary"
- Configure with your email settings
- Use the import summary data in the email body
Troubleshooting
Common Issues:
-
"Invalid API Key" (MailChimp)
- Verify your API key is correct
- Check that your MailChimp account is active
-
"Sheet not found" (Google Sheets)
- Verify the sheet ID is correct
- Ensure the service account has access to the sheet
-
"Email already exists" errors
- This is normal for existing subscribers
- The workflow will continue processing other contacts
-
Missing data in MailChimp
- Check that column names match exactly (case-sensitive)
- Verify data exists in the Google Sheet
Best Practices
- Test First: Always test with a small dataset first
- Backup Data: Export your MailChimp list before large imports
- Clean Data: Ensure email addresses are valid before importing
- Monitor Regularly: Check import summaries for any issues
- Respect Privacy: Only import contacts who have consented to receive emails
Support
For issues specific to:
License
This workflow template is provided free for personal and commercial use. Feel free to modify and share!