How It Works

This Add On allows you to offer more than one pricing structure on the same membership level. Multiple pricing structures, such as a monthly and annual/yearly option, helps your membership appeal to a broader range of prospective buyers.

Payment plans help users make financial commitments less intimidating—allowing you to cast a wider net to potential members that want a discount for paying annually or would prefer a smaller monthly fee. By providing a means for anyone to become a member, regardless of their budget, you increase the chances of your membership site’s success.

Payment plans commonly offer incentives for people who commit to a longer term membership. One member can choose a larger initial cost that covers the full year of membership, while a more conservative member can pay frequent, lower-priced payments that add up to a bigger payout over the year for you.

Tip: You should have no more than four payment options for your members to choose from. Ideally, you want to aim for three payment options to include in your payment plan.

Note: Payment Plans cannot be used with Discount Codes.

Payment Plans vs. Individual Levels: Which Should You Choose?

This Add On is not required for you to offer different levels with different pricing structures. In fact, many membership sites like having distinct levels even if they all provide the exact same level of access to your site. This way, you can use the reports and filters within the PMPro admin area as well as the reporting tools provided through your payment gateway to see data about which membership levels are the most popular, churn rates by plan, and more.

There are no limits to how many membership levels you can offer in Paid Memberships Pro.

Pros of Using Payment Plans (vs. Separate Levels)

  • More straightforward checkout process for your users. If you only have one tier of membership access, but offer different pricing, you can bypass the Membership Levels page and show your plans as a simple radio select at checkout using this Add On.
  • Lock in members for a longer term. If users see the savings on an annual plan and prepay, its possible you will reduce churn for members paying in shorter intervals.
  • Easier to restrict content as the admin. A payment plan is attached to a single level, so you only need to protect any new content for that single level. Everyone on that level, regardless of their payment plan, will gain access to that content.

Pros of Using Separate Levels

  • More specific control over protected content. Even if you only have one tier of access, offering separate levels means you can occasionally offer an incentive or additional piece of content for members of a special level (i.e. a special post or download for people that pay you annually, only).
  • Easier filtering and reporting. The admin area of PMPro is designed to allow you to filter members and orders by level. You will not able to view a separate list of people that are paying you annually vs. monthly if you use payment plans. The same is true of your payment gateway’s built in reports. The plans are all part of the same “Product”, for example with Stripe, so the reporting will not be as robust as if the separate pricing structures were for separate levels (products).


You must have the Paid Memberships Pro plugin installed and activated with a valid license type to use this Add On.

  1. Navigate to Memberships > Add Ons in the WordPress admin.
  2. Locate the Add On and click “Install Now”.
    • To install this plugin manually, download the .zip file above, then upload the compressed directory via the Plugins > Add New > Upload Plugin screen in the WordPress admin.
  3. Activate the plugin through the Plugins screen in the WordPress admin.


  1. Create a membership level and set the pricing on the level to the default or most popular payment you offer. For example, set the main level up as a fixed price per month.
  2. Then, locate the “Payment Plans” section and click the “Add Payment Plan” button.
  3. Expand the individual payment plan to adjust the name, pricing details, and any additional settings related to expiration or trials.
  4. Add additional payment plans if you’d like to offer more than one. The default level pricing will be shown first in the list with any additional active payment plans shown below.
  5. Save the membership level and browse to the checkout page for that level to see your plans in action.

Payment Plan Setting Fields

Below is a list of the setting fields available for each payment plan:

  • Plan Name: The name of this payment plan, shown to users on the Membership Checkout page, Membership Account page, Membership Billing page as well as within the admin for your reference. An example plan name is “Annual” or “Paid Annually”.
  • Display Order: Adjust the order in which your plans are shown on the checkout page.
  • Is default payment plan?: Set whether this plan is the “default price” and should be shown as the level’s pricing in the main “Membership Level” section on the checkout page.
  • Payment Plan Status: Select whether the plan is “Active” or “Inactive”. If you delete the plan, you will no longer have the plan as a reference within the admin for any member or order that used the plan. If you have active members that have paid with this plan, set it to inactive instead of deleting the plan.
  • Pricing fields: These fields replicate the code PMPro membership level pricing fields which are explained in the documentation on membership level settings here.

Video: Payment Plans Add On Demo

Action and Filter Hooks

apply_filters( 'pmpropp_include_level_pricing_option_at_checkout', true, $level_id );
  • Optional; return false to hide the default level settings from the payment plan options at checkout.
  • Supports boolean value and the $level_id (allows devs to choose which level ID to show this option for).
apply_filters( 'pmpropp_plan_cost_text_checkout', $plan_name_raw, $plan )
  • Allow filtering of each plan cost text at checkout (Includes the plan name – cost text)
apply_filters( 'pmpropp_plan_html_template', $plan->html, $plan, $level_id )
  • Allow filtering the plan HTML input.


Membership Checkout page with a radio to select which payment plan the member would like.
Membership Checkout page with a radio to select which payment plan the member would like.
Add Payment Plans on the Memberships > Settings > Edit Membership Level admin page
Add Payment Plans on the Memberships > Settings > Edit Membership Level admin page
Expanded view to edit a single payment plan on the Memberships > Settings > Edit Membership Level admin page
Expanded view to edit a single payment plan on the Memberships > Settings > Edit Membership Level admin page

This is a Plus Add On.

Plus Add Ons are included in all Plus or higher premium membership plans.