The Complete Salesforce Data Migration Playbook
Everything you need to migrate data into Salesforce successfully. Based on 100+ migrations, with free templates, tool comparisons, and step-by-step instructions.
Data migration is the #1 reason Salesforce implementations fail or get delayed. Poor planning, inadequate tools, or missing validation steps can turn a 2-week migration into a 6-month nightmare.
This guide contains everything I've learned from migrating over 15 million records across 100+ Salesforce implementations. Follow this playbook, and you'll complete your migration on time, on budget, and with data integrity intact.
📥 Download Free Migration Templates
Get our battle-tested data mapping template, validation checklist, and project plan
Email Me the Templates →The 7-Phase Data Migration Framework
Discovery & Analysis
Analyze source data, identify data quality issues, and document business requirements. This phase determines 80% of your migration success.
⏱️ 2-3 daysData Mapping & Design
Map source fields to Salesforce objects, design transformation rules, and plan data relationships. Critical for maintaining data integrity.
⏱️ 3-5 daysData Preparation
Clean, deduplicate, and standardize data. Fix formatting issues, validate required fields, and prepare import files.
⏱️ 3-7 daysTest Migration
Run pilot migration with subset of data. Validate relationships, test automation triggers, and verify data accuracy.
⏱️ 2-3 daysFull Migration
Execute production migration following tested procedures. Monitor progress, handle errors, and maintain audit trail.
⏱️ 1-3 daysValidation & Reconciliation
Verify record counts, validate data accuracy, test business processes, and reconcile with source system.
⏱️ 2-3 daysPost-Migration Optimization
Enable automation, activate validation rules, optimize performance, and train users on data maintenance.
⏱️ 1-2 daysChoosing the Right Migration Tool
Selecting the appropriate tool can save days of work and prevent data corruption. Here's when to use each option:
Tool | Best For | Record Limit | Complexity | Cost |
---|---|---|---|---|
Data Import Wizard | Simple imports, standard objects | 50,000 | Low | Free |
Data Loader | Large volumes, scheduled jobs | 5 million | Medium | Free |
Dataloader.io | Complex mappings, transformations | 10+ million | Low-Medium | $59-299/mo |
Workbench | Developers, bulk API operations | 10+ million | High | Free |
ETL Tools (Informatica, Talend) | Enterprise migrations, ongoing sync | Unlimited | High | $1000+/mo |
Data Mapping Template
Use this template structure for mapping your source data to Salesforce objects:
Common Migration Pitfalls (And How to Avoid Them)
Loading Contacts before Accounts when Contacts have Account lookups will fail. Always load parent objects first: Accounts → Contacts → Opportunities → Custom Objects.
Salesforce duplicate rules will block your migration. Deactivate all duplicate rules during migration, then reactivate after cleaning duplicates.
Complex validation rules designed for UI entry will fail bulk imports. Create a "Data Migration" user profile that bypasses validation rules.
Pre-Migration Checklist
✅ Complete This Before Starting Migration
Data Analysis
Salesforce Preparation
Technical Setup
Data Migration Timeline
Advanced Migration Strategies
1. Handling Large Data Volumes (10M+ Records)
- Use Bulk API 2.0: Processes up to 100 million records per day
- Implement Parallel Processing: Split data into chunks and process simultaneously
- Disable Triggers During Load: Re-enable after migration for 10x speed improvement
- Use PK Chunking: For objects with more than 10 million records
2. Complex Relationship Management
- Self-Lookups: Load records twice - first without lookups, then update with relationships
- Many-to-Many: Create junction objects after loading both parent objects
- Master-Detail: Always load master records before detail records
- Hierarchies: Use External IDs to maintain parent-child relationships
3. Data Transformation Best Practices
- Date Formats: Convert to YYYY-MM-DD format for Salesforce compatibility
- Phone Numbers: Standardize to E.164 format for global compatibility
- Addresses: Use Google Maps API for standardization and validation
- Currency: Convert to org's default currency with dated exchange rates
Using this framework, we migrated 12 million records for a Fortune 500 company in just 3 weeks, with 99.8% data accuracy and zero business disruption. The key? Thorough planning and systematic validation at every step.
Post-Migration Validation
Never declare victory until you've validated:
- Record Counts: Source count = Target count (accounting for intentional exclusions)
- Data Integrity: Spot-check 100 random records for accuracy
- Relationships: Verify all lookups and master-detail relationships
- Business Logic: Test key business processes end-to-end
- Reports: Run critical reports and compare with legacy system
- User Acceptance: Have power users validate their specific data
🎯 Get Your Migration Done Right
Download our complete migration toolkit with templates, checklists, and SQL scripts
Get the Complete Toolkit →Need Expert Migration Support?
Get your data migrated right the first time. We've successfully migrated over 15 million records with 99.8% accuracy.
Get Migration Assessment →Free 30-minute consultation • Migration roadmap • Risk assessment
Frequently Asked Questions
How long does a typical data migration take?
For most organizations (under 1 million records), expect 2-4 weeks from planning to completion. Larger migrations (10M+ records) typically take 4-8 weeks.
What's the biggest migration risk?
Data quality issues in the source system. Poor data quality accounts for 60% of migration delays. Always budget time for data cleanup.
Should we migrate historical data?
Migrate only what's necessary for business operations. As a rule: 2 years of transactional data, 5 years of customer data, all active records.
Can we run old and new systems in parallel?
Yes, but avoid dual data entry. Use integration tools to sync systems during transition, then cut over completely to prevent data divergence.
How do we handle ongoing changes during migration?
Implement a "freeze period" for the source system 48 hours before final migration, or use delta loads to capture changes.
Remember: A successful migration is 70% planning, 20% execution, and 10% validation. Never skip the planning phase.