Salesforce User Insertion: How to Load Users with Data Loader
The Salesforce User Insertion process is an important early step in a Salesforce data migration. Creating users before loading other records makes it easier to build a user map that connects historical record owners to their new Salesforce owners. It also helps preserve important audit information, such as Created By and Modified By, when historical IDs need to be mapped to Salesforce user IDs.
In this tutorial, you’ll learn how to prepare the Salesforce User object, create a legacy ID, map Profile and Role IDs, prepare your user data, and insert users using Salesforce Data Loader.
Watch the tutorial:
https://youtu.be/WIojoNpUKhk
Table of Contents
Whether you're learning Salesforce, preparing for a data migration, or building stronger hands-on skills, the right guidance can save you hours of trial and error. Explore practical Salesforce training and connect with a community built around learning, practicing, and solving real Salesforce challenges.
Learn. Practice. Connect. Keep building your Salesforce skills beyond this article.
Preparing the User Object for Data Migration
Before inserting new user data, take a few minutes to prepare the Salesforce User object. Setting up a reliable Legacy ID and understanding Salesforce's expected data format can make the migration and future record mapping much easier.
Create a Legacy ID Field
If your User object does not already have one, create a Legacy ID field as a Text field and mark it as an External ID. This allows the field to be used for future upserts and record mapping.
Text
One useful way to understand Salesforce's expected data format is to manually create a user record and then export it using Data Loader. This gives you a real Salesforce-generated example that you can open and review in Excel.
Create a Sample User
Manually create a user record in Salesforce to establish a real example of the information Salesforce expects.
Export with Data Loader
Export the user record with Data Loader to capture the actual Salesforce field structure and values.
Review in Excel
Open the exported file in Excel and use it as a reference when preparing your migration data.
Use the Provided User Workbook
You may not need to create sample records manually. The provided user workbook already contains predefined values that can help streamline the migration and save time when preparing Salesforce user data.
Migration Tip: Using the predefined values in the workbook can save time and may allow you to skip the manual sample-record step. When possible, use the Salesforce-compatible values already provided rather than creating them from scratch.
Understanding Required Fields and Data Transformation
When preparing a user list for Data Loader, you'll find that Salesforce requires several fields that may not exist in your legacy database.
Salesforce IDs for Profile and Role
A key point to remember is that Data Loader requires the Salesforce ID for fields such as Profile and Role rather than simply the name.
Mapping Legacy Values to Salesforce IDs
Extract the appropriate Salesforce IDs for the Profiles and Roles needed by your user data.
Map those Salesforce IDs to the corresponding user records in your migration data.
Use the mapped values when performing the Data Loader insertion.
Key point: Profile and Role values need to be mapped to their corresponding Salesforce IDs before the user data is inserted.
Managing User Activation and Password Notifications
The Is Active field requires special attention during Salesforce User Insertion.
Controlling the Is Active Field
Users are inserted as active.
Users can be activated later when appropriate.
If the Is Active field is left blank, users are inserted as active. This can create problems if your Salesforce org does not have enough available user licenses.
To avoid unnecessary license issues: users can be inserted as inactive and activated later when appropriate.
Generate New Password and Notify User Immediately
This field is not available through Data Loader for simultaneously creating users and sending their welcome email.
Key point: inserting users with Data Loader does not automatically mean that new users will receive a Salesforce welcome email.
Ready to take your Salesforce skills further?
Learn more, practice with real Salesforce scenarios, and connect with other Salesforce learners.
Manually Creating a Salesforce User and Mapping Fields
Before preparing the final user data, it can be helpful to manually create a user in Salesforce to understand the required fields.
Understanding the User License and Profile Relationship
The selected license determines which profiles are available.
Choose from the profiles available for that selected license.
Although Role may appear to be required in some Salesforce screens, it is not strictly necessary if your organization has not yet established its user roles.
Matching Salesforce Picklist Values to Data Loader
The value you see when working with Salesforce's picklists.
The exact value expected when preparing the import data.
Why the workbook helps: it includes the correct values for Time Zones, Locales, Languages, and Email Encoding, making it easier to prepare the data expected by Data Loader.
Preparing User Data for Salesforce User Insertion
Before loading your users, make sure the Legacy ID field exists on the User object.
If it doesn't exist, create it as a Text field and enable it as an External ID.
Connecting Historical Records to Salesforce Users
A consistent identifier carried from the historical user record.
Keeps the migration identifier available for record mapping.
Using the Legacy ID for Future Data Loads
The mapping can be used when additional data loads need to reference the newly created Salesforce users as record owners.
The same connection can help preserve references to historical user information when loading additional records.
Key point: the Legacy ID creates a consistent connection between your historical user records and the Salesforce users created during the migration.
Handling Salesforce User Aliases and Usernames
Salesforce aliases have an eight-character limit, so they need to be prepared carefully.
Preparing a Salesforce User Alias
Keep Salesforce aliases within the eight-character limit when preparing your migration data.
Practical approach: use the first initial of the user's first name followed by their last name, or use a shortened version of the last name when necessary.
Understanding Salesforce Username Requirements
Salesforce usernames must use an email-format value.
The username must be unique across all Salesforce orgs.
The username may look unused in your current org.
Another Salesforce org using the same username can still cause an error.
Preparing Usernames for Test Data
A username that already exists in another Salesforce org can still cause an error, even if it isn't being used in your current org.
Create unique email-format usernames specifically for testing.
Adjust the usernames included in the test data so they are unique.
Key point: aliases need to stay within eight characters, while usernames must use an email format and remain unique across all Salesforce orgs.
Email Encoding, Language, Locale, and Time Zone Settings
Salesforce users require several settings that can be easy to overlook during a migration.
Settings Included in the User Workbook
Use Data Loader Values Instead of Display Labels
The option shown while working with Salesforce's user interface may not be the exact value expected during the import.
Use the exact value expected by Data Loader when preparing the migration file.
Why use the workbook? The user workbook includes tabs containing the accepted values for Email Encoding, Language, Locale, Currency, and Time Zone.
Remember the Is Active Email Limitation
Setting Is Active to true does not automatically send a new-user email when the record is inserted through Data Loader.
Key point: when preparing Salesforce user migration data, use the exact values expected by Data Loader rather than simply copying the labels shown in Salesforce.
Extracting Salesforce Profile and Role IDs
One of the most important preparation steps is obtaining the correct Profile IDs and User Role IDs.
Manually Locating Profile and Role IDs
Profiles
Navigate to Profiles in Salesforce and examine the record URL to locate the Profile ID.
Roles
Navigate to Roles and examine the relevant record URL to identify the User Role ID.
Record URL
The Salesforce record URL provides a direct way to identify the ID associated with the record.
When working with a small number of records, you can manually locate the Profile or Role and inspect its Salesforce record URL.
Exporting Profiles and Roles with Data Loader
Export the relevant Profile records with Data Loader.
Export the relevant Role records with Data Loader.
Mapping Names to Salesforce IDs
Profile Name
Profile ID
Role Name
Role ID
Bring the exported Profile and Role records into Excel
and use VLOOKUP to match each name with
its corresponding Salesforce ID.
Finalizing and Loading User Data with Data Loader
Once the user data has been prepared and the Profile and Role IDs have been mapped, copy the finalized information into a new CSV file.
Create the Final User CSV
Before loading the file, verify that the required fields are populated and that the Salesforce IDs have been mapped correctly.
Insert the Users into Salesforce
Verify the Field Mapping
Verifying and Storing Successful User Insertions
After the insertion is complete, review the Data Loader success file and preserve the successful records for future migration work.
Store the Successful User Records
Rename the success file to something such as:
user successThen copy the successful records into a new tab in your user workbook.
Preserve the Legacy ID to Salesforce User ID Mapping
Legacy ID
Salesforce User ID
Why keep the successful User IDs?
Keeping the Legacy ID → Salesforce User ID relationship creates a reusable reference for future migration steps. The Salesforce-generated IDs can later be used in VLOOKUPs, mappings, and upsert operations when migrating records that reference these users.
🧠 Quick Check
Why should you keep the successful user records after the Data Loader insertion?
Practice Salesforce User Insertion in a Developer Org
Practice the preparation, mapping, insertion, and verification process before working with real migration data.
The best way to become comfortable with Salesforce User Insertion is to practice the process in a Salesforce Developer Org. Load the provided test data and work through the preparation, mapping, insertion, and verification steps.
Work through the provided test data from preparation through verification so you can become familiar with the complete Salesforce User Insertion process.
🧪 Practice in a Salesforce Developer Org
Use the provided test data and work through the preparation, mapping, insertion, and verification steps in the Developer Org.
Repeating the complete workflow gives you a practical way to become comfortable with Salesforce User Insertion before performing the process elsewhere.
🔍 Double-Check Usernames Before Insertion
Before inserting the users, double-check the usernames. Salesforce usernames must be unique across all Salesforce orgs.
example.user@test.comPrevent username errors before they happen
If a username in the test data already exists elsewhere, modify it or generate a unique fake email address before running the Data Loader insertion.
🧠 Quick Check
What should you do if a username in your test data already exists in another Salesforce org?
Salesforce User Insertion: Mission Complete?
Before you move on to the next migration object, complete the quick mission below and make sure your Salesforce users are ready for the next stage.
Click each migration checkpoint once you've verified it. Your goal is to build a reliable Salesforce User Insertion foundation before loading the rest of your migrated data.
🪪 Create the Legacy ID
Confirm that your User object has a Legacy ID field that can connect historical users with Salesforce users.
🔗 Map Profile & Role IDs
Verify that the correct Salesforce Profile IDs and User Role IDs are mapped.
🧾 Check Required Fields
Make sure required user information and Salesforce-specific values are populated correctly.
🟢 Verify Is Active
Check the Is Active setting and avoid unnecessary Salesforce license issues.
👤 Check Username Uniqueness
Confirm that every username is unique across Salesforce orgs before insertion.
💾 Save the User Map
Keep the successful Legacy ID → Salesforce User ID mapping for future migration and upsert operations.
Your User Migration Foundation Is Ready!
Salesforce User Insertion is an important early step in a successful Salesforce data migration. By preparing users first, creating a Legacy ID, mapping Profile and Role IDs, and carefully preparing the required user fields, you create a reliable foundation for loading the rest of your migrated data.
Using Salesforce Data Loader makes it possible to insert users efficiently, while keeping the Legacy ID-to-Salesforce ID mapping gives you a valuable reference for future data loads, VLOOKUPs, and upsert operations.
Before completing your insertion, remember to verify the Is Active setting, Profile and Role IDs, username uniqueness, and required field values. These checks can help prevent common errors and unnecessary license issues.
Once your users have been successfully inserted and verified, you'll have a solid user map that can support the next stages of your Salesforce data migration.
Ready to practice? Use the provided test data in a Salesforce Developer Org and follow the tutorial step by step to put your Salesforce User Insertion workflow into practice.
Frequently Asked Questions About Salesforce User Insertion
Have questions about Salesforce User Insertion? These answers cover the most important parts of the process, from required fields and Profile IDs to usernames, Data Loader, Legacy IDs, and post-insertion verification.
Salesforce User Insertion is the process of adding user records to Salesforce, often using Data Loader. During a data migration, users are typically created early so historical record ownership and audit information can be mapped to the correct Salesforce users.
Creating users early allows you to build a user map that connects historical user IDs with their new Salesforce IDs. This is especially useful when migrating records that need to preserve ownership or audit information such as Created By and Modified By.
Yes. Salesforce users can be inserted using Data Loader when the required user information and Salesforce IDs have been properly prepared and mapped.
A Legacy ID is a custom field used to store the identifier of a user from the previous or legacy system. Creating this field as a Text field and marking it as an External ID makes it useful for future mappings and upsert operations.
Common fields that need to be prepared include Last Name, Alias, Email, Username, User License, Profile, and other required user settings. The exact data required depends on the Salesforce configuration and the user records being inserted.
Yes. Data Loader requires the Salesforce Profile ID rather than simply the profile name when assigning a profile to a user.
You can find them manually in Salesforce or export the Profile and Role objects with Data Loader. The exported information can then be used in Excel to map profile and role names to their corresponding Salesforce IDs.
If the Is Active field is left blank during the insertion, users can be inserted as active. If your Salesforce org does not have enough available licenses, this can cause insertion problems. Users can instead be inserted as inactive and activated later.
No. The Generate New Password and Notify User Immediately option is not available through Data Loader for concurrent user creation and welcome email sending. Inserting a user with Data Loader does not automatically mean that the user will receive a new-user email.
A Salesforce user alias has an eight-character limit. A common approach is to use the user's first initial followed by their last name or a shortened version of the last name.
Yes. Salesforce usernames must be unique across all Salesforce orgs, not just within the org where you are currently inserting the user. This is particularly important when using test data.
Modify the username or generate a unique fake email address that follows Salesforce's username format. This can help prevent duplicate username errors during your Data Loader insertion.
The success file contains the Salesforce-generated user IDs. Saving it alongside the Legacy IDs creates a useful mapping between your historical users and their new Salesforce IDs, which can be used during later migration and upsert operations.
Yes. Practicing the process in a Salesforce Developer Org is a good way to become familiar with preparing user data, mapping Profile and Role IDs, performing the insertion, and verifying the success results before working with production migration data.
Migration Tip: Keep your Legacy ID-to-Salesforce ID mapping after the insertion. This reference can save significant time when you begin loading records that depend on Salesforce User IDs.
Don't stop at the tutorial — take your Salesforce skills further.
Keep building your Salesforce knowledge with practical lessons, real-world migration techniques, and a community where you can learn, ask questions, and connect with other Salesforce professionals.
Continue learning beyond this article with Salesforce Masterclass.