Building a membership site is incredibly popular, but can also be a bit technically overwhelming. So many different tools and all of the plumbing to put it all together.

Plus, you’ve got all of the various tool options. Which membership site plugin do you get? Which theme do you use? How do you handle recurring billing? What about online courses? What emails do you send to members and when do you send them?

The list goes on.

I build membership sites all the time for clients. So, what I’d like to do is offer up a blueprint for building a membership site.

I will walk you through each component. Making them work together. The email sequences. The pages. All of it.

You can look at this like a guide. I can’t possibly cover every little aspect because every site and every market is a little different. But, I will show you how a lot of the plumbing works.

I also want to be clear…

This is clearly not the only way to build a membership site. There are other tools. There are even third-party services that purport to automate the entire thing. But, the tools and build-out that I use is solid as a rock. It is what I use. And I will also explain my reasoning.

Grab your copy of the Membership Site Planner?

Download this worksheet to guide you through the idea and planning phase of your new membership site – setting you up for maximum signups and income.

OPTIN – Membership Site Planner – INLINE

My Guiding Principle On A Membership Site Build

One of my top goals any time I build a membership site is what I refer to as digital sovereignty. In other words:

  • I do not like to involve third-party, remote services if I can avoid it.
  • I don’t like building a site on “rented land” (aka a subscription service) that if you cancel threatens your business operations.

It is for this reason that I build fully-functional membership sites within WordPress itself. And I try to avoid use of third-parties such as remote email list hosts.

I have nothing against third-party services like ActiveCampaign, ConvertKit and the like. I also fully recognize the convenience of third-party shopping carts like Thrivecart. These tools, in some ways, can remove some of the complexity out of building a membership site and ensuring everything just works. However, it also means that the data that makes your online business work is spread out across multiple locations. It also usually means that if you stop paying for one of those services, a large aspect of your business needs to be migrated or re-built.

Building a membership site with digital sovereignty as a guideline means that no aspect of your business is on “rented land”. And remote services you do use are interchangeable relatively easily. It also means all your important data (like account histories, email list, automations, etc.) are all in-house and can all be backed up at once. Things are not splintered.

It doesn’t mean you don’t use any third-party services. We will, of course, be using payment systems like Stripe. You will be using a service to send your emails. But, your DATA is all safe, secure, backed up and cannot be removed.

The Fundamental Architecture Of Your Membership Site

There are two primary architectures you can use as the basis for your membership site. It boils down to how you will protect member content. They are:

  • Membership levels
  • Tags

A site based on membership levels is the kind you see quite often. You can think of the classic example of 3 different membership levels of bronze, silver and gold. Then, depending on which membership level they enroll in it will unlock certain features of the site.

Many classic membership site plugins for WordPress are built around the idea of levels. You have a list of members and each member can be assigned one or more membership levels. You then protect content around your site by saying which member levels are allowed to access it.

A tag-based architecture is a little different because you’re not placing each member into official membership levels. Instead, you simply add or remove tags from the user’s profile in your CRM. By using tags, you can slip people in and out of different content protections using marketing automations… simply by adding or removing tags.

In my experience, a tag-based approach offers better power and better flexibility for the future.

By being able to employ marketing automations and tags, you can change your membership site in any number of ways using any marketing sequence. You can show or hide various aspects of your site based on tags. You can literally make your site change on a per-user basis depending on any followup marketing you may have going on for them.

This is a more powerful approach than using standard membership levels.

The Tools And Plugins You Will Need To Build Your Membership Site

As I said at the outset, there are many different approaches to building a membership site. But, I think a tag-based architecture is preferred. Plus, I want to use tools which don’t rely on third-party services.

So with that in mind, let’s go over the main tools I recommend and why I prefer them over the others.

WooCommerce + WooCommerce Subscriptions

Membership Sites - WooCommerce

For the most future-proof and flexible payment platform, I recommend using WooCommerce. And if you need recurring billing, then the WooCommerce Subscriptions plugin works very well.

WooCommerce is extremely flexible and it can be used to sell practically anything with any billing setup you wish. It has tons of plugins that can change the way it works to your heart’s content. Not only that, but because it is such a standard, you will find no shortage of tools that integrate with WooCommerce.

I do not recommend a membership site plugin for this because most of their payment setups are pretty rudimentary. They also usually lack powerful features like upsells, one-click upsells, order bumps, etc. With WooCommerce, there are a number of add-ons that can enable that (such as CartFlows).

I also do not recommend anything that is remotely hosted. Many carts like Thrivecart can handle recurring billing without any issue. However, the issue there (other than loss of control) is that the billing history is not in-house. It is awkward to have members go into a third-party site to manage their accounts.

Also be careful with hybrid options that use a WordPress plugin while also outsourcing core aspects to third-party servers. SureCart is one such option. While it is a great solution in and of itself, I personally would not use it because core functionality is done on their servers. MemberMouse has the same problem because it outsources the recurring billing to their own servers. If you stop paying MemberMouse’s recurring fee, your member renewals simply stop. In fact, the entire plugin stops working. Not cool.

So, after trying and/or actually using multiple options for membership site payments, I recommend WooCommerce with the WooCommerce Subscriptions add-on.


Your email list setup is going to be pretty fundamental to how your membership site will work. I also want to keep full control over this important asset rather than having it hosted elsewhere.

I use and recommend FluentCRM.

Membership Sites - FluentCRM

With FluentCRM, you have a full, natural and tight integration with the rest of WordPress because it all works right there. You can send one-time campaigns, email autoresponders, as well as full visual marketing automations. Your list is all right there in your control.

FluentCRM also naturally integrates with WordPress user profiles and that’s how you get the membership site functionality (along with my next recommendation). FluentCRM literally becomes your member database. They do not NEED to have a user profile if you don’t want them to. They could just be an email subscriber. But, if you want them to have a user profile and log in to get member-protected resources, it is super easy.

FluentCRM has quite a tight integration. You can view their full order history right inside their profile. You can set tags whenever they buy certain products. You can trigger any kind of marketing automation based on their orders. It is highly flexible.

But, for our full membership site stack, there’s one more component I definitely recommend.

WP Fusion

Membership Sites - WP Fusion

WP Fusion is pretty much the perfect membership site plugin… even though it isn’t really positioned as one.

What WP Fusion does is sits there in the middle and integrates practically everything with your CRM. In this case, our CRM will be FluentCRM and WP Fusion works very well with it.

Through WP Fusion, we can add/remove tags based on almost anything our member does. Across a LARGE number of plugins you may end up using. And then, by using those tags, you can build and trigger any automation you wish.

WP Fusion is the glue which makes it all work.

WP Fusion is also what you will use to protect all membership site content. By select what tags they need to have on their profile to access certain content, you can easily grant access (or remove access) to content across your entire site through visual marketing automations.

Your Membership Site Theme

I’m not as picky about one’s theme for their membership site because everybody has different goals there.

I do really like the BuddyBoss theme. I have called it the “perfect” membership site theme and, in many ways, it is. That said, it does have a lot of code there for community functionality powered by the BuddyBoss plugin. You can use the theme without the plugin, but there is indeed some redundancy there. If you don’t plan to have any community functions in your membership site, I couldn’t make a really strong case for BuddyBoss to you.

If I were you, I would select a theme that works well with Elementor. The Elementor Pro page builder allows you to visually design all of your landing pages, core pages… even the theme itself. And the third-party integrations with Elementor come in very handy. For instance, WP Fusion works with Elementor to allow you to show/hide page components based on a member’s tags. That enables all kinds of flexibility down the road.

Personally, I use the BuddyBoss Theme and the Elementor Pro page builder on this site.

Fluent Forms For All Your Forms

For all your forms, I recommend Fluent Forms. Not only is it a highly powerful forms plugin, but it integrates beautifully with our tech stack. Consider this…

You would be able to visually see every single form submission – across your entire site – inside of a user’s profile in FluentCRM.

Membership Sites - Fluent Forms

You can pull up a member profile and see everything they submitted via a form built with Fluent Forms. Any quiz, survey, contact form… anything. No need to manually search through form entries.

Online Course Options

Not all membership sites have to be a home for training courses, but it definitely pretty common. If you want to have training courses for your members, then you need to decide what kind of functionality you need. For instance…

  • Are your courses going to be big, multi-module creations with a lot of parts?
  • Do you absolutely need student progress tracking?
  • Do you need typical school functionality such as assignments, grading, quizzes?

In practice, I find that a lot of people think they need more than they really do. Or they think that someday they may want all those fancy features, but in reality they just never get around to actually using it.

In most cases, an online course can be really simple. Essentially, just a collection of pages. With a video and text and perhaps some links to some downloads. In some cases, the course can literally be just one page. In other cases, maybe you’d want a hierarchy so you can put sub-pages (for individual lessons).

If you don’t need the fancier stuff, you can forgo getting any learning management system plugin such as LearnDash or TutorLMS. Instead, we can just create a custom post type for our courses. Build a nice look and feel for it with Elementor. Protect it with WP Fusion and call it a day.

If you just want a nice, structured environment for managing your courses, then the free version of TutorLMS may be all you need.

I don’t recommend just blindly going and paying for some fancier LMS plugin unless you’re sure you need all the functionality. I’ve seen so many people install big LMS plugins just to organize content into courses, but they’re not even really using 90% of what that plugin can do. It is a waste of money in that case.

The Pages You Will Need For Your Membership Site

Membership Sites - Member Dashboard
The Member Dashboard for the Blog Marketing Academy

It goes without saying, but obviously you will need to install WordPress and install the plugins mentioned above. But, once you do that, you’ll then have a blank slate. Now what? 🙂

Well, there are certain core membership site pages you will typically need. They are:

  • Site homepage (usually a nice landing page that spells out what you do and has a call to action)
  • About Page
  • Contact page (obviously)
  • Login (ideally styled to match your branding rather than default WordPress)
  • Logout (optional, but nice to direct members to a page when they log out to acknowledge they’ve logged out and perhaps promote your latest blog posts or give a promotion)
  • Member Dashboard (the page they will go to when they log in. Serves as a central place to find membership site features)
  • Course Library (if you have multiple online courses, it would be good to have one central library where they can find them all)
  • My Account (place for members to view their order history, their subscriptions, and generally control their account. With WooCommerce, this page is automatically created).
  • Sales Page(s). The main landing pages for actually signing up for the things you are selling, whether a full-blown membership or individual products. While WooCommerce will give you product pages by default, it is nice to have dedicated landing pages for them. I usually build these with Elementor.
  • Access Denied page. While you may indeed direct people to individual pages if they try to access protected content without having access, it is nice to have a general page, too.

Now, certainly there could be other pages to your membership site. But, I generally find the above to be the core pages that almost all of them have.

If your membership is going to have community functionality, then there will be pages for things like forums, groups and the like. In most cases, the community plugin you are using for those features (such as BuddyBoss) will make those pages for you and you just link to them.

In all likelihood, you will have a blog on the site, too. Not all membership sites do. Some people like to separate their membership site from their public site… in which case there might not be a blog on the membership. But, if your membership site will also have a blog, then you will need a blog index page for people to find your blog posts.

Linking These Pages Together

So, you create these pages for your site. The login page is automatic, but you may want to style it to make it look better than a WordPress default. Your Account page will be automatically created by WooCommerce. The others will need to be created as pages inside of WordPress.

But, then there’s the matter of putting it all together into an architecture.

Your main header navigation is typically going to be a pretty core component for how people get around. You can just use the standard built-in menu functionality of WordPress to build your menus.

But, how do you show different menus to people when they are logged in or not logged in? Or to paying members versus free members?

First off, WP Fusion has a global option in settings to automatically hide any content from the nav menu that the member does not have access to.

Membership Sites - WP Fusion Hide From Menus

I usually keep this disabled, though, because I want non-members to see the stuff they’re not getting and perhaps want to buy it. 🙂

WP Fusion also enables you to control each individual menu item. You can specify if any menu item should be viewable by everybody, for logged-out users, or for logged-in users. And if they are logged-in, you can specify which tags they must have on their profile in order to see it.

Membership Sites - Hide Menu Options

For instance, you can place your member dashboard in your header navigation. But, set the visibility options to “Logged In Users” to ensure that a member has to actually be logged in to see the dashboard in the menu. If it is just a normal web user who isn’t logged-in, they won’t see it.

If you also install the User Menus plugin, you have even more flexibility. It integrates with WP Fusion further to provide even more granular control of menu items based on tags.

Membership Sites - User Menus

You can read more about WP Fusion’s menu item visibility here.

Instead of individually controlling menu items on the same menu, another approach is to show entirely different menus based on whether they are logged-in or not. The Conditional Menus plugin makes that pretty easy.

Login / Logout Functionality

When a member needs to log in, they should see a login page. When they are already logged-in, they should see a logout option.

Plus, how do you direct members to a dashboard when they log in rather than heading right into the WordPress dashboard or something equally weird?

Well, let’s set up that plumbing.

First off, you will be using WordPress’s default login functionality for your members. Typically, that’s going to use a script called wp-login.php, but that’s rather inappropriate to show people. So, I would rename your login URL. Personally, I use PerfMatters to customize the login screen to be “login”. So, that would make the login URL into

PerfMatters - Login URL Settings

If you want a simpler way to do that, you can use WPS Hide Login to do the same thing.

As I mentioned, it is usually more professional to customize the login screen so that it doesn’t have a WordPress logo at the top. Some themes will come with functionality for this (such as BuddyBoss).

Membership Site - Custom Login Screen

There are also a number of plugins specifically for customizing the login screen, and you can even do it by way of code if you’re feeling a little nerdy.

As for login/logout links in your site navigation, some themes will come with this built-in. If your’s does not, the above mentioned User Menus plugin will help you create those links in your nav menu.

Directing Members To Dashboard Upon Login

How do you redirect members to a dashboard when they log in?

There are two methods here. One is to make your homepage and your dashboard literally the same page. That’s what I do here at the Blog Marketing Academy. By using Elementor’s integration with WP Fusion, I have different sections of my homepage show or hide based on whether they’re logged in. If a member is logged-in, they see dashboard links at the top. If they are not logged-in, they will see the call to action hero bar.

Membership site dashboard and homepage same page, using conditional rows.
WP Fusion - Elementor Visibility Control

The other method is to have fully separate homepage and dashboard. That’s the most common approach, but the problem remains on how to redirect people to the dashboard when they log in.

LoginWP is one method. This plugin will enable you to set up redirect rules to control where people go when they log in. While it has a PRO version with a lot of integrations, their free version is adequate to create a global rule to send all non-admin logins to your member dashboard page.

You can also use a little bit of PHP code in your theme’s functions.php file. And, yep, I’ll give you that code.

To unlock this PHP code, log into your member account. If you’re not yet a member, you can click here to create your free profile.

That code assumed your dashboard is at If your’s is different, change it in the code.

Lastly, WP Fusion does have an add-on for login redirects. Based on a user’s tag, you can send them anywhere you please.

Directing To A Logout Screen

One nice little feature is to have a logout screen, too. When a user logs out of their profile, you can send them to a screen you’ve prepared for them rather than some system-generated message.

While LoginWP can take care of that for you, I usually do it with another little blurb of code.

To unlock this PHP code, log into your member account. If you’re not yet a member, you can click here to create your free profile.

Obviously, change the page URL for that to go to your own logout page.

This page is good for showing your latest blog posts or perhaps some kind of unique offer.

Grab your copy of the Membership Site Planner?

Download this worksheet to guide you through the idea and planning phase of your new membership site – setting you up for maximum signups and income.

OPTIN – Membership Site Planner – INLINE

User Profiles And User Permissions

Our membership site is, at the core, going to be using standard user profiles built right into WordPress. FluentCRM will be how you manage everything, though. And WP Fusion is used to hook everything up.

Any member will, then, have both a FluentCRM profile and a WordPress user profile. They will be linked together through WP Fusion. And you can easily switch back and forth to view any member’s WordPress profile or FluentCRM profile.

FluentCRM - Wordpress User Profile
Click the user ID to instantly jump to their WordPress user profile from FluentCRM
FluentCRM - Wordpress User Profile
From their user profile, click the button to jump to their FluentCRM profile.

Permissions will be controlled with tags. Using WPFusion’s content protection system, you will set which content is protected and which is not. For the ones that are protected, you will specify which tags should be used to grant access.

How Members Sign Up And Get A User Profile

Whenever a new member signs up (whether free or they’re buying something), they need to get a profile both in FluentCRM as well as WordPress itself. We know that WP Fusion will keep everything synced up.

So, there are two different approaches to creating a profile:

  • Create a user profile and the FluentCRM profile is created automatically
  • Create a FluentCRM profile and the user profile is created to go with it.

Both plugins have options to keep these systems happy and synched. In the WPFusion general settings, there’s an option to “Create new contacts in FluentCRM when users register in WordPress”.

You’re going to want that option enabled. Under Synchronize Contact Data, you’re going to want to enable “Sync profile updates and custom field changes to the user’s contact record in FluentCRM”.

WP Fusion - Create Contacts

Note that FluentCRM also has similar options. Under it’s own General Settings, it can auto sync user data and contact data. It also has an option to automatically create new contacts in FluentCRM when a user registers in WordPress.

FluentCRM - User Profile Sync

You can go either direction with this to create the link. Personally, I leave the FluentCRM options alone and just let WP Fusion do the work.

Now, your membership site will likely have different entry points for places where people can create a profile.

For members signing up for a free membership, you can either create a user registration form or an opt-in form. A user registration form will take their info and create a user profile directly, which will in turn create the CRM profile because of WP Fusion’s sync. With the opt-in form, you can use any opt-in form plugin you want to gather their name and email and add them to FluentCRM. Then, by using a marketing automation, you can just create their profile.

Creating a user profile in a FluentCRM Automation

You can easily create a user registration form with a plugin like Fluent Forms. It works great. Any decent forms solution for WordPress will support user registration. You can also set a default tag in your WP Fusion settings so that every new member sent into FluentCRM will automatically get a free member tag.

For members who are buying something, you can have WooCommerce automatically create their user account during purchase. Plus, whatever product they purchased will have it’s own tags assigned, so that will determine what tags are added to their profile automatically.

How User Passwords Are Handled

When a user registers a profile directly (rather than having FluentCRM create it with an automation), then you have the option to directly ask the person what password they’d like to set for their profile.

For instance, you can create a user signup form with Fluent Forms and have a password field that matches up to their password on their user profile. This allows for a user-selected profile.

Personally, I have the site auto-generate passwords. User profiles are created within a FluentCRM automation and I check the box to auto-generate the password.

Membership Site - Creating User Password

This will then trigger the standard WordPress email with a password reset link to set their password as they wish. For one, this means one less field to complicate the forms. Secondly, it will help secure more secure passwords since many users have a tendency to select really weak passwords.

WP Fusion does have the ability to sync a password to a custom password field in the CRM and therefore enable you to send people their password in an email. There are two reasons I don’t recommend this:

  • It presents a security issue to send a plain-text password via email.
  • If they later change their password on their user profile, it will not sync up to FluentCRM anymore.

So, I just let WordPress auto-generate the password then they can reset it if they please.

Defining Your CRM Tags

Everything will be determined or triggered by tags. And when you first install FluentCRM, there will be no tags at all. It is a blank slate. So, once again… now what? 🙂

The first thing to keep in mind here is that you do NOT need to have your entire tag scheme determined right out of the gate. You can – and likely will – add new tags or change some as time goes on.

However, let me try to give you a little bit of guidance here. I tend to use tags for 3 different purposes:

  • Permission Tags. These are tags I will add when people buy certain things. And they will be used, typically, to open up permissions to members-only content.
  • Status Tags. These are tags we can use to track the status of a member, either by way of the status of their subscription, or their status as a prospect, or simply their status as a customer.
  • Trigger Tags. These are tags used to trigger an automation, but typically don’t stay on their profile. We add them to trigger an automation then remove it again.

Now, let’s go into just a bit more detail…

Permission Tags

These are tags that you will add to their profile in order to grant access to things. These tags will be coupled with the WP Fusion content protection system so that when the tag is added, it grants access to certain content.

Likewise, if you want to remove access to certain content (such as in the case of canceling their subscription), you would simply remove the tag.

To determine what tags you need, you need to look at what you’re selling. You’re going to want at least one tag for each product you are selling, and a tag for each membership level.

To give a simple example, when somebody buys the course One Page Online Business Plan on this site individually, they will get a tag called CUSTOMER: One Page Business Plan. That tag is then used to automatically give access to the course.

Similarly, if a person signs up for a membership, you add a tag associated with your membership.

With FluentCRM, you can have tags with spaces and symbols in the name. In other words, you can make tags pretty “plain English”. You can even give tags a description in case you forget what it’s for. 🙂 This makes it pretty easy.

So, you simply create a permission tag for each thing you’re selling. You can define which tag is added directly in the product settings of the thing they’re buying inside WooCommerce.

Status Tags

Status tags can be used for segmentation of general classifications of your users. Sometimes, based on those statuses you may trigger automations.

Here’s a few pretty typical status tags:

  • CUSTOMER. You can have WP Fusion automatically add the CUSTOMER tag to anybody who buys anything at all. As a way to separate them out from free subscribers.
  • CANCELLED MEMBER. If a member cancels their subscription, you can tag them accordingly. You can then use this to potentially target them differently with followup marketing.
  • REFUND. Some businesses like to segment out people who ask for refunds and perhaps treat them a little differently. So, you can add a REFUND tag anytime you issue a refund.
  • LEAD. If somebody takes an action on your site which makes them a strong potential lead for a product or service, you can tag them as a lead. Then use that to trigger followup marketing to close the sale.

The tags you use will be unique to your situation. You may have different lead tags. You may want to get more granular with it. Up to you.

Trigger Tags

One of the most common ways to trigger a marketing automation sequence in your CRM is by adding a tag to their profile.

In some cases, you would trigger an automation with a tag that will remain on their profile. For instance, if a person enrolls as a new paying member, you would tag them as a MEMBER and use that tag to trigger a welcome email, onboarding, or whatever you want. But, that MEMBER tag will remain on their profile as a permission tag for access purposes.

In other cases, you want to trigger an automation but you have no real reason to keep the tag on their profile.

One example from this site is when a member purchases service credits. They make the purchase in WooCommerce and it will add a tag that says “ACTION: Add 5 Credits”. (if they buy the 5-credit package). That tag triggers an automation which will add the 5 credits, send them an email about it, then remove the tag.

Marketing Automation - Using Trigger Tag

You don’t always need to set up trigger tags in advance. You can usually just set them up when you need them.

Tag Naming Conventions

As your list of tags gets bigger, it can be easy to lose track of things. Trust me, I know. 😉

The best way to put a little order into it is by setting up a naming convention that works for you. I usually do this by adding prefixes to the tag names based on what the tag is for. This has the effect of having your tags show up grouped together in alphabetical order whenever you need to choose a tag from a dropdown.

Some naming convention ideas might be:

  • CUSTOMER: [Product Name]. By adding the “CUSTOMER” prefix to each one, you are grouping all of your permissions tags for things people buy together.
  • STATUS: [Status Name]. Grouping your status tags together. For example, you could use this for recurring memberships to record the status, such as STATUS: Active for active members and STATUS: Cancelled for cancelled members.
  • TRIGGER: {What It Triggers]. You get the idea. 😉 You will then know visually these are trigger tags and it will be easier to select them in a dropdown. I sometimes also use “ACTION” as a prefix on my trigger tags to tell me it will trigger an action. You do what works for you.

You can always use your own naming conventions. You may have other methods that work better for you. But, it pays to think ahead a bit on this.

Good thing is… you can rename tags in FluentCRM. 🙂 So, even if you didn’t think this through in the beginning, you can go back and set up a naming convention.

Email Sequences & Automations For Your Membership Site

We’ve now covered the basic core pages your membership will have. We’ve talked about how to link them together and control user flow through them based on their login. And we’ve talked about creating user profiles and the basics of using tags to control permissions and trigger automations.

You will be using Automations within FluentCRM to visually build these automations. And these automations will do things like:

  • Create user profiles (when necessary).
  • Send welcome emails
  • Add to followup autoresponders or simply just send followup emails
  • Send internal notifications (to yourself) if needed, based on what people buy.
  • Trigger followup marketing sequences.
  • Grant access to material they purchase

You get the idea. A lot of things can be done using marketing automations. You can even set up conditional logic in your automations that will only do certain things based on other tags on their profile. It’s pretty powerful.

The options available to you within these automations can get the juices flowing on ideas and, for some people, cause paralysis because of idea overload. 🙂 So, it is better to just concentrate on the core basics and then you can build more later.

Here’s a few basic automations with some steps to add to them…


  1. Create user profile.
  2. Send a welcome email to let them know next steps.
  3. Add to a followup email sequence to potentially upsell them to a paid membership.

PERSON SIGNS UP FOR PAID MEMBERSHIP (Triggered by addition of permissions tag for the membership)

  1. Create user profile.
  2. Send welcome email to let them know next steps.
  3. Remove free membership tag (if you use one for free memberships)
  4. Remove from any ongoing email sequences designed to sell them the membership (this way you don’t keep trying to sell them something they already bought)
  5. Add to new member onboarding

PERSON CANCELS RECURRING MEMBERSHIP (Triggered by addition of the cancellation tag)

  1. Remove the permission tag for paying members so they no longer have access.
  2. Add to free membership (essentially, downgrade them)
  3. Send them an email to acknowledge cancellation.
  4. If helpful, send an internal notification email to yourself or a team member for certain things they need to do.
  5. Add them to a sequence (perhaps with a timed delay so you don’t do it instantly) to attempt to sell them on reactivating their membership.


  1. Create user profile.
  2. Send them a welcome email.
  3. Optionally add to any followup email sequences to upsell them to something else.

With this one, if you sell a lot of different products that are similar (such as individual courses), you can use one central sequence for all of them. Then, regardless of which product they buy, they get the same welcome email and the same actions take place. You can just use a common trigger tag to go along with the correct permissions tag. Each product gets it’s own permissions tag, but they all use one common trigger tag for the followup.


Typically, when somebody opts in for a lead magnet, I would think the eventual goal would be for them to buy a product or a membership. So, a basic outline of an automation would be this…

  • Send them email which delivers the lead magnet.
  • Tag them as a lead for a certain product.
  • Add them to a followup sequence which will deliver a series of emails over a few days with the goal of upselling them on the appropriate followup product

Using An Email Sequence Versus An Automation In FluentCRM

When you want to send out a series of emails, you can do it in two different ways within FluentCRM.

  • Using an Email Sequence, which is just a pre-written series of emails with time delays between them based on how long it has been since the user was added to that sequence.
  • As part of the Automation itself using Custom Emails.

Now, an email sequence is very linear. When you add a person to it, they will just be sent the emails you wrote on the schedule you set without looking at anything else. The only way to stop the sequence is to remove them from it.

With an Automation, you have a lot more flexibility. You can send custom emails as part of an automation and set time delays between them in order to replicate the exact same functionality as an email sequence. However, since it is in an automation, you can do things such as:

  • Only send certain emails if certain conditions are true.
  • Automatically stop send those emails if they meet a goal of the automation (like a purchase).
  • Alter the emails being sent based on tags on their profile, therefore making the emails more personalized

Basically, automations offer way more power and flexibility. Generally speaking, I send my automated emails by way of automations instead of email sequences.

Additional Features You May Want To Build

At this point in the guide, I believe we have covered the core basics of what makes your membership site tick.

But, every membership site is a little different. So, let me briefly cover a few extra things you may have in mind.

Sales Funnels

One of the best ways to increase conversions and average sale amount is to utilize sales funnels. A funnel removes all the clutter and concentrates just on making the sale. Plus, it is usual to have various upsells and/or downsells in the funnel.

By default, WooCommerce doesn’t do that. But, with plugins, it certainly can. 🙂

The one I recommend is CartFlows. It is what I use personally. There are others and you’re welcome to check them out (LaunchFlows is another), but CartFlows is what I use and am most familiar with.

CartFlows works with your page builder (Elementor in my case) to build really nice sales funnels. Instead of the standard “Add to Cart”, then view cart, then proceed to checkout and the normal ecommerce thing, you can create much more streamlined sales funnels.

The sales funnels you build with CartFlows are based on your WooCommerce products, so all of your tag assignments work just the same. But, you can actually make more money with structured funnels rather than a raw shopping cart.

PDF Library And Protected Downloads

It is pretty easy to create a nice library of PDF documents for your members. The short version of it is this:

  • Create a custom post type for your library. I use Custom Post Type UI for this, usually.
  • Put PDF files into your Media Library.
  • For each of the posts, use PDF Embedder plugin to insert the PDF file. On the frontend, that will display the PDF in embedded fashion.
  • Protect each post with WP Fusion tags so only your members can access it.

You can read more on creating a WordPress Document Library here.

Also, WP Fusion has an add-on which can protect actual files in your Media Library based on tags. It is called the Downloads addon. It could prove handy, too.

Custom Fields

Depending on your business, you may have custom fields you want to keep for each member. For instance, I keep fields like website URL, their service credit balance, etc.

FluentCRM has custom fields so you can store things in the CRM. Then, for the user profile side of things, I recommend Advanced Custom Fields. Then, what you can do is use WP Fusion to map the fields together so that your custom fields will remain beautifully synced between both FluentCRM and the corresponding user profile.

Not every field type is matchable. For example, the repeater field within ACF is pretty handy for some purposes, but FluentCRM does not support that kind of field so there’s no way to sync them. However, since you have one-click access to switch between a user’s CRM profile and user profile, it isn’t that hard to get around.

Learning Management Systems

As I mentioned earlier in this guide, you always want to consider what kind of online course features you really need. In some cases, you just don’t need a full LMS.

But, if you do, WP Fusion will work to enable student access to courses when they purchase. WP Fusion works with a bunch of learning management plugins, but the way it works with your LMS can differ depending on which one you are using.

For instance, if you’re using Learndash, you cannot just protect the course the usual way with WP Fusion. You need to actually enroll them in the course. The easiest way to do that is using the “Link With Tag” function of WP Fusion. Essentially, you link the course to a particular tag. If they have that tag, they are enrolled. If they don’t, they’re not enrolled. Simple as that.

That works great for individual course purchases, but what about memberships where they’re supposed to get access to all of the courses (or several) at a time? For that, you can use LearnDash groups to group the courses together, then link that entire group to a tag using the WP Fusion setting.

Powerful On-Site Marketing To Back Up Your Email Followups

OK, follow me on this one…

The beauty of a membership site is that you know exactly who they are when they are logged in. And with WP Fusion and FluentCRM, that is coupled with all the data you have at your disposal.

If you build marketing automations that are designed to make a sale, you can also make your membership site physically change to back up the message of whatever you may also be emailing them.

It all works on tags. If you enter them into a marketing sequence, you just add a STATUS tag at the beginning and you remove it again when the sequence is over. For the sake of discussion, let’s use the tag STATUS: Lead.

Now, in sections of your site where it makes sense, you can put conditional content in place to show up only when your member has the tag STATUS: Lead.

In our tech stack, the best ways are:

  • Using WP Fusion’s integration with Elementor to show page elements (or entire sections) only when they have a certain tag.
  • Using Block Visibility plugin to show blocks only when they have the tag.

If you are using the block editor for your content, you can build entire calls to action within your content or sidebar that will only show up when that particular tag is present. You can use Elementor to show calls to action on landing pages, in parts of your theme, or anywhere else based on the tag.

In this way, you can have calls to action on your site that match whatever evergreen sales funnel your member may be receiving at their point in the customer journey.

And if you want to make it even better, use the Login add-on for WP Fusion. Based on tags, you can redirect them to different pages at the moment of login. So, if they have the STATUS: Lead tag, you can redirect them to a one time offer page whereas for everybody else you just send them to the member dashboard as usual.

Final Thoughts And Next Steps

This guide, I believe, has covered all of the basics of building a future-proof, flexible, powerful and digitally sovereign membership site. One you truly own and is not on “rented land”. And one that you can back up and keep as one cohesive package without data being splintered all over the place.

It truly is a powerful membership site setup.

Again, it isn’t the only way to go. And I do indeed work with clients who have chosen other tools. But, this tech stack is what I currently determine to be my favorite. 🙂

If you follow this guide and couple it with a little bit of forethought into adapting it to your unique needs, I think you will find it pretty holistic.

Now, there’s the matter of actually building it.

You can do it yourself. I think you’re capable of it.

Of course, if you’d like me to do it for you, I can certainly do that. I work with membership sites all the time. And this exact toolset is the one I prefer so I’d be happy to help you build it out.

Plus, if I do it for you, we will work together to customize things to your specific needs.

Grab your copy of the Membership Site Planner?

Download this worksheet to guide you through the idea and planning phase of your new membership site – setting you up for maximum signups and income.

OPTIN – Membership Site Planner – INLINE

Got A Question? Need Some Assistance?

Have a question about this article? Need some help with this topic (or anything else)? Send it in and I’ll get back to you personally. If you’re OK with it, I might even use it as the basis of future content so I can make this site most useful.

Question – Lead Form