Why Do the
CAMPAIGN_RECIPIENT_ACTIVITY Tables Contain More Rows Than the Number of Emails Sent?link
Why do the
CAMPAIGN_RECIPIENT_ACTIVITY tables contain more rows than the number of emails sent from Mailchimp?
The tables contain more rows due to the following reasons:
- The connector fetched data that is older than the previous day.
- If you observe this after the historical sync, the connector may still be syncing the historical email activity.
In each sync, the Mailchimp connector processes email activities once all other endpoints are done. It uses the email activities to fetch the data for the
CAMPAIGN_RECIPIENT_ACTIVITY tables. As the email activities endpoint is extremely slow, we process email activities for up to 8 hours per sync. In subsequent syncs, we fetch the remaining data in the same way. We stop processing the email activities when it exceeds 8 hours as we do not want the sync to run indefinitely until all email activities are synced.
We load data only once for the
CAMPAIGN_RECIPIENT table. However, our sync strategy for the
CAMPAIGN_RECIPIENT_ACTIVITY table is mostly non-incremental. We check if a campaign has any new activity, such as new clicks or opens. If it contains any new activity, we fetch and upsert all data including previously upserted data.
For more information, see our Mailchimp documentation.
The Mailchimp email activity endpoint is slow in its responses.