Best Practices
Recommended setup
Use both entities together
Set up Campaign performances and Transactions as separate sources within the same data flow. Use the Aggregate transformation on transaction data to cross-check commission totals against campaign-level summaries.
Set a realistic start date
For your first sync, start with 60–90 days of data. This gives you enough history to spot trends without hitting API timeout issues on large accounts. Expand the range once you've confirmed the data looks correct.
Always set lookback days for Transactions
Set lookback days to at least 14 to capture commission status changes (pending → confirmed or declined). Without this, your destination will hold stale data for recent transactions.
Data refresh and scheduling
Match refresh frequency to commission cycles
AWIN typically confirms or declines transactions within 30 days. Daily or weekly refreshes are sufficient for most advertisers — hourly syncs add little value since transaction statuses don't update that frequently.
Use step increment for historical backfills
When pulling more than 90 days of data, set the step increment to 30 or 60 days in ISO8601 format (e.g., P30D). This keeps each API call within a manageable window and prevents timeouts.
Performance optimization
Aggregate before sending to dashboards
Transaction-level data can be large on high-volume accounts. Use Coupler.io's Aggregate transformation to roll up by publisher, date, or product before loading into Google Sheets or Looker Studio — this keeps your reports fast.
Append data from multiple advertiser accounts
If you manage more than one AWIN advertiser account, create a separate source for each account and use the Append transformation to combine them into a single unified dataset in your destination.
Common pitfalls
Ignoring commission status changes is the most common cause of incorrect affiliate spend reporting. Always use the lookback days parameter — without it, declined transactions will remain as revenue in your destination indefinitely.
Do
Set lookback days to at least 14 for Transactions
Use step increment when querying more than 90 days
Combine Campaign performances and Transactions in one data flow to cross-validate totals
Filter by commission status in your destination before reporting confirmed revenue
Don't
Pull unbounded date ranges without a step increment on large accounts
Rely solely on Campaign performances for commission reconciliation — use Transactions for that
Use the same API key across multiple conflicting configurations if you manage separate advertiser accounts
Last updated
Was this helpful?
