Study guide
4.2 Data Import Wizard vs. Data Loader
Salesforce Certified Platform App Builder Exam
Track your progress as you read
Finished sections get a check mark.
1 Chapter 1: Platform Architecture, Boundaries & Extensions
1.1 Declarative vs. Programmatic Architecture & Limits 1.2 AppExchange Solutions & Package Selection 1.3 Core CRM Standard Objects & Capabilities
2 Chapter 2: Security, Access & Analytics
2.1 Object-Level & Field-Level Security 2.2 Record-Level Sharing Architecture 2.3 Advanced Sharing & Scoping Solutions 2.4 Reports, Custom Report Types & Dynamic Dashboards
3 Chapter 3: Data Model Architecture & Relationships
3.1 Custom Objects & Custom Field Types 3.2 Master-Detail & Lookup Relationships 3.3 Many-to-Many Relationships & Junction Objects 3.4 Schema Builder & Data Architecture Visualization
4 Chapter 4: Data Management & External Integrations
4.1 Field Type Conversions & Data Loss Considerations 4.2 Data Import Wizard vs. Data Loader 4.3 Salesforce Connect, External Objects & Indirect Lookups
5 Chapter 5: Declarative Formulas & Validation Rules
5.1 Cross-Object Formulas & Advanced Formula Functions 5.2 Roll-Up Summary Fields & Calculation Rules 5.3 Validation Rules & Error Handling Strategies
6 Chapter 6: Salesforce Flow Architecture & Design
6.1 Flow Fundamentals & Flow Trigger Types 6.2 Record-Triggered Flows: Fast Field Updates vs. Actions 6.3 Screen Flows & Guided User Interactions 6.4 Flow Execution Architecture, Bulkification & Fault Paths
7 Chapter 7: Complex Automation & Approval Processes
7.1 Multi-Step Approval Processes & Approver Routing 7.2 Approval Actions, Rejections & Record Locking 7.3 Automation Selection Strategy & Legacy Migration Patterns
8 Chapter 8: Lightning App Builder & Page Customization
8.1 Lightning Record, Home & App Pages 8.2 Standard, Custom & AppExchange Lightning Components 8.3 Custom Buttons, Web Links & Quick Actions
9 Chapter 9: Dynamic UI, Record Types & Mobile Experience
9.1 Dynamic Forms & Conditional Component Visibility 9.2 Dynamic Actions & Page Interaction Patterns 9.3 Record Types, Business Processes & Picklist Control 9.4 Salesforce Mobile App Customization & Compact Layouts
10 Chapter 10: Application Lifecycle Management & Sandboxes
10.1 Application Lifecycle Management (ALM) Stages & Governance 10.2 Sandbox Types, Capacity & Refresh Cycles 10.3 Sandbox Strategy for Development, Testing & Training
11 Chapter 11: Deployment Tools & Packaging Strategies
11.1 Inbound & Outbound Change Sets 11.2 Change Set Dependency Tracking & Deployment Sequencing 11.3 Managed vs. Unmanaged Packages & Distribution
12 Current Exam Blueprint, Agentforce & Flow Operations
12.1 Current Exam Facts, Official Weights & Study Mapping 12.2 AgentExchange: Extending an Org with the Agentforce Marketplace 12.3 Agentforce Automation for App Builders 12.4 Flow Approval Processes, Monitoring & Troubleshooting
4.2 Data Import Wizard vs. Data Loader
Key Takeaways Explain This Topic AI
The Data Import Wizard is browser-based, processes up to 50,000 records, supports automatic deduplication for Accounts, Contacts, and Leads, but does not support Opportunities, Cases, Products, or Users.
Data Loader is a client-side application and CLI tool supporting up to 5,000,000 records across supported standard and custom objects, offering Insert, Update, Upsert, Delete, Hard Delete, Export, and Export All operations.
The Upsert operation relies on a Salesforce Record ID or a designated External ID field to match existing records for updates or create new records if no match is found, reducing ID reconciliation; load parents before dependent children.
Data Loader Export extracts only active records, whereas Export All includes soft-deleted records residing in the Recycle Bin; Hard Delete bypasses the Recycle Bin completely and requires specific Bulk API permissions.
High-volume data loads avoid record lock contention (UNABLE_TO_LOCK_ROW) by sorting import CSV files by Parent ID or running the Bulk API in Serial Mode rather than Parallel Mode.
Last updated: October 2026
Data Import Wizard vs. Data Loader
Important
Selecting the correct data ingestion tool is a frequent operational challenge and a core topic on the Platform App Builder exam. Administrators must evaluate record volumes, object types, deduplication requirements, automation bypass needs, and scheduled execution parameters when deciding between the Data Import Wizard and Data Loader.
Salesforce provides two primary administrative tools for importing, updating, and exporting relational data: the browser-based Data Import Wizard and the desktop/command-line Data Loader . Choosing the right tool requires evaluating specific platform boundaries and operational constraints.
Data Import Wizard: Architecture & Scope
The Data Import Wizard is an integrated, browser-based administrative interface accessible directly within Setup ( Setup > Integrations > Data Import Wizard ). It is engineered for business users and administrators executing small-to-medium ad-hoc data loads without requiring local client software installation.
Key Capabilities & Object Support
Record Limit : Supports imports of up to 50,000 records in a single execution.
Supported Standard Objects : Strictly limited to Accounts , Contacts , Leads , Solutions , and Campaign Members .
Custom Objects : Supports data loading for supported custom objects .
Unsupported Objects (Exam Trap) : The Data Import Wizard CANNOT import or update Opportunities , Cases , Products , Assets , Users , Quotes , or Campaigns (as parent campaign records). If a requirement involves importing Opportunities or Cases, Data Loader is mandatory.
Built-In Deduplication Matching
A primary architectural advantage of the Data Import Wizard is native deduplication matching during the import process, which prevents duplicate record creation declaratively without requiring external ETL staging:
Accounts & Contacts : Matches incoming rows against existing database records by Salesforce ID , Name & Site , Email , or designated External ID .
Leads : Matches incoming leads by Salesforce ID , Email , or Name .
Administrators can configure the wizard to either update existing matching records, create new records, or ignore duplicates entirely.
Workflow and Automation Execution
The Data Import Wizard includes a declarative configuration checkbox: "Trigger workflow rules and processes for new and updated records?" When unchecked, workflow rules, process builder processes, and flows that fire on record creation or edit are bypassed, speeding up execution and preventing mass notification emails from being dispatched to customers during data loading.
Data Loader: Enterprise Scale & Operations
Data Loader is a client application installed locally on Windows or macOS, and it also functions as a Windows-only supported Command Line Interface (CLI). It is engineered for enterprise-scale bulk operations, complex schema migrations, and automated batch processing.
Key Capabilities & Scope
Record Limit : Supports bulk operations of up to 5,000,000 records per run.
Universal Object Support : Operates across supported standard objects (including Opportunities, Cases, Products, Users, Tasks, Events) and supported custom objects .
Full Operation Suite : Supports seven distinct operational modes:
Insert : Creates new records from an input CSV file.
Update : Modifies existing records based on matching 15-character or 18-character Salesforce Record IDs.
Upsert : Matches incoming rows against either a Salesforce Record ID or an External ID field; updates existing matches and inserts non-matching rows.
Delete : Moves matching records into the Recycle Bin (soft delete, recoverable for 15 days).
Hard Delete : Permanently purges records immediately, completely bypassing the Recycle Bin. Requires the "Bulk API Hard Delete" user permission and enabling Bulk API in Data Loader Settings.
Export : Queries and extracts active (non-deleted) records matching a custom SOQL query into a CSV file.
Export All : Queries and extracts active records plus soft-deleted records currently residing in the Recycle Bin ( WHERE isDeleted = true ).
Automated Batch Jobs via CLI
Data Loader includes a Command Line Interface (CLI) that can be fully automated using configuration files ( process-conf.xml , config.properties ). Organizations routinely script Data Loader via Windows Task Scheduler or Windows Task Scheduler jobs to execute automated nightly imports, ERP delta synchronizations, and compliance data extractions without manual user intervention.
Comprehensive Architectural Comparison: Data Import Wizard vs. Data Loader
Architectural Dimension Data Import Wizard Data Loader
Deployment Interface In-browser interface (Setup menu; zero install) Standalone client application (GUI) and CLI (requires install)
Maximum Record Volume Up to 50,000 records per job Up to 5,000,000 records per job
Supported Objects Accounts, Contacts, Leads, Solutions, Campaign Members, Custom Objects All standard objects (Opportunities, Cases, Products, Users) and custom objects
Deduplication Engine Built-in declarative deduplication (matches by Name, Email, Ext ID) Use upsert for key matching and separately configured duplicate rules for supported objects
Operations Supported Insert, Update, Upsert Insert, Update, Upsert, Delete, Hard Delete, Export, Export All
Delete & Recycle Bin Not supported (cannot delete records) Supports soft Delete (Recycle Bin) and Hard Delete (purge)
Export & Export All Not supported (cannot export data) Supports Export (active) and Export All (includes Recycle Bin)
Scheduled Automation Not supported (manual web execution only) Supported via CLI scripting (Windows Task Scheduler)
Underlying API Protocol Standard Salesforce bulk infrastructure SOAP API (synchronous, 200/batch) or Bulk API (asynchronous)
Automation Bypass Simple UI checkbox to disable workflow/processes Requires custom settings, custom metadata, or manual deactivation
The Upsert Operation & External IDs
The Upsert operation chooses Insert or Update for each incoming record; a whole multi-batch job is not one atomic transaction. It is the gold standard for synchronizing Salesforce with external systems (such as SAP, NetSuite, or legacy databases):
During configuration, the administrator designates a unique key: either the internal Salesforce Record ID or a custom field flagged as an External ID .
When Data Loader reads each row in the CSV file, it evaluates the External ID:
Match Found : Updates the existing Salesforce record with incoming CSV values.
No Match Found : Creates a new record in Salesforce populated with CSV values.
Multiple Matches Found : Logs an error for that specific row ( DUPLICATE_EXTERNAL_ID ) and skips it without failing the rest of the batch.
Tip
Upsert reduces ID reconciliation in multi-stage migrations where administrators previously had to insert parent records, export their newly generated Salesforce IDs, perform VLOOKUP formulas in Excel to populate foreign keys on child records, and finally insert child records. With External IDs, child records can be upserted by referencing the parent's External ID directly in the import mapping.
Data Formatting & Large-Scale Loading Best Practices
High-volume data loads require rigorous data preparation and performance tuning to prevent operational failure:
Date and Date/Time Formatting : ISO 8601 is a clear, portable choice for dates and DateTime values: YYYY-MM-DD (e.g., 2026-10-18 ) or YYYY-MM-DDThh:mm:ss.sssZ for date/time fields. Other supported formats depend on Data Loader settings; test parsing and timezone handling before the production load.
Multi-Select Picklist Formatting : Multiple values must be delimited by semicolons without extraneous spaces: ValueA;ValueB;ValueC .
Resolving Record Locking ( UNABLE_TO_LOCK_ROW ) : When inserting hundreds of thousands of child records (e.g., Contacts, Order Items, Transactions) linked to parent records, Bulk API processes multiple batches in parallel threads. If multiple batches attempt to lock the same parent record simultaneously to update system fields or recalculate Roll-Up Summary aggregates, lock contention occurs, throwing UNABLE_TO_LOCK_ROW errors.
Mitigating Lock Contention:
Sort the CSV File : Sort the input CSV file alphabetically or numerically by the Parent Record ID column. This reduces the likelihood of parallel batches competing for a parent; very large parent groups can still cross batch boundaries.
Enable Serial Mode : In Data Loader Settings, enable "Use Bulk API" and check "Enable Serial Mode" . Serial mode forces batches to process sequentially one after another, eliminating multi-threaded race conditions at the expense of longer load times.
Controlled Automation Bypass : Prefer a reviewed, narrowly assigned bypass switch using a Hierarchical Custom Setting ( $Setup.AutomationBypass__c.BypassAll__c = TRUE ).