Memberships are the primary way by which access to membership sites is managed, however they’re not the only way.
We refer to these as memberships and not subscriptions because the membership defines what group the person belongs to. A subscription defines a way that a person pays to have a membership. For example, you can also have a free membership, or a membership from a one-time payment.
Memberships are assigned by the person’s tags.
Tags vs. Membership Levels
Both tags and membership levels can be used to control access to parts of your site. They’re a means by which you can determine if one of your members can access any given piece of content. They’re related, and can be used together in combination to greater effect giving you an efficient and flexible way to manage access.
Membership levels are merely a collection of tags that carry some extra meaning with them. Many places where you might use a membership level, depending on your needs, you may be able to use tags instead. Membership levels bring with them things like roles, login pages, and the ability to nest membership levels inside of each other. Memberships define things about a group, not about individuals. Everyone with a membership level shares the properties of that group.
Like membership levels, tags are also handy to control access, but they are more of an individual “yes/no” or “on/off” affair. Tags by themselves are best used to define the unique aspects of an individual.
Using individual tags and membership levels together gives you a powerful combination of tools.
Making Abstract Ideas Concrete – The School Campus
Sometimes with abstract ideas like this it’s useful to draw analogies to familiar things. A familiar model might be to draw parallels between a school campus, and your membership site.
In the campus model, membership levels could be used for various grade levels, staff and for faculty. They are best used for broad groups that carry with them a bigger meaning or context.
In this model, your pages, posts and content are like the buildings and rooms on the campus.
This model can also illustrate the difference between a subscriber and a member.
A student would be a member who is a subscriber, paying tuition in order to attend and receive services. If they stop paying, their membership is terminated. On the other side, a teacher would also be a member, but not a subscriber, because their membership isn’t based around them paying a subscription fee, even though they may not always be a member. A tenured teacher would be a permanent member. All of these people are members, but only the student is a subscriber.
When someone goes to enter the campus, the security department would check their membership and admit them to the campus only if they’re a current member of some kind. In this model your Memberium plugin acts as the campus security, rigorously examining each person’s identity to determine what membership they have. A student or faculty Identification card is much like a membership level, in that it provides a very broad level of authorization.
Once someone is on the campus, their membership may send them to different starting points, or grant them access based on the group they belong to: Faculty can access teacher’s lounges and office space and hallways, students can access hallways, etc.
People fit in Groups, Yet they’re still Unique
It’s likely that you may want more fine grain control, for example each student would have their private lockers, and the list of classes that they’re to attend, and teachers would have their assigned classrooms as well.
Tags fill the role here to act much like individual keys, providing the ability to finely control which resources each person has access to based on their individuality. For example, each teacher has their own keys for their private desks, and students have the keys to unlock their lockers.
Other System’s Membership Levels
You may be familiar with, or coming from another system with it’s own Membership model. Softwares like S2Member, WishList Member and OptimizeMember are built on a simpler concept and don’t have the concept of individual tags and granular segmentation. Membership is controlled using levels exclusively, so you may be used to adding and removing entire levels to move someone through a course. This creates more overhead and maintenance since you can’t easily revoke or pause a user’s access when they may have dozens of related levels controlling them.
Memberium’s model gives you a Membership system that acts as a broad umbrella which can be turned on or off, along with Infusionsoft’s fine grain control of individual tags to unlock content.
Membership Level Strategies
As we described above Memberships are perfect for describing groups of people together into broad similar definitions, Memberium places no limits on how many membership levels you setup, and you can use membership levels for fine grain control but that is a very inefficient way to work.
We don’t recommend that you use a different membership level for every single piece of content a user can qualify for. Use membership levels for your group based concepts, and use tags for individual pieces of content.
There are sites with over 200 membership levels out there. Even though Memberium places no limits, Infusionsoft does recommend that you limit the number of tags you should use before you begin to slow down your Infusionsoft App, and your web server has finite resources. Over-using Membership levels will eventually have the following negative effects:
- Your membership management screen will grow large and unwieldy.
- Your tag usage will explode. Infusionsoft recommends only using a few thousand tags at most. Each membership level will use 1-4 tags.
- Like your membership manager, your page/post edit screens will become huge with enormous lists of membership levels.
- Your Memberium configuration data will grow in size, taking up more memory and becoming slower to process.
- Your mental “model” of your system will become increasingly strained.
Delivering content in small chunks over a period of time is a common strategy for many reasons. For the content publisher’s benefit, it can help cut down refund abuse by not letting “dine-and-dash” clients binge on all of your premium content and then execute a planned refund to avoid paying for it.
For the content consumer’s benefit it helps them stay focused. New site members are often excited and enthusiastic and can easily burn themselves out jumping around and trying to sample everything from your content. A well executed drip system will keep them on track and on task and consuming the content in the proper order. Consuming the right content in the right order is critical to process based learning.
Dripping content is a perfect example of a situation where it’s better to use a tag than an entire membership level. The membership level is best used once to define the entire course, and then you can use individual tags to control access to each individual piece of content.
While some systems use an entire membership level for this, this is really best suited for a tag.
Delivering dripped content is easy to implement and even easier to manage using Infusionsoft’s Campaign Builder system. When you onboard a new member, you start them on a campaign using delay timers to space out the deliver of each piece of content. Your content drip can be measured in any time unit you wish. Common choices are daily or weekly depending on how hard the content is to consume and assignments are to complete. You can use Campaign Builder’s delay timers to put appropriate pauses in between each piece of content being released.
Each piece of content gets a single tag. We usually recommend either naming the tag after the piece of content it unlocks, or more commonly giving it a name that helps coach you as to where it belongs in the sequence.
For example you may name a tag “CourseName Week 2“, to unlock week 2 of that particular course. With this naming style it’s clear what course the tag is for, and when the tag is used.
To release the content, you can assign your tags in a Campaign Builder sequence, and separate them with delay timers. To apply the tag, perform these steps after each delay:
- Add an individual tag to the contact for that piece of content
- Optional – Run an “update-contact” HTTP POST to signal Memberium that there is a new tag applied
- Optional – Send an email notice to the contact inviting them back to your site to consume the new content
The Anatomy of a Membership Level
Each Membership level consists of several components.
REQUIRED – This is the descriptive name of your membership level. It defaults to the same name as your membership tags, however you can change it to something different if you want. It’s best to keep this name short and sweet, but not cryptically short. This is so that it will fit on some smaller menus, but will still be easily understandable.
REQUIRED – This is the main tag that grants this membership level to a user, and by default the membership level is named after it. Once it’s set this cannot be changed.
Add’l Access Tags
OPTIONAL – Sometimes it is useful to have multiple tags all grant the same membership. You can define those additional tags here. This is also useful when upgrading from systems like CustomerHub which support this feature. In the general case, in a well planned tag system, this feature is not needed.
Payment Failure/PAYF Tag
OPTIONAL – The Payment Failure tag is often referred to as the “PAYF” tag, the PAYF name comes from legacy compatibility with older systems. In those older systems you were required to use the PAYF suffix at the end of your tag name. Unfortunately this not very user friendly, and in Memberium you can use any tag with any name you wish to mark a payment failure.
We use the PAYF tag instead of removing the membership tag for two reasons. First, you can easily search your Infusionsoft contacts for any contacts with the PAYF tag. Second, once the member is in good standing you can easily restore their access by removing the PAYF tag without disrupting their tag history.
As long as a member has a PAYF tag, then their membership for that PAYF tag will be blocked until it is removed.
The benefit of the PAYF tag is that if you have a temporary billing problem while making a payment, such as a declined credit card charge you can apply the PAYF tag without disrupting the member’s other tags until the member can correct the issue, at which time you would remove the PAYF tag. This is better than removing the access tag or additional access tags since it doesn’t destroy the history of the user’s tags for a temporary problem.
You only need the PAYF tag if you’re creating a membership level for a purchase with a payment plan, or a subscription. For a single payment or free membership, the PAYF tag is unnecessary and you should skip it.
Note that each tag only blocks it’s own membership level. If your member has two or more different membership levels in your system, the PAYF/SUSP/CANC tags will only block their matching level. It’s possible for a member to have multiple levels and be blocked on some, but not others.
Cancel Membership/CANC Tag
OPTIONAL – The Cancel tag is often referred to as the “CANC” tag. Like the PAYF tag, this name comes from older systems and was limited in those. Like the Memberium PAYF tag, you can use any tag with any name you wish to mark a cancelled membership.
As long as a member has a CANC tag, then their membership for that CANC tag will be blocked until it is removed. It functions identically to the PAYF tag, and we use it for the same reasons.
This tag is useful if you want to mark that a membership is permanently cancelled but for whatever reason, you don’t want to delete the history of the other membership tags. The cancellation is not permanent in that it can’t be restored, it is merely indicating that the membership’s cancellation is intended, instead of a temporary issue like a “PAYF” tag would be.
Suspend Membership/SUSP Tag
OPTIONAL – The Suspend tag is often referred to as the “SUSP” tag. Like the other tags, this name comes from older systems and was limited in those. Like the Memberium PAYF and CANC tag, you can use any tag with any name you wish to mark a suspended membership.
Sometimes a member wants to put their account on hold for a period of time without permanently cancelling it, either due to financial stress, or due to other life events such as vacations, etc. This tag can be used to temporarily turn off access until the member is ready to come back.
This tag does NOT automatically turn off billing. As long as a member has a SUSP tag, then their membership for that SUSP tag will be blocked until it is removed. It functions identically to the PAYF tag, and we use it for the same reasons.
You can arrange your membership levels in a hierarchy, so that higher levels automatically include lower levels by assigning a membership level number.
If a level number is below another level, that level is included. If the level number is equal to or higher than another level, then that level is not included.
By default, all memberships are created with the same level, “0”, meaning that they are separate and do not overlap or include each other.
Set WordPress Role
You can temporarily set multiple WordPress roles based on the member’s membership level. This is useful for granting extra access, or for integrating with “role-based” plugins such as Simple:Press, BuddyPress or BBPress. You cannot give the “Administrator” role to a member for security reasons. Roles are assigned during login, not on user creation.
If you run a system where a member can have multiple non-overlapping memberships with the same level, and each membership has its own Membership homepage, then you may run into an issue where Memberium cannot figure out which page to send the member to after they login. Memberium provides this setting so that you can prioritize which page to send the member to. Higher level numbers take priority over lower level numbers. For example, if a member has Product 1 with login priority of 1 and Product 2 with login priority of 2, then the member will be taken to the Membership homepage of Product 2 (since it’s login priority is high).
If you have multiple memberships with the same “level”, and the same Login page priority, then which homepage will be selected is effectively random.
Membership Home Page
This is the page that the member is sent to after they login. If your site’s members have many memberships, you may want to set the Login Page Priority (above), or direct them to a common home page. If you do use different membership home pages, be sure to provide links so that your member can get to the other pages as necessary.
Membership Logout Page
This is the page that the member is sent to if they click a link to logout. Because many people just close their browser, and don’t actually click logout, there is no guarantee that the page will be visited.
PAYF Home Page
This is the page that the member is sent to after they login IF they have a PAYF tag. You can use this to route them to a page that informs them about the billing problem and gives them an opportunity to fix it.
SUSP Home Page
This is the page that the member is sent to after they login IF they have a SUSP tag. You can use this to route them to a page that reminds them that their access is temporarily suspended, and gives them an opportunity to turn it back on.
CANC Home Page
This is the page that the member is sent to after they login IF they have a CANC tag. You can use this to route them to a page that reminds them that their access is permanently cancelled, and gives them an opportunity to turn it back on.
By default, your users will use the main theme that you activated when you setup your website. If you wish for different membership levels to see your site using different themes, you can use this to set that theme for those members. Be forewarned that items such as menus and widgets may change or need to be redefined for different themes, so use this option with case.
You can delete an existing level, by checking the box next to each level you want to remove, and clicking the “Update Membership Levels” button. When you delete a membership level, Memberium will automatically remove that membership level as a requirement from all pages, posts, and custom post types where it was set.
Managing your Membership Tags
Re-using Existing Tags
You can use any of your already existing tags for your membership. Your tags will appear in the dropdowns.
Updating Memberium after Tag Changes
Periodically Memberium resynchronizes it’s database with Infusionsoft. If you’ve made changes to your tags in Infusionsoft and would like to immediately see those changes updated in Memberium, then go to the Memberium Dashboard, and click the “Synchronize Infusionsoft” button. Once that’s done you’ll see the changes take effect on your site.
You can create new tags either in Infusionsoft or in Memberium. We recommend creating your tags in Memberium so that they are instantly available, and to take advantage of Memberium’s automation to make your job easier.
You can rename your membership tags if you desire to. Unlike older systems, you no longer need to use the same name for your PAYF, SUSP and CANC tags. When you’re done renaming your tags, be sure to click the “Synchronize Infusionsoft” button so that Memberium can get your new tag names.
Deleting Optional Tags
If you’re not using them, you can delete any extra PAYF, CANC or SUSP tags without affecting your site operation. Simply remove them from your membership levels, delete them from Infusionsoft, and resynchronize.
Automating PAYF and CANC Tags
We recommend using Infusionsoft’s ecommerce billing triggers to automate handling your billing issues.
You can read more about setting up Infusionsoft’s Billing Automation tools here.
For each subscription or payment plan membership that you create, you will want to create a set of billing triggers.
- The first billing trigger is for when a payment fails. In this case you want to apply that membership level’s PAYF tag to block access and mark the account. You should also have the system send an email notifying the customer that their payment failed, with instructions on how to make payment.
- The second billing trigger is for when a payment is successful. Be sure to set it so that it doesn’t matter if the previous charge succeeded or failed. For this billing trigger you want to remove that membership level’s PAYF, SUSP and CANC tags. If you’re not using any of those just skip them, they’re not important. This ensure that once the payment does go through, the member’s access is restored. You may want to send the member a notice letting them know
- The third billing trigger is for when the maximum number of retries has failed. For this billing trigger you want to do a couple of things.
First, you want to run an actionset to cancel the subscription. This will prevent the subscription from continuing to attempt to rebill the customer.Second, you want to apply a SUSP or CANC tag to mark the account as terminated. Either tag will work and it’s really just a matter of personal preference as to how you want to mark the account. Some people prefer to use CANC only for intentional cancellations, some prefer to use SUSP only for intentional suspensions. Use what works best for you.
Third, you want to send an email notifying your customer that the access has been turned off. This email should let them know that their access has been turned off, so that they’re clear on the result of the failed payments. You can also use this to gently leverage the customer’s fear of missing out on future content to get them to sign up with a new subscription. Even if you don’t try to sell the customer into re-joining, you want to give good service by closing the relationship out properly.
A Note on Scaling Membership Levels
Memberium itself supports unlimited Membership Levels, in that it places no limits on what you can create. There are however real-world costs to creating excessive numbers of membership levels that will impact other systems outside of Memberium. In most cases it is not necessary to create hundreds of membership levels when a few will do, and the rest of the access can be controlled by tags.
Each Membership level requires 2 or more tags. Hundreds of membership levels will require creating several hundred tags. Creating 250 membership levels would require creating 500 tags dedicated to membership levels alone.
Excessive tags are one cause of slow performance in your Infusionsoft app.
In Memberium, for the user there are memory and processing costs with membership levels. When you login or when your user’s sessions are updated, Memberium must evaluate all of your membership levels and build lists and prioritize the access based on those membership levels. Creating a system with 250 levels means that Memberium must examine those 250-1000 tags even if your user only has 1 level. This takes extra time and memory to store all of this additional information. For every page access, the list of 500 membership levels is accessed, etc.
For the admin, the list of membership levels has to be displayed and evaluated in the page and post edit screens, resulting in hundreds of additional options being drawn, evaluated and checked.