The Sync
- The sync source is a Salesforce Report, type "Leads," in a standard tabular format, no groupings, summaries, matrices, or joined data. The only filters applied are: Created Date after October 2020, Converted = False, and filters to limit Owners (segmenting by Department). The report is sorted by 18-digit Record ID.
- The Unique ID field is set to the native Salesforce 18-digit Record ID.
- The Salesforce report contains 2,097 rows (confirmed via CSV export). Airtable is receiving approximately 2,212 rows before deduplication, 115 more rows than exist in the source report.
The Error
- This warning appears on every sync attempt. It started showing up about 3 weeks ago, and has continued to appear through all troubleshooting steps, sometimes with different Example IDs:
This source generated warnings. 120 row(s) were dropped because your unique ID field (18-digit ID) had duplicates. Examples: '00QRf00000aOCWLMA4' (1 time), '00QRf00000aNJGXMA4' (1 time), '00QRf00000aMPcbMAG' (1 time)
- This sync worked correctly for an extended period before the issue began.
- I experienced a broader sync outage recently (OAuth/session expiry), but I resolved that by installing the Airtable connector in Salesforce, and the duplicate warning appeared both before and after that issue was resolved.
- I have since recreated the synced table from scratch and fully reconnected the Salesforce integration, but the error has continued to appear.
More details
- The three example IDs flagged as duplicates correspond to records at positions 118, 119, and 120 in the report when sorted by 18-digit ID.
- Given that exactly 120 records are dropped and the flagged examples sit at positions 118–120, I am wondering if Airtable's sync may be receiving the first ~120 records twice, once in an initial batch and again in the main paginated response from the Salesforce Reports API.
What I tried
- Duplicate records in Salesforce (confirmed clean via CSV pivot table)
- Report groupings, summaries, or joined data (none present)
- Sort order (tried multiple sort configurations)
- Stale sync cache (recreated the table from scratch)
- OAuth/connection issues (fully reconnected)
Splitting the report across multiple tables is not a workable solution for my base due to linked records, automations, and other dependencies.
Thank you for your help!
