Best Practices

Export Contacts attributes alongside Contacts

The Contacts entity alone won't tell you what your custom fields mean. Always add Contacts attributes as a second source in the same data flow so you have field definitions handy.

Use multiple sources in one data flow for list-level contact exports

If you need contacts from several lists, add each list as a separate Contacts lists contacts source and use the Append transformation to combine them into one output table.

Join CRM deals with pipeline stages

CRM deals contain a stage ID, not a stage name. Add CRM pipeline stages as a second source and Join on stage ID to get human-readable stage names in your reports.

Data refresh and scheduling

Wait a few hours after a campaign send before syncing

Open and click metrics continue updating after a send. Scheduling a sync several hours post-send gives you more settled engagement data rather than preliminary counts.

Use a fixed start date for campaign history

Set your start date to the earliest campaign you care about and leave it fixed. This avoids re-pulling the same historical data unnecessarily on every sync.

Performance optimization

Separate high-volume contact exports from CRM syncs

If you have a large contact database, running it in the same data flow as CRM entities can slow things down or trigger rate limits. Keep contact-heavy and CRM-heavy flows separate.

Use Aggregate for campaign reporting

Instead of exporting every campaign row to a spreadsheet, use the Aggregate transformation to summarize metrics (e.g., total sends, average open rate by month) before writing to the destination.

Common pitfalls

triangle-exclamation

Do

  • Add Contacts attributes as a companion source when exporting Contacts

  • Join CRM deals with pipeline stages for readable stage names

  • Verify an entity has data in Brevo before troubleshooting a missing-data issue in Coupler.io

  • Use Append to merge email and SMS campaign data into a single performance table

Don't

  • Use a restricted API key if you need access to CRM or account-level entities

  • Expect real-time accuracy on open/click rates immediately after a campaign send

  • Pull Contacts lists contacts without first confirming the target list has subscribers

Last updated

Was this helpful?