Mailchimp
Mailchimp is an email marketing platform to send emails and automated messages, create targeted campaigns, facilitate reporting and analytics, and sell online.
Features
Feature Name | Supported | Notes |
---|---|---|
Capture deletes | check | LIST , SEGMENT , SEGMENT_MEMBER , CAMPAIGN , CAMPAIGN_VARIATE_COMBINATION , STORE , CUSTOMER , CART , CART_LINE , ORDERS , ORDER_LINE , ORDER_PROMO_CODE , PRODUCT , PRODUCT_VARIANT , PROMO_CODE , and PROMO_RULE |
History mode | ||
Custom data | check | |
Data blocking | check | |
Column hashing | ||
Re-sync | check | |
API configurable | check | API configuration |
Priority-first sync | ||
Fivetran data models | check | |
Private networking | ||
Authorization via API |
Setup guide
Follow our step-by-step Mailchimp setup guide to connect Mailchimp with your destination using Fivetran connectors.
Sync overview
The Mailchimp APIs are extensive, highly duplicative, and have extreme differences in query performance. Fivetran's connector has been optimized for incremental updates without data integrity issues.
The sync strategy ensures that every table has the most recent data, and that your historical email activity fills in over time:
- Sync everything except email activities by iteratively querying the Mailchimp API 3.0.
- Prioritize the email activity exports based on the amount of email activity that has yet to be synced.
- Retrieve the highest priority email activities using Mailchimp Marketing API's Reports endpoint.
- After 8 hours, finish and record how far back historical email activities are synced to.
The dashboard has the "Email Activities Back To" field showing how far back the email activities are synced. The length of time it will take for the full historical email activity data to sync is largely determined by the total number of email activity exports for campaigns and automation emails. Mailchimp can complete between 15 - 75 email activity export Batch Operations per day, depending on the number of recipients.
NOTE: For sources with high email activity, we recommend that you select a sync frequency shorter than 8 hours to optimize export operations and minimize latency.
Sync note
To sync data from multiple Mailchimp accounts into the same destination, you must set up separate Mailchimp connectors for each account. A single connector cannot sync data from multiple accounts.
Schema information
Mailchimp's schema follows Fivetran's standard API schema rules.
Schema
This schema applies to Mailchimp connectors set up after August 2017.
To zoom, open the ERD in a new window.E-Commerce Schema
This schema applies to Mailchimp connectors set up after January 2024.
To zoom, open the ERD in a new window.Schema notes
When you delete a list member in Mailchimp, their activity (sent, open, click, bounce) is deleted as well. Because of this, the data Fivetran delivers will sum to slightly less than the aggregate reporting in Mailchimp's dashboard.
The list_member.status
field has six values:
- pending - has yet to opt-in
- subscribed - opt-ed in
- unsubscribed - have opt-ed out
- cleaned - emails bounced too many times, removed
- transactional - part of Mandrill automation
- archived - removed, but can be added back
Unsubscribes are also captured in the unsubscribe
table, which indicates the campaign or automation email which triggered the list member to unsubscribe. The campaign_id
is a foreign key reference to the id
field of both the campaign
and automation_email
tables.
The campaign.type
field has five values:
- regular
- plaintext
- rss
- variate
- variate-child
Multi-variate campaigns (Mailchimp PRO feature) can be identified by having a type of variate
. They have two parts:
- The multi-variate combinations are run until a winner is chosen.
- Then, the winning combination is spawned as a new campaign.
The combinations can be analyzed using the combination_id
field on the campaign_recipient
and campaign_recipient_activity
tables. The winning campaign is identified by the campaign
id in winning_campaign_id
field, and has the type
field value of variate-child
.
NOTE: The email recipient and email activity data for the campaigns of type
variate-child
are synced to theCAMPAIGN_RECIPIENT_ACTIVITY
andCAMPAIGN_RECIPIENT
tables respectively, only if theCAMPAIGN_VARIATE_COMBINATION
table is selected in the schema.
If enabled, the SEGMENT_MEMBER table
and E-Commerce
tables are only updated once per day.
NOTE: In the event that a store for which data has been synced in the destination is deselected in the setup form, all the previously synced data for that store will be marked deleted.