Some links on this page are affiliate links: if you buy through them we may earn a commission, at no extra cost to you.
The most repeatable method is WP-CLI: run wp user import-csv to create or update accounts from a CSV, then wp user list --format=csv to export a filtered user list. If you work only in the dashboard, an importer plugin can also map CSV columns to user fields and metadata. WordPress WXR author mapping is a separate content-migration task, not a substitute for a user CSV import.
Choose the workflow that fits your site
| Workflow | Best for | Handles | Main trade-off |
|---|---|---|---|
wp user import-csv |
Administrators with terminal or scripted access | CSV account creation and updates, role assignment, optional new-user email | Requires command-line access and carefully prepared CSV data. See WP-CLI user import-csv documentation. |
wp user list |
Scriptable exports and filtered reports | CSV output, selected fields, role filters and network-wide listings | It is a user-listing export; custom metadata is not automatically guaranteed. See WP-CLI user list documentation. |
| Import Users from CSV plugin | Dashboard-only administrators | Basic account fields, roles and user meta from an uploaded CSV | Features, limits and compatibility depend on the installed plugin and hosting environment. See the WordPress.org listing. |
| WXR author mapping | Full WordPress content migration | Author creation, mapping or omission while importing posts and other WXR content | It is not a general-purpose standalone user CSV importer or exporter. See WP-CLI import documentation. |
Import accounts from CSV with WP-CLI
Prepare a CSV with a header row and run the command from the WordPress installation (or use WP-CLI’s global connection parameters for a remote or multisite target). The documentation’s example uses user_login,user_email,display_name,role:
user_login,user_email,display_name,role
alex,[email protected],Alex Rivera,author
sam,[email protected],Sam Lee,contributor
Import a local file with:
wp user import-csv users.csv
The command also accepts a remote CSV location or standard input. If an account already exists with a matching email address or login, it is updated unless you add --skip-update. To send new users their account details, add --send-email:
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
wp user import-csv users.csv --send-email
wp user import-csv users.csv --skip-update
For multisite, use the global --url parameter to select the site whose users should be changed. Confirm the target path, URL and credentials before running an import; a role value in the CSV can grant substantial privileges.
#1 Best Overall
Prepare and validate the file
- Use one account per row and keep the header names consistent with the fields you intend to populate.
- Check email addresses, login names and role names before import; remove accidental administrator roles.
- Run a small representative file on staging first, then verify account creation, updates, roles and notification behavior.
- Keep the original CSV in a restricted location because it may contain personal data or credentials-related information.
Export WordPress users to CSV
wp user list can emit CSV, restrict columns and filter by role. Export administrators, for example:
wp user list --role=administrator --format=csv
Export only selected columns when a complete listing is unnecessary:
Rank #2
wp user list --fields=display_name,user_email --format=csv
For a multisite network-wide listing, add --network:
Free tools Windows power users keep installed
One-click scans. No signup required.
wp user list --network --format=csv
The documented default columns include ID, login, display name, email, registration date and roles. Other available fields include sensitive values such as user_pass, user_activation_key and capabilities. Do not include those fields unless a specific administrative task requires them, and encrypt or otherwise restrict the resulting file.
Rank #3
- Handy note taking workbook for students
- Use to improve research skills and test scores
- Offers effective strategies and reference section
- Apply to textbooks, novels, research, on-line resources and class lectures
- Illustrates Venn diagrams, webs, tables, lists, summaries and more
Know what this export contains
This command exports the fields exposed by the WordPress user listing. It should not be treated as a guaranteed backup of every plugin’s custom user metadata. If a migration depends on membership, billing or other plugin-specific data, identify that plugin’s supported export and import path separately and test the round trip.
Import users from the WordPress dashboard
The WordPress.org “Import Users from CSV” plugin documents a browser workflow: install and activate the plugin, open the Users menu, upload the CSV and follow its import screen. It can add basic user information, assign roles, send optional new-user notifications and issue a password nag. Columns matching user-table fields are written to those fields; other column names are stored as user meta. That mapping makes the exact header names important. Review the plugin’s current settings and changelog before granting anyone permission to run imports.
- Create a backup and test site or staging copy.
- Build a minimal CSV containing only the fields you need.
- Open the plugin’s importer under the Users area and upload the file.
- Review the preview or validation messages, then run the import.
- Check several new and existing accounts, their roles, metadata and email notifications.
The listing points to WP All Export Pro for custom user exports to CSV, Excel or XML. That is an optional commercial route; WP-CLI remains a documented free export path for standard user listings.
Do these 3 things before closing this tab:
1Fix the driver behind crashes, sound loss and screen glitches2Repair Windows errors before they cause bigger problems3Scan for outdated or missing drivers - takes under a minuteDo not confuse CSV users with WXR content migration
When you import a WordPress eXtended RSS (WXR) file containing posts, pages or other content, wp import handles authors as part of that content operation. Its options can create missing users, use a mapping CSV with old_user_login,new_user_login columns, or skip author mapping. Depending on the installed WordPress Importer, it can also rewrite links from the old site. None of those options is a general replacement for importing a standalone CSV of user accounts.
Security checks before and after an import or export
- Restrict read and download access to CSV files; remove temporary copies when the migration is complete.
- Verify the destination site’s URL, database and role mapping before executing commands.
- Use staging for a representative test, especially when updating existing users or assigning privileged roles.
- After importing, inspect administrator and other high-privilege accounts, duplicate email behavior and failed rows.
- Keep WP-CLI and importer plugins updated. The “Import and export users and customers” changelog records historical fixes for CSV escape parsing that could shift fields, administrator-role checks, authorization checks for existing-account updates and restrictions on local file paths; those entries show why current security notes matter, but do not prove that the current release is vulnerable. See its WordPress.org changelog.
Troubleshooting common outcomes
An existing account changed unexpectedly
Matching email or login values cause updates by default with wp user import-csv. Re-run with --skip-update when the operation must create only missing accounts, and inspect the source CSV for duplicate identifiers.
Roles or metadata are wrong
Check spelling and the destination site’s available roles. In the dashboard plugin, confirm whether each header matches a user-table field or is intended as user meta; an unexpected header is saved as metadata rather than a core field.
The export is missing custom data
wp user list is a user-listing export, not a universal plugin-data backup. Use the relevant plugin’s supported exporter and verify that its importer can restore the same data.
The import targets the wrong site
For multisite or remote administration, confirm the WP-CLI global --url, path and connection settings before running a write operation. Print or inspect the target site’s identity with a harmless read-only command first.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

