Looking to elevate your membership experience? If you’ve been using Ultimate Member but crave more advanced features and customization options, it’s time to migrate from Ultimate Member to Paid Memberships Pro.
In this guide we break down the exact steps to migrate your user list in Ultimate Member into a complete membership site powered by Paid Memberships Pro. This developer-focused guide summarizes everything we’ve learned about the migration process into step-by-step instructions.
Table of contents
- Make the Decision to Migrate to PMPro
- How to Safely Migrate a Membership Site: Ultimate Member to Paid Memberships Pro
- Part 1: Migrating Members
- Part 2: Configuring Content Protection and Other Features
- Welcome to The Future: A More Powerful Membership Site
- Frequently Asked Questions
Make the Decision to Migrate to PMPro
Embracing PMPro will unlock a world of possibilities for growing and efficiently managing your membership site. While switching platforms may sound scary, there is a way to safely migrate from Ultimate Member, while preserving all of your existing user profile data.
No matter what type of membership site you operate—whether it’s a course or coaching site, online community, premium subscription platform, or member directory—PMPro offers the most advanced features and deeper customization options, tailored to suit your unique needs.
If you are using a premium version of Ultimate Member with WooCommerce, refer to our documentation on maintaining active subscriptions through the import process here.
How to Safely Migrate a Membership Site: Ultimate Member to Paid Memberships Pro
Active membership sites are constantly changing—with things like new member signups, cancellations, and upgrades, receiving new post comments or posts in forums, and myriad other engagement activities.
So when it comes to migrating your membership site to a new platform, it’s important to minimize interruptions to the live environment.
For this reason, we recommend that you temporarily close your membership site to the public. If your site happens to be on the smaller side, you can probably take it down for a day or two and not suffer any major consequences.
If you can’t possibly put your site in maintenance mode, we’ve included information on how to complete your migration through the use of a staging environment.
The process of migrating from Ultimate Member to Paid Memberships Pro involves two crucial steps:
- Transferring your membership data to PMPro.
- Moving the content protections from the old system to the new system.
This guide will provide you with comprehensive instructions and advice to ensure a smooth migration. By following these steps, you will be able to maintain access for all existing members that joined via Ultimate Member, and begin accepting new member registrations (and new subscription revenue) using Paid Memberships Pro.
So, let’s get started.
Part 1: Migrating Members
1. Backup Your WordPress Website
In our article Backup Your WordPress Site: The Complete Guide to Site Backups, we highlight the significance of frequent backups and provide a guide on how to create one for your site. This is particularly crucial for membership sites that involve customer accounts and sensitive information.
👉 Please make sure to create a backup of your site before proceeding with the migration process.
We have a downloadable version of this setup guide with the specific steps you need to convert Ultimate Member to PMPro—without affecting current member profiles.
2. Pause Your Live Website
A smooth migration from Ultimate Member means that you do not lose or mismatch any data. To ensure this doesn’t happen, we recommend temporarily pausing your live website. This includes:
- Deactivating all new membership sign-ups
- Putting your main website in “Maintenance Mode” or “Coming Soon” mode.
You can use plugins like WP Maintenance Mode & Coming Soon to add a maintenance or coming soon page to your website.
Note: If it’s not possible to pause your active site, proceed to Prepare Your Import Sheet. Keep in mind that some data may still need to be moved before the final import, which is normal.
3. Install and Set Up Paid Memberships Pro
It’s time to install Paid Memberships Pro on your website or on a staging site.
Note: If you’re unable to turn off your main website or want to test PMPro’s functionality, it’s advisable to use a staging site or a local development site.
Keep in mind that once you create a staging site, your live site and development site will no longer be in sync. If you choose this option, there will be some Ultimate Member data that you’ll need to migrate to the new site before it goes live.
If You’re Installing PMPro on Your Main Website
Our Initial Setup guide provides information on how to install PMPro through the WordPress dashboard or by downloading a PMPro package.
When you are setting up PMPro, you may instead want to edit and use your existing Ultimate Member pages as the same page PMPro requires. Here’s a table explaining what to do with each Ultimate Member Page and PMPro required page.
|Ultimate Member Page||PMPro Page||Recommended Action|
|Register||Membership Checkout Page||Edit the “Register” page and replace the UM shortcode with the Membership Checkout shortcode or block.|
|Login||Log In Page||Edit the “Login” page and replace the UM shortcode with the Log In shortcode or block.|
Note: This is only used by the Member Directory and Profile Page Add On.
|Edit the “User” page and replace the UM shortcode with the Member Profile shortcode or block|
|Account||Membership Account Page||Edit the “Account” page and replace the UM shortcode with the Membership Account shortcode or block.|
Note: This is only by the Member Directory and Profile Page Add On.
|Edit the “Members” page and replace the UM shortcode with the Member Directory shortcode or block.|
|Logout||Not used. PMPro uses the Log In page for these actions.||You can safely delete this Ultimate Member page at the end of the process.|
|Password Reset||Not used. PMPro uses the Log In page for these actions||You can safely delete this Ultimate Member page at the end of the process.|
Membership Levels vs. User Roles
Before we dive into adding and configuring membership levels, it is important to understand the difference between roles and membership levels.
Ultimate Member uses WordPress user roles to manage user capabilities.
On the other hand, Paid Memberships Pro intentionally separates user capabilities from membership access and instead uses membership levels to manage members.
For this migration guide, most sites can simply eliminate any custom roles they had configured via Ultimate Member and instead reset all users to the default role of “Subscriber” during the import process (covered later in this guide). But there are a few exceptions:
You need to keep using custom roles if:
- Your membership gives users access to do advanced things within the WordPress admin, like editing or publishing posts, moderating forums, approving comments, and more.
- You need to protect access to another WordPress plugin or third party feature that cannot be done using membership levels. Refer to our guide on how to restrict access to anything in WordPress to get a full picture of all the things PMPro can protect directly, without the need for custom roles.
You do not need to keep using custom roles if:
- Your members have basic WordPress user access (equivalent to the “Subscriber” role). This role can view content and edit their own user profile. PMPro can control whether Subscribers have access to a limited view of the WordPress admin area or are redirected from this unnecessary dashboard.
- Everything you need to protect can be done via PMPro’s extensive content protection settings.
Set Up Membership Levels in Paid Memberships Pro
Whether you need to maintain custom roles or not, the next step is to set up your membership levels in PMPro.
- Navigate to Memberships > Settings > Membership Levels in the WordPress admin.
- Click Add New Level and configure level settings.
If you are preserving custom roles or otherwise need to adjust user capabilities for this level, check out the free Add On: Roles for Membership Levels. This Add On maps a default or custom WordPress user role to the membership level.
This Add On is not required and should only be used for sites that must adjust user capabilities for their members.
When a user signs up for this level, their role will be changed to the custom role you define. When they lose that membership level, their role is reset to the site default as defined under Settings > General in the WordPress admin.
👉 Make sure to save the membership level IDs for future reference, and hold off on connecting your payment gateway until later.
If You’re Installing PMPro on a Staging Site
Once your staging site is set up, make sure that it’s not connected to WooCommerce via Ultimate Member’s WooCommerce Integration or your Paid Memberships Pro payment gateway.
Note: During the migration process, some actions on your staging site might result in system emails being sent from WordPress, Ultimate Member, or Paid Memberships Pro. To prevent accidental sending of messages from your staging site, you can use the Disable Emails plugin.
4. Set Up User Fields (If Applicable)
Ultimate Member is, primarily, a user registration and profile plugin. Paid Memberships Pro has all of these features—and more.
Paid Memberships Pro utilizes User Fields to create and gather additional checkout fields and custom profile fields for your members and administrators.
If you aren’t using custom profile fields, proceed to Export & Import Your Data.
Ultimate Member fields are stored in user meta (just like the user fields created by Paid Memberships Pro). This is the WordPress database table that stores all the custom user data that is not part of the user object itself.
Paid Memberships Pro features an intuitive settings interface to create and manage custom profile fields. You’ll need to exactly match the Meta Key name in Ultimate Member to the Field Name in PMPro.
Once this is done, PMPro will automatically recognize the existing user meta information for all your members. You do not have to export and re-import that data.
- Navigate to Memberships > Settings > User Fields in the WordPress admin.
- Create a new field group or add fields to the default group.
- Add a new field for every custom field you want to maintain from your Ultimate Member forms.
- When you create fields, you must set the field’s name to the exact same Meta Key used in your Ultimate Member Forms.
- Navigate to Ultimate Member > Forms in the WordPress admin.
- Select a form to edit.
- Edit a field in the Form Builder section.
- Locate the field’s setting for Meta Key.
- This is the exact value you want to use for the Name field in PMPro User Fields settings.
- Repeat these steps for each custom profile field you want to preserve.
- Add new fields for new data you want to capture.
- Save your fields settings.
If you are trying to create a User Field for a field type that PMPro does not support via the Use Fields Settings page, it may be possible to set the field up via custom code.
Check out the User Fields documentation for specific help configuring fields.
5. Export and Import Your Data
Before you start playing with CSV files, here’s a quick sidebar that makes migration easier for a majority of sites…
Unlike our other migration guides, the Ultimate Member migration can be completed without an import. Here’s the case where this is possible:
- You are only using Ultimate Member to register users with the Subscriber role.
- You want all Ultimate Member members to get the same free membership level in Paid Memberships Pro.
If this sounds like exactly what you need, this process is a whole lot simpler. Skip everything we have below about exporting data and preparing an import, yadda, yadda.
Instead, check out this tutorial on how to bulk apply a membership level to all users without a level. This single database script can be run on your entire Users list to give every User the same level of membership access.
Our PMPro Toolkit Add On also includes a script under the Tools menu of your dashboard. This script gives existing non-member users a membership level without having to run SQL queries yourself.
Then proceed to Resume Your Live Website below.
If you are managing multiple Ultimate Member roles, keep following the steps below on how to export your Ultimate Member data.
First, Export Your Ultimate Member Data
Ultimate Member does not offer any built-in Member Export features. Instead, you’ll need to use the Import and export users and customers plugin by codection to get your member data out of Ultimate Member.
- Navigate to Plugins > Add New
- Search for Import and export users and customers
- Install and Activate the plugin (you want the plugin by codection)
- Navigate to Tools > Import and export users and customers in the WordPress admin
- Select the Export tab and configure the export settings for your needs. Here is our recommended export setup:
- Roles: All roles
- Columns: user_email,username,role
- You do not need to modify any other export settings
- Click Download to export your data to CSV
Now that you have your Ultimate Member data, you are ready to create a file that PMPro can use to import members.
There are two plugins you will need:
We have a standard Import Users CSV template for PMPro that serves as a decent baseline.
Prepare Your Import File
The table below shows the Ultimate Member data fields you should map to the required PMPro Import fields:
|PMPro Column||Exported Data Column||Data Description and Location|
|user_login||username||Required field to match the imported data to the existing WordPress user.|
|role||role||When you switch from Ultimate Member to Paid Memberships Pro, most sites will want to change all member roles to the WordPress site default role of “subscriber”.|
This is the base level role and capability for users in WordPress.
Before you edit this column, duplicate the data so that you can use the Ultimate Member role names to match to your new PMPro Membership Level IDs.
|membership_id||(add this)||Add the numerical ID for the level in Paid Memberships Pro. Match the former Ultimate Member role name to the corresponding (new) PMPro Membership Level ID.|
|membership_status||N/A||For this migration, it is recommended that you only import members with an ‘active’ status and remove all others. Create a role for |
There are more optional fields you can add to your import spreadsheet, such as membership start and end dates (if you want to set an expiration date for your members). Ultimate Member doesn’t natively support expiration dates, but they do integrate with WooCommerce in their Pro version. If you were using that integration and want to set an end date for members based on when their membership should renew, you can include that here.
For more guidance on maintaining active subscriptions or setting additional fields in your import file, refer to the Import Users From CSV Integration documentation.
Export the file to CSV and Test the Import
We recommend testing the import with a subset of your data (the first 10 records) to ensure that everything works as expected.
- First, export the first few rows CSV file With your exported .csv file, adjust the rows to only include the first 5 or 10 records.
- Run that import by following the directions on the Import Users from CSV Add On documentation page.
- Double check the data to be sure everything looks correct. You can check your Members List under Memberships > Members.
If everything looks correct, you are ready to do the full and final import. To do this, repeat the process from your test above using the full set of data (minus those test members already imported).
6. Resume Your Live Website
You’re almost done! Now it’s time to connect your payment gateway in PMPro.
According to the Ultimate Member docs, you can completely remove Ultimate Member from your WordPress by following these steps:
- Navigate to Ultimate Member > Settings > Misc in the WordPress admin.
- Enable the Remove Data on Uninstall setting, then save changes.
- When this setting is turned on the Ultimate Member plugin will completely remove all data when the plugin/extension is deleted.
- Navigate to Plugins in the WordPress admin
- Deactivate the Ultimate Member plugin
- Delete the Ultimate Member plugin
This process only removes Ultimate Member plugin settings. It does not change any user information, including their current role or profile fields.
Now, activate your payment gateway in Paid Memberships Pro. PMPro has only one settings page to configure the payment gateway for all memberships. Just navigate to Memberships > Settings > Payment Settings. The process of setting up a payment gateway is also outlined in the Initial Setup guide we mentioned earlier.
Part 2: Configuring Content Protection and Other Features
There are some features in Ultimate Member that are handled a little differently with PMPro. In this section, we cover the main content protection features of PMPro as well as how to closely replicate other features you may have been using in Ultimate Member
Restrict Access to WordPress Content
Every membership plugin handles content restrictions in a different way. With Paid Memberships Pro, you can restrict individual pages, posts, or entire categories of posts.
Browse our documentation on restricting content to learn more about the various ways you can protect your content with PMPro.
- Posts and Categories
- Other content types including CPTs
- Community features like bbPress and BuddyPress
You’ll need to manually update every piece of content that was protected through the Ultimate Member methods to now use the Paid Memberships Pro methods. If you have a very large membership site, there are some developer-level methods to bulk apply content restrictions.
Here are a two primary resources:
- Methods to Restrict Access by Membership Level in Bulk
- Developer’s Toolkit: Add On to duplicate content restrictions for newly added levels.
Create a Member Directory and Public or Private Profiles
Paid Memberships Pro offers a plugin for Member Directory and Profiles which you can check out here.
This plugin is necessary for sites that want to maintain Ultimate Member’s directory and profile features.
You can customize the appearance and layout of the member directory using shortcode and block settings. The member directory and profile page can be adjusted to match your necessary fields, layout, and privacy settings.
When you have your users imported into PMPro and have the PMPro Member Directory Add On installed and activated, users should all auto-show in the default PMPro member directory.
While Paid Memberships Pro provides a basic member directory functionality, you may need to develop more advanced member filtering and search options on your own. We have a basic guide on how to allow members to filter results in your Member Directory that you can use to guide this extended development.
Replicate Other Ultimate Member Features
To replicate the social features of Ultimate Member with Paid Memberships Pro, you may need to consider adding other plugins such as BuddyPress or bbPress.
Not every membership site is using these features (I’m talking about things like messaging, shared profiles, directories, and member search). If you are, here are a few additional links to explore:
- BuddyPress Integration
- bbPress Integration
- Member Homepages
- Nav Menus Add On
- Redirect Non-Members Away From Member Content
Ultimate Member also has some features related to redirection, homepage access, and more. Refer to these additional resources if you were using these features.
- Member Directory and Profile Pages
- Member Homepages
- Nav Menus Add On
- Redirect Non-Members Away From Member Content
Welcome to The Future: A More Powerful Membership Site
You did it! You’ve successfully migrated your members from Ultimate Member to Paid Memberships Pro, and configured your content protection so that your membership site is officially ready for action.
You can now think about how you want to grow your membership—perhaps through some of PMPro’s powerful revenue-generating features like:
- Recurring subscriptions made possible through our free built-in payment gateways.
- New membership levels with exclusive premium content.
- Members-only Courses
- Community Features
… and loads more.
If you’re still in need of additional help, be sure to check the Frequently Asked Questions section below, or contact our support team if you’re a premium member.
We’re excited that you’ve made the switch to the best membership plugin for WordPress, and we’re right here by your side to help you take your membership business to new heights. 🚀
Frequently Asked Questions
This seems really complicated!
If this is all too overwhelming or confusing for you, you should consider hiring a developer. We recommend working with one of our Codeable freelancers or agency partners to make sure your migration goes as smoothly as possible.
If you’re a premium member, you can always reach out to our support team for help as well.
What is a Staging Site?
A staging site is essentially a duplicate of your website, where you can test out new features and make changes without affecting your live website.
Creating a staging site allows you to get all of your membership data in place before merging it with your live site.
Do I Need a Staging Site?
A staging site is a non-public version of your site’s code that powers your live membership site. Your membership’s staging site, if set up properly, will allow you to add and test all kinds of things before releasing them on your live site.
Related: How to Set Up a Staging Environment
With a staging site, you can test things like:
- Code recipes
- New features
- New plugins
- Plugin updates
If you have a very active membership site that receives a lot of traffic, or you don’t have a lot of development experience and you want to experiment without killing your live site, using a staging site is a wise choice.