Running a clean Data Loader job takes preparation more than it takes Salesforce knowledge. Validate the input CSV, plan field mapping, pick the right operation, run a test on a small subset first, then process the full load. Always run from a sandbox before production unless the operation is read-only.
- Install Data Loader from Setup
Setup > Data Loader > Download. Install the OS-appropriate version (macOS, Windows). Launch and authenticate via OAuth on first run. The embedded Connected App handles authentication for the default install.
- Prepare the CSV input
Format the CSV with one row per record, columns named to match Salesforce field API names. Include the Id column for update or delete operations. Include the external ID column for upsert. Validate the CSV opens cleanly in Excel and has no encoding issues (UTF-8 or Windows-1252).
- Choose the operation
Launch the appropriate operation: Insert, Update, Upsert, Delete, Hard Delete, Export. Each opens a wizard. Pick the target sObject, browse to the CSV file, and proceed to mapping.
- Map CSV columns to Salesforce fields
Click Create or Edit Map. Use Auto-Match Fields to Columns for exact matches. Manually map remaining columns. Save the mapping file (.sdl) for reuse. Confirm every required field on the target object has either a CSV mapping or a hardcoded default.
- Test on a small subset
Run a test load with 10-50 records first. Review the success and error files. Confirm records appear correctly in Salesforce. Fix any data or mapping issues before running the full load.
- Process the full load
Run the operation on the full CSV. Monitor progress in the Data Loader window. For very large loads, switch to Bulk API mode in Settings > Settings (enables larger batches and parallel processing).
- Review the result files
Open success.csv and error.csv. The success file includes the assigned Salesforce Ids; the error file describes per-record failures. Triage errors, fix the input data, and re-run only the failed records.
- Document the run for audit
Save the success, error, and log files to a project folder with the run date and operator. Most data migrations require audit evidence; Data Loader output files are the standard artifact.
Insert, Update, Upsert, Delete, Hard Delete, Export, Export All. Drives the entire run; pick carefully.
Records per batch. 200 default for standard API; 10,000 for Bulk API. Tune based on object automation and data shape.
Setting that switches from standard API to Bulk API for the operation. Required for loads over 50,000 records.
- CSV field mapping is case-sensitive on API names. Account_Name__c is not the same as account_name__c. Mismatched cases produce silent unmapped columns that load with NULL values.
- Hard Delete bypasses the Recycle Bin and is irreversible. Triple-check the input CSV before running a hard delete because there is no way to recover the records.
- Lock contention on master-detail data produces UNABLE_TO_LOCK_ROW errors when batches of child records target the same master. Sort the CSV by master Id before loading.
- Triggers, validation rules, and workflow rules all fire during Data Loader operations. Loads can take much longer than expected on objects with heavy automation, and rule failures show up in error.csv.
- Username-password authentication is being phased out alongside MFA enforcement. Configure OAuth before legacy authentication is blocked for the integration user.