Import and sync users
Use user sync to import large numbers of users from an Excel file. Unlike adding users one at a time, user sync lets you define reusable sync configurations with per-field conflict rules, preview changes before applying them, and optionally send new users a welcome email with a link to set their password. To add or manage users individually, see Add and manage user accounts.
From the left navigation menu, select Administration > Users, then select the User Sync tab.

Creating a sync configuration
A sync configuration defines how imported data maps to user fields and what to do when a conflict occurs. You create it once and reuse it every time you run that sync.
Select Create New Sync to open the creation wizard.

Step 1 — Name your sync
Enter a descriptive name for this sync configuration. A clear name helps when you have multiple syncs for different sources or departments.
Step 2 — Upload the template
Download the Excel template and fill it in with your user data. Select Download Template to get the file.
Open the downloaded file in Excel (or any spreadsheet application) and fill in the rows. Each row represents one user. When your file is ready, upload it in this step.
The template includes a sample row in italics that shows the expected format. Delete this row before uploading.
Step 3 — Define behavior
Choose how the sync handles each type of user record:
| Setting | Options | Description |
|---|---|---|
| New users | Create / Skip | Whether to create user accounts that don’t exist yet |
| Inactive users | Activate / Skip / Update only | What to do when a user in your file is currently deactivated |
| Users removed from file | Deactivate / Ignore / No action | What to do when a user from your last sync is missing from the current file |
“Users removed from file” compares the current file against the most recent successful run of this sync configuration — not against all users in the system. On the first run, this rule has no effect because there’s no prior baseline.
Step 4 — Conflict rules
Conflict rules determine what happens when an imported value differs from the existing value for a user already in the system.
Set a default strategy, then optionally override it on a per-field basis:
| Strategy | Behavior |
|---|---|
| Use source | Always use the value from the import file |
| Keep destination | Always keep the existing value in Workflow |
| Ask at runtime | Prompt you to choose for each affected user when running the sync |
| Update if empty | Only update the field if the existing value is blank |
| Force value | Always set the field to a specific fixed value you define here |
Fields not listed here use the default strategy.
Step 5 — Defaults
Set fallback values for locale, time zone, and language. These values are applied to any user in your file whose corresponding column is empty. They don’t overwrite existing values for users already in the system.
Step 6 — Post-sync actions
Optionally send new users a welcome email after the sync runs. The email contains a link for the user to set their own password — no temporary password is included. Leave this unchecked if you prefer to manage password setup separately.
This setting is a default for the configuration and can be toggled on or off each time you run the sync on the preview screen.
Welcome emails are only sent to users whose accounts were newly created by this sync run. Users who already existed, were reactivated, or authenticate via SSO do not receive this email.
Select Save to save the sync configuration.
Running a sync
From the User Sync tab, find your saved sync configuration and select Run.
Upload your file
Upload the Excel file containing the users to import. The file must use the same column structure as the template.
Preview
Before any changes are made, the system classifies every row in your file:
| Classification | Meaning |
|---|---|
| New | User doesn’t exist — will be created |
| Updated | User exists and at least one field will change |
| Deactivated | User was in the last run but is missing from this file (if “Users removed from file” is set to Deactivate) |
| Skipped | User matches an existing record with no changes, or is excluded by a behavior rule |
| Error | Row has validation errors and will not be imported |

Review the counts and select Continue to proceed.
If your organization uses named licensing and the import would create or reactivate more users than your available seats allow, the preview shows a warning and the Run button is disabled until the seat count is within your limit.
Resolve conflicts
If any fields have the Ask at runtime conflict strategy and a difference is detected, a conflict resolution step appears. For each conflict, you see the current value and the incoming value side by side. Choose which value to keep.

You can optionally save your choice back to the sync configuration so the same conflict is resolved automatically in future runs.
After resolving all conflicts, select Execute to run the import.
Results
When the import completes, you see a summary of what changed:

- Users added
- Users updated
- Users deactivated
- Users skipped
- Errors
Select any category to see the affected users. If errors occurred, the error details explain what was wrong with each row. Common causes include missing required fields (userName, email, firstName, or lastName), an invalid email format, or duplicate userName values within the same file.
You can also download a detailed export of the run results as an Excel file.
Sync history
Each sync configuration keeps a history of past runs. Select a configuration from the User Sync tab, then open the History tab to see a list of past runs with the date, status, and a summary of results.
Managing sync configurations
From the User Sync tab, you can:
- Edit — Update the name, behavior rules, conflict rules, defaults, or post-sync actions
- Pause — Prevent the sync from being run without deleting it
- Resume — Re-enable a paused sync
- Delete — Permanently remove the sync configuration and its history
A paused sync cannot be run until it is resumed. Users deactivated by a sync run remain in the system as inactive users and can be reactivated individually. See Active and inactive users.
Excel template fields
Download the template from any sync configuration’s upload step. The file includes all supported fields. Required fields are highlighted in yellow in the header row.
| Column | Required | Description |
|---|---|---|
userName | Yes | Unique login username |
email | Yes | User’s email address |
firstName | Yes | First name |
lastName | Yes | Last name |
middleName | No | Middle name or initial |
title | No | Job title |
department | No | Department |
division | No | Division |
costCenter | No | Cost center |
phone | No | Phone number |
location | No | Office location |
address1 | No | Street address line 1 |
address2 | No | Street address line 2 |
city | No | City |
state | No | State or province |
zip | No | Postal code |
country | No | Country |
locale | No | Locale code (e.g. en-US). Falls back to the sync default if empty. |
timezone | No | Timezone name (e.g. America/Chicago). Falls back to the sync default if empty. |
languageName | No | Display language (e.g. US English). Falls back to the sync default if empty. |
manager | No | Username of this user’s manager. The system looks up the manager by username. |
active | No | true or false. Sets whether the account is active on import. Defaults to true if omitted. |
cField1 | No | Custom field 1 |
cField2 | No | Custom field 2 |
Columns that aren’t recognized are ignored. Column headers are case-insensitive.