How to Setup Metered Paywall for WordPress Content

If you like reading big online magazines and newspapers, you’ve probably come across a website or publication that allows you to read a limited number of posts or articles for free within a set timeframe. Once you reach that threshold, they will ask you to become a paid member or subscribe to a subscription or membership plan to gain unlimited access.

This method of restricting access to content is called Metered Paywall, and the New York Magazine, The New York Times, and Medium use it.

We built the Metered Paywall addon to make it seamless to add a metered paywall to any content, post, page, custom post type, and taxonomies in WordPress. We are making it easy to paywall WordPress content.

Please note that the Metered Paywall addon doesn’t work with work with hosts that cache heavily such as WPEngine, Flywheel, Pagely, SiteGround, Pressable. But it can be easily resolved by requesting them to disable caching or the cookie below from caching.

For single site: ppress_mv
For multisite: ppress_mv_<site id>

Or they can simply exclude from cache the cookie matching this pattern ppress_mv*

Activating the Addon

To get started, ensure you have ProfilePress installed and activated on your site. Then, activate the Metered Paywall addon at ProfilePress>>Addons.

Setting up Metered Paywall for WordPress

The Metered Paywall addon lets you define or configure the content to make it accessible to guests and non-paying members on your WordPress site. Consequently, you need to ensure the contents are already protected or restricted with the ProfilePress content protection feature. Otherwise, everyone will still access the content after hitting their limit.

Example / Usecase

Say all published posts on your WordPress site are available only to Standard membership plan subscribers, but you want to offer three free post views daily to guests and users not subscribed to the Standard membership plan (implementable via this code snippet). The below guide is how you would set things up.

Setting up the Content Protection

Using the example/use-case above, we will protect all posts from all users except members subscribed to the Standard plan. This means only Standard plan subscribers can access all published posts.

To restrict all posts to members with an active Standard plan subscription, go to ProfilePress >> Content Protection.

Click the “Add a Protection Rule” button to add a new rule.

Select “All Posts” as the “Content to Protect” condition.

In the “Access Condition” section, you define who can access all your posts. In our case, Logged-in users with an active subscription to the Standard plan. In the screenshot below, I checked “Administrator” because I also want all site admins to have access to all posts.

When a post is restricted or protected from a user, we want to show an excerpt of the post and our message urging them to subscribe.

I selected the “Blur & Fade Effect” as the Access Message style to give the end of the post excerpt a blurring/fading effect.

Finally, save your changes.

Next is to use the Metered Paywall addon to define the posts and the number of free views guests and non-members of the Standard plan are limited to.

Setting up the Metered Paywall

Go to ProfilePress >> Content Protection and click the Metered Paywall menu tab.

The Reset limitation after setting lets you define how long before a restricted user can once again view protected content for free after hitting their limit.

Use the Restrictions section to define the post types and, optionally, the taxonomy to make available for free viewing and the number of free views to grant to users.

If you’ve added multiple roles of restrictions and want to use a single value for the total number of allowed free views regardless of content type or taxonomy, use the Total Free Views setting.

Preventing Abuse

The IP Blocker feature stops readers from using the incognito mode or private window in their browser to get around paywalls. It records the IP address that a visitor comes from. If the visitor uses their free article meter and then switches to an incognito mode, private window, or a different browser, they will still get stopped and asked to subscribe.

To activate the “IP Blocker” feature, check the Enable checkbox. Then, use the “Clear IP Log” button to clear blocked IP Addresses.

Don’t forget to save your changes.

Countdown Slidebox

Our Metered Paywall addon can display a customizable slide-box on restricted content to let guests and non-members know how many views they have left before they are required to subscribe.

When a user views restricted content, a notice slides in from the bottom left of the screen after a few seconds alerting them to how many free articles they have remaining.

To enable the countdown slidebox, scroll to its section and enable it.

Save your changes when you are done.

That is how easy to paywall your WordPress content using the metered paywall model.

When users hit the free view limit, they would see the message urging them to subscribe to a membership plan to gain unlimited access.

WordPress metere paywall demo content


Finding a way to make money from your blog can be tricky. If you aren’t selling a product or generating ad revenue, it might not be obvious how you can turn your hard work into cash.

A paywall can be the perfect solution, letting you generate money from your audience in exchange for access to your content.

Fortunately, ProfilePress makes it easy to add a metered paywall to your blog by following these simple steps:

  1. Install the ProfilePress plugin.
  2. Enable the Metered Paywall addon.
  3. Create your membership plan(s).
  4. Protect your content with the Content Protection feature
  5. Use the Metered Paywall settings to define content to make available for free.

There are other types of Paywalls, such as Hard and Soft Paywalls. Learn how to set up a WordPress paywall for your content.