Skip to main content

SF-0234 · Concept · Medium

What is the maximum batch size of the data loader?

✓ Verified by Vikas Singhal · Last reviewed 5/17/2026 · Updated for Spring '26

Data Loader’s maximum batch size depends on which API you’ve told it to use:

APIDefaultMaximumWhere to set
SOAP API (default)200200Settings → Settings → Batch size
Bulk API2,00010,000Settings → Settings → Batch size (also tick Use Bulk API)

So the headline answer interviewers want is 200 for SOAP, 10,000 for Bulk API.

Why the cap exists

Salesforce processes each batch as a single API call. Smaller batches = more round-trips and slower jobs. Larger batches = each call does more work and risks hitting per-transaction governor limits (DML rows, CPU time, heap size) inside triggers/flows that fire on every record.

The maximums are the ceiling Salesforce will accept. The optimal batch size for your job depends on what automation runs on those records.

Tuning the batch size

Trigger / flow workloadSuggested batch size
No automation, simple objectsMax for the API (200 / 10,000)
Light triggers, basic field updates200 / 2,000
Heavy triggers, callouts, complex rollups50–100
Approval processes, deep flow chains1–25
Master-detail with rollup summaries200 or less to avoid lock contention

Watch for UNABLE_TO_LOCK_ROW errors — they signal contention when multiple batches try to update the same parent record. Drop the batch size or enable serial mode for the Bulk API.

Bulk API specifics

The Bulk API splits your file into batches automatically:

  • Default batch size: 2,000 records.
  • Max per batch: 10,000 records.
  • A job can have up to 100 batches.
  • Each batch runs in parallel by default — much faster, but more lock contention.
  • Serial mode (Settings → Enable serial mode for Bulk API) makes batches run one at a time, slower but safer for triggered automation.

Hitting the wall

If you’ve maxed out Bulk API batches and the job still fails on governor limits, the answer isn’t “make batches bigger” — it’s:

  1. Reduce automation per record (move logic to async, simplify triggers).
  2. Use serial mode to eliminate lock contention.
  3. Split the file into multiple jobs scheduled apart.
  4. Use Bulk API 2.0 (in third-party tools) which handles batching internally.

CLI vs GUI

The CLI uses the same batch-size setting from process-conf.xml. The values are the same: 200 SOAP, 10,000 Bulk.

In an interview

The clean answer: SOAP API is capped at 200 per batch. Bulk API is capped at 10,000 per batch. Pick Bulk API for anything over ~50,000 records. That gets the point across.

Verified against: Data Loader Guide — Configuring, Bulk API Developer Guide — Plan Bulk Data Loads, Metadata API Developer Guide. Last reviewed 2026-05-17 for Spring ‘26 release.