Salesforce Data Loader: Complete Guide

Quick Summary:

Data Loader is Salesforce's free desktop tool for bulk data operations -- insert, update, upsert, delete, and export -- handling far larger volumes than the browser-based Import Wizard.

What Is Data Loader?

Data Loader is a free, downloadable client application for moving large volumes of data into and out of Salesforce. Where the Import Wizard handles simple, smaller imports through the browser, Data Loader is built for genuinely bulk operations -- migrations, large updates, and scheduled data syncs -- across any object, standard or custom.

⚠️ Before You Start

Data Loader operations are not automatically reversible. Before running a bulk update or delete on production data, test the exact same operation on a sandbox first, and always keep an export of the affected records as a backup.

Data Loader Operations

OperationWhat It DoesRequires Record ID?
InsertCreates new recordsNo
UpdateModifies existing recordsYes
UpsertUpdates if match found, inserts if notNo (uses external ID)
DeleteMoves records to Recycle BinYes
Hard DeletePermanently deletes, bypassing Recycle BinYes
ExportExtracts records to CSVNo

How to Get Started

  1. Download Data Loader from Setup → Data Loader (or the Salesforce Data Loader page), and confirm Java is installed on your machine.

  2. Log in with your Salesforce credentials plus a security token (or via OAuth, depending on your org's settings).

  3. Select the operation type (Insert, Update, Upsert, Delete, or Export).

  4. Choose the object and map your CSV columns to the correct Salesforce fields.

  5. Run the operation, then review both the success and error output files.

A Real-World Example

A company migrating from a legacy CRM needs to import 40,000 historical Contact records with custom fields mapped from the old system's export. Data Loader handles this cleanly using an upsert operation keyed on a legacy system ID stored as an external ID field -- ensuring records that already exist get updated rather than duplicated if the import needs to be re-run.

Sample CSV Header Row

FirstName,LastName,Email,Legacy_ID__c,AccountId
John,Smith,john@example.com,LEG-00234,001XXXXXXXXXXXX

🚫 Common Mistake

Running a bulk delete or update without first exporting the affected records as a backup. Data Loader will do exactly what you tell it to, at scale -- there's no undo beyond the standard Recycle Bin retention period, and Hard Delete bypasses even that.

💡 Pro Tip

Use an external ID field for upsert operations tied to source-system records -- this makes re-running an import safe and idempotent, since matched records update instead of duplicating, even if the same file gets loaded twice by accident.

Frequently Asked Questions

Is Salesforce Data Loader free?

Yes, Data Loader is a free tool provided by Salesforce for bulk data operations, included with your org access -- no separate license required.

What\'s the difference between Data Loader and the Import Wizard?

Import Wizard is simpler, browser-based, and limited to a smaller set of objects and simpler operations; Data Loader is a desktop application supporting any object, larger volumes, and more operation types (insert, update, upsert, delete, hard delete, export).

Can Data Loader be run from the command line?

Yes, Data Loader supports command-line/batch mode, letting you script and schedule data operations without manually opening the GUI each time.

What file format does Data Loader use?

CSV (comma-separated values) is the standard format for both importing and exporting data through Data Loader.

What\'s the maximum number of records Data Loader can process in one operation?

Data Loader can handle up to 5 million records per operation, though very large volumes benefit from batching and off-peak scheduling.

Does Data Loader work on Mac and Windows?

Yes, Data Loader is available for both Mac and Windows, requiring Java to be installed on the machine running it.

What does \'upsert\' mean in Data Loader?

Upsert combines insert and update in one operation -- it updates a record if a match is found (via an external ID or record ID), or inserts a new record if no match exists.

Can Data Loader bypass validation rules or triggers?

No, by default Data Loader operations go through the same validation rules, triggers, and automation as any other data change -- this is intentional, to preserve data integrity.

What\'s the correct date format for Data Loader CSV files?

Date format depends on your Salesforce org's locale settings -- mismatched date formats are one of the most common causes of Data Loader import errors.

How do I know if my Data Loader operation partially failed?

Data Loader generates a success file and an error file for every operation -- always review the error file, since a batch can partially succeed with some records failing individually.