Create a Subscription Website with WordPress

That first ecommerce sale is an exciting milestone for any online entrepreneur. But creating a subscription website and establishing your first recurring payment agreement with a customer? Now that’s a rush unlike any other!

Subscription websites are different than standard ecommerce sites in that they typically bring in recurring payments from customers. If you’re selling online, take a moment to consider whether or not you offer a product or service that would lend itself to the subscription business model. If you do, it’s in your best interest to create a membership website with WordPress as soon as possible. The longer you wait, the more recurring income you’re missing out on.

You’ll need to have a WordPress website in order to follow along with this step-by-step guide. Check out our free WordPress guide or visit SiteGround if you don’t have a WordPress site of your own already. Our guide will walk you through the process of building your website yourself, while hosting providers like SiteGround include automated WordPress installation with their hosting plans.

What is a subscription website?

The premise of a subscription website is simple. Instead of the one-time exchange that a standard ecommerce website facilitates, paid subscriptions offer access to a product or service as long as a customer is subscribed.

The membership might be offered indefinitely in exchange for a one-time payment, but more often than not, customers are asked to pay a recurring fee in order to stay subscribed. These fees may be paid monthly, yearly, or between terms of a customer’s preferred length.

Keep in mind that your product or service should continue to deliver value to customers throughout the lifetime of a subscription. Charging a recurring fee for a one-off product doesn’t make a lot of sense unless the recurring fee is part of an installment plan. Once the incentive to continue paying is gone, you can expect the customer’s subscription to end soon after.

Why should I create a subscription website with WordPress?

Subscription websites have the potential to bring in recurring payments. This consistent flow of income is important if you or your company incurs ongoing expenses as a result of your website’s offerings.

Subscription payments can serve as an offset to your ongoing costs at first, but those costs should decrease as you continue to grow your customer base. Once your venture is cash flow-positive, or if your only ongoing costs are time, customer payments can serve as a steady source of profits instead. Passive income is, after all, the ultimate goal of most subscription websites.

Speaking of profits, recent studies suggest that there’s never been a better time to create a subscription website. Metrics published by Zuora late last year reveal that the growth rate among subscription services is triple that of similar S&P 500 growth during the same period. Now more than ever, consumers are willing to establish payment agreements with websites that are able to deliver consistent value on a regular basis.

Zuora Subscription Business Model Growth Graph

As far as platforms are concerned, few alternatives are better equipped to support paid memberships than WordPress. It’s completely free, it’s user-friendly, and more importantly, it’s well-supported by capable developers. This high level of support yields a wide selection of subscription plugins like those you’ll learn about ahead.

Physical vs. Digital Subscriptions

The majority of your website’s offerings will probably fall into one of two groups: physical or digital. Physical products are tangible goods that are shipped to a customer. Digital offerings, on the other hand, are delivered to and consumed from the customer’s laptop, smartphone, or similar device.

Examples of successful companies offering physical product subscriptions include BarkBox and Dollar Shave Club. Both companies ship subscription boxes to their members, but the similarities pretty much end there.

BarkBox shipments are never the same. Each includes dog toys and treats that adhere to a theme, and that theme changes every month. In contrast, a subscriber’s DSC box usually contains all of the same essential grooming products as the box that came before.

But make no mistake: there’s a market for both subscription models. For every consumer in need of a never-ending supply of essentials, there’s another in the market for regular deliveries of snacks or apparel.

BarkBox Subscription Website

Netflix and Spotify are among the most popular digital subscriptions, but you’re probably not trying to create the next killer entertainment platform. Instead, look to companies like The Motley Fool or musicians like Alicia Keys when seeking inspiration for your subscription website. The former asks for an annual fee in exchange for investment articles and recommendations, while Alicia Keys provides fans with exclusive blog posts, photos, videos, and more via her membership website.

Many of the subscription plugins for WordPress will support both physical and digital products, but most excel at one or the other. If you offer both, think about which you’re likely to sell more of then proceed accordingly.

The step-by-step tutorial for physical product subscription websites is just ahead. Readers should continue scrolling for instructions that are specific to digital membership websites.

Build a Subscription Website for Physical Products

WordPress is the perfect platform for anyone looking to create a subscription website for physical products. That’s because WooCommerce, the platform’s top ecommerce plugin, is easily extended to support recurring payments.

The developers of WooCommerce offer an official subscription extension of their own, but the instructions ahead were written for Subscriptio, a popular substitute. Subscriptio offers many of the same features as the alternative and at a quarter of the price. But you’ll need to install the WooCommerce plugin before you can use either extension.

Install and Configure WooCommerce

If you’re running an online store with WordPress, you’ve probably installed WooCommerce already. If you haven’t, now is the time to do so.

You can install and activate the ecommerce plugin from the plugin repository without ever leaving your website’s control panel. Simply click or tap the “Add New” item in the Plugins submenu of your WordPress control panel, search for “WooCommerce,” then click or tap to install and activate.

WooCommerce Physical Digital Ecommerce Plugin

You’ll be directed to a setup wizard if you’re installing WooCommerce for the first time. During this quick setup process, you’ll be asked to provide a store address, a default currency, and more.

You can proceed through the wizard or you can use the “Not right now” link near the bottom of the screen to skip this process. Leaving the wizard will not deactivate WooCommerce, and you can return to the wizard at any time by hitting the “Run” button near the top of any control panel screen. Alternatively, you can configure the plugin yourself from the WooCommerce Settings screen.

WooCommerce Setup Wizard Welcome Screen

After asking what types of products you’re selling, the wizard may present you with subscription and membership website checkboxes. Do not check these boxes. Doing so can create conflicts with the subscription plugin you’ll install later.

Pay close attention to the many buttons and toggles near the end of the guided setup process. Some of them will install and activate additional plugins or a different theme if they’re clicked, tapped, or left enabled. As a rule of thumb, you shouldn’t add any plugins or themes to your WordPress website unless you’re sure you’ll need them.

Install the Subscription Plugin

Your website is ready for a subscription plugin of your choosing once WooCommerce has been configured. Subscriptio is available from the CodeCanyon marketplace and offers all of the features you’ll need to charge a recurring fee for physical products.

Subscriptio CodeCanyon Listing

Your plugin purchase will unlock instant access to a ZIP file which you can then upload to your WordPress website. But before you buy, you should take the plugin for a test drive to get a feel for how it works. Hit the “Demo Page” button near the top of the plugin’s CodeCanyon page to test the tool as both a customer and as a shop owner.

You’ll find a support link next to the demo link. The support page includes a handful of walkthroughs and a contact form for shop owners left with post-installation questions. The support page’s questions and answers section should prove especially useful as you create a subscription website with the plugin.

Review Settings

Whether you’re testing Subscriptio from the demo page or running it from your own website, you’ll see that, once active, it adds a Subscriptions submenu to the WordPress admin menu. This submenu contains a link for some basic plugin settings.

Subscriptio was designed to offer a hands-off experience for the shop owner, so settings are limited. You can leave most of the settings that are here to their defaults.

Still, you should review the “Gateways” tab of the plugin’s Settings screen to ensure that you’re ready to accept payments. Subscriptio supports PayPal as well as the Stripe payment gateway. Customer renewal fees cannot be automated unless your preferred gateway is configured from the Subscriptio Settings screen, and this is true even if you’ve previously configured your gateway through the WooCommerce Settings screen.

Add a Product

The true power of WordPress subscription plugins is made obvious when it comes time to add and manage products. Subscriptio in particular blends so seamlessly into the WooCommerce admin interface that the features it unlocks are easily overlooked.

Head to the product admin screen of any website running the plugin and inspect the “Product data” panel closely. If you’re familiar with this very important panel, you’ll quickly spot a checkbox that wasn’t there before: a “Subscription” checkbox.

Create a Subscription Website Product

Checking this box reveals a few additional text fields and dropdowns for your new or existing product. Among these are fields for billing cycle, free trial, lifespan, and signup fee.

Most of these fields and dropdowns are self-explanatory. Term lengths for any product can be defined in days, months, weeks, or years. If you’re offering a subscription that should continue as long as a customer is willing to pay, be sure to leave the “Lifespan” field blank. Otherwise, subscriptions and corresponding payments will automatically end once an agreement’s lifespan has been reached.

Bear in mind that you can assign unique subscription rules to any number of WooCommerce products. If you plan to offer discounts to customers who sign up for longer billing cycles, you can do so with multiple products.

And don’t forget to add detailed descriptions and high-quality photos to your subscription products. Customers want to know what they’re paying for, especially when they’re paying for it more than once.

Manage Subscriptions

You’ll find a Subscriptions item at very top of the similarly labeled Subscriptions admin submenu. Click or tap it to review all customer subscriptions. By default, subscriptions of any status are displayed, but you can use the links above the screen’s list to filter as needed.

To manage an existing subscription, just click or tap an order ID or customer name. Doing so will direct you to the subscription details screen. From this screen, you can edit customer information, change the status of the subscription, send your customer notes, and more.

Create a Digital Membership Website

WordPress is more than capable as a platform for physical product subscriptions. But if what you want is to create a subscription website for digital content, WordPress is without a doubt one of the very best tools for the job.

The core WordPress experience offers all of the features needed to craft and restrict content. But to create a membership website that charges for access to your content, you’ll need to install a third-party plugin.

Given that WordPress lends itself so well to the paid content business model, you’ll find no shortage of WordPress membership plugins around the web. This walkthrough was written for Paid Member Subscriptions by Cozmolabs because of the plugin’s many free offerings.

Install Paid Member Subscriptions

Paid Member Subscriptions is available from the WordPress repository, so you can install the free version from your control panel’s Plugins screen. Again, there are many alternatives out there, so be sure to install and activate the plugin from developer Cozmolabs.

Paid Member Subscriptions in Plugin Repository

Unlike similar plugins for physical subscriptions, Paid Member Subscriptions does not require that WooCommerce be installed. In fact, WooCommerce will create overhead of its own, so you should avoid it altogether if you don’t plan on selling physical products.

Once activated, Paid Member Subscriptions will walk you through a guided setup process not unlike the WooCommerce wizard. You can set these preferences now or from the plugin’s Settings screen at a later time.

One of the first questions the wizard will ask is whether or not you’d like to create membership pages automatically. The plugin requires these pages, and building them by hand can be time-consuming, so go ahead and hit that button.

Paid Member Subscriptions Setup Guide

The next step of the guided setup process will ask you to enable payment gateways. The free version supports PayPal standard as well as offline payments.

Offline payments in particular will prove useful if you want to allow users to create accounts so that they can pay by cash or check at a later date. PayPal standard is convenient for users with a PayPal account, but this gateway does not support recurring payments. This poses a problem if you want to charge for monthly or yearly access to your content (as opposed to lifetime access for a one-time fee).

Among many other features, the PRO version of Paid Member Subscriptions unlocks the PayPal express and Stripe payment gateways. Both support automated recurring payments. And Stripe provides an especially seamless checkout experience since your users will never have to leave your website to pay.

Create Subscription Plans

The last step of the setup wizard will invite you to create subscription plans. If you skip this step now, you can create the plans later by clicking or tapping the “Subscriptions” item in the admin menu’s “Paid Member Subscriptions” submenu.

The subscription plan screen consists of a few different fields and dropdowns. Among the most important fields are those tied to your plan’s duration, price, and signup fee.

Create Membership Plan Details

You can set a plan’s duration or length to any number of days, weeks, months, or years. If you leave this field blank, any members who pay to join will remain subscribed indefinitely.

The price and signup fee fields are fairly self-explanatory. The key difference between these two values is that users will be charged your plan’s price at the beginning of each term or billing cycle, while the signup fee will be charged only once.

Before you save your membership plan, ensure that you’ve chosen “Create new user role” from the “User role” dropdown. With this option selected, the plugin will create a custom role for your plan and will assign it to active members. This approach will make it easier to identify active members throughout your WordPress control panel.

The subscription plans you’ve created will be presented to new users during the registration process, while existing members can view available subscriptions from the Account page. If you’ve added more than one, users will be asked to pick a plan before paying.

Restrict Content

Now that you’ve created plans for your membership website, you’ll need to restrict content. This step is critical if you choose to create a subscription website with WordPress. If you skip it, registered users will have access to your content whether or not they’ve paid.

The easiest way to restrict your WordPress pages and posts to paying members is with the Content Restriction toggles. Paid Member Subscriptions will display these beneath the block editor and classic editor as long as the plugin remains active.

WordPress Paid Member Subscription Editor Fields

By default, all of your pages and posts will be visible to anyone without an account or an active membership. To restrict content, you’ll need to check one or more of the “Display For” boxes beneath the Display Options heading.

After you’ve defined your content’s user requirements, you should select a restriction type from the same Display Options panel. The Settings Default restriction will use the restriction type that you’ve set from the plugin’s settings. You can adjust these defaults by clicking or tapping the “Settings” item in the admin menu’s Paid Member Subscriptions submenu. From there, navigate to the “Content Restriction” tab.

WordPress Page Post Restriction Settings

Available restriction types include message, redirect, and template types. The message type will simply display text of your choosing in place of page or post content, while the redirect type will forward users without an active membership to another URL.

The template restriction type will display a custom page template to users who do not meet plan requirements. While this restriction type is powerful, you’ll need to know how to add custom page templates to a child theme in order to get the most out of it.

Test Content Restriction

Make sure to save changes to your page or post after you’ve applied your content restriction rules. When you’re finished, you should test your updates as a user who is not signed in.

Content Restriction Message Example

The easiest way to do this is to open a private or incognito window with a browser of your choosing. With the window open, navigate to your restricted page or post. Your website should display a message or redirect you to another URL depending on the restriction type you selected.

Advanced: Check for a Subscription Programmatically

Because Paid Member Subscriptions automatically assigns and removes roles when a member joins or cancels, the process of programmatically checking for membership status is very straightforward. That’s assuming that you’re comfortable writing your own WordPress plugins and themes. If not, it would be best to apply content restrictions from the WordPress editor as outlined above.

Say, for example, that you want to load and display an additional stylesheet for paid members. You would simply check to see if the logged-in user is assigned the role that is tied to your membership plan. Your code might look something like this:

function enqueue_paid_member_style(){
  $user = wp_get_current_user();
  if (!is_user_logged_in() || !in_array('example-role', $user -> roles)){
    return false;
  wp_enqueue_style('paid-member-style', get_stylesheet_directory_uri() . '/css/member.css');
add_action('wp_enqueue_scripts', 'enqueue_paid_member_style');

Be sure to replace the code’s example-role identifier with the one assigned to your custom role. Refer to the value returned by wp_roles() for a list of all available roles and their identifiers.

Final Thoughts

And there you have it! Whether you want to create a subscription website for physical products or a digital membership website for paid content, the WordPress platform has a plugin for you.

Draw inspiration from leaders in the subscription business as you price and fine-tune your offerings. As many successful companies have proven before, a well-crafted membership website can provide a steady source of recurring income to webmasters who are able to provide real value to paying customers.

Our blog posts and email updates contain occasional affiliate links to third-party products and services. This means that we stand to earn a commission on any sales delivered with the links, but we do not recommend products or services that we don't use and love.