WordPress plugin


Coil's official Web Monetization plugin lets you monetize some or all of your WordPress site. With a monetized site, you'll receive payments from Coil Members for each second they view your content.

You don't need a Coil account (free or paid) to use the plugin, but you might find that having one is helpful.

For you to receive payments from visitors:

  • You must have a payment pointer

  • Your visitors must have a Coil Membership and use the Coil Extension

How it works

At the most basic level, the plugin adds the Web Monetization meta tag to your site. For more information, see webmonetization.org.

The plugin's default content settings make all your pages and posts Monetized and Public. This means when Coil Members visit your site, you’ll get paid. Visitors who aren’t Coil Members can still access your content, but will see a customizable message suggesting they sign up for a Coil Membership.

You can change the way pages and posts are monetized on a global level, per-page and per-post, through the use of tags and categories, and through the use of blocks (Block/Gutenberg editor only).

System Requirements

  • PHP 7.3 or newer

  • WordPress 4.9 or newer

Install the plugin

  1. Log in to your WordPress admin dashboard.

  2. Go to Plugins.

  3. Click Add New.

  4. Search for keyword Coil. You'll see the official and a few unofficial plugins.

  5. Install the official Coil Web Monetization plugin.

  6. Click Activate.

Configure the plugin

After the plugin is installed, Coil appears as an option in your WordPress admin dashboard.

Select Coil to set up your payment pointer and adjust your content settings (if needed). The plugin contains additional configuration options that are covered in other sections.

Add your payment pointer

You must have a payment pointer to receive payments from Coil Members visiting your site. A payment pointer, assigned to you by your digital wallet provider, is a public address for your wallet account. It's how we know where to send your payments.

  1. Select Coil.

  2. Select the Global Settings tab.

  3. Enter your payment pointer.

  4. Click Save Changes.

If you use the plugin without setting a payment pointer, you won't get paid.

Also, any content gating you set up won't be recognized. Gating is an optional setting used to show or hide blocks of content based on a visitor's monetization status.

Review your content settings

Select the Content Settings tab.

Content settings let you globally assign monetization to each of your post types. Pages and posts are listed by default. You might see additional post types depending on your WordPress setup.

Content Setting


No Monetization

The selected post types are available to all visitors. You will not receive payments from Coil Members.

Monetized and Public

The selected post types are available to all visitors. You will receive payments from Coil Members. This is the default setting for pages and posts. Non-members will see a customized message suggesting they sign up for a Coil Membership.

Coil Members Only

The selected post types are only available to Coil Members and you will receive payments. Non-members will see a customized message stating the content is for members only.

The settings you choose for pages and posts can be overridden on an individual basis within the WordPress editor. For example, if you globally set pages to No Monetization, you can set an individual page to Coil Members Only within the editor.

Monetization hierarchy

In addition to globally monetizing all post types, you can optionally set up content gating on blocks of content (Block/Gutenberg editor only) and add different monetization settings to individual pages, posts, and taxonomies (such as tags and categories).

Since there are multiple pieces that can affect a page or post's overall monetization, it's important to understand the hierarchy in which monetization is applied.

Monetization applied to one or more blocks in a page or post overrides all other monetization settings. Monetization applied to an individual post overrides the monetization settings of any taxonomies, and so on.

If you install a third-party add-on that enables tags and categories for your pages, the same hierarchy rules apply. If more than one taxonomy is assigned, then the one with the most restrictive setting is used.

Monetize your content

Pages and posts

After installing the plugin, the editor provides you with page/post-level monetization options.



Use Default

Use the monetization setting defined in the plugin's Content Settings.

No Monetization

All visitors have access. You will not receive payments from Coil Members.

Monetized and Public

All visitors have access. You will receive payments from Coil Members. By default, non-members see a customizable message asking them to sign up.

Coil Members Only

Only Coil Members have access and you will receive payments. By default, non-members will see boxes covering the content and a customizable message asking them to sign up.

Classic editor

Block/Gutenberg editor


The Split Content option in the Gutenberg editor, shown in the image above, allows you to apply content gating at the block level. With content gating, you can control whether a block of content is visible or hidden from a monetized or non-monetized visitor.

As a best practice, we suggest following the 100 + 20 rule when deciding on which content to show and hide, and from whom.

When you select Split Content, the entire page is monetized, meaning you'll receive payments from visiting Coil Members. From there, select a block of content, then click Block in the right panel.

If you switch from editing in the Classic editor to the Gutenberg editor, your content is placed into a single block, regardless of the number of paragraphs your content contains. If you want to apply gating to individual pieces, you must manually split the content out into separate blocks.

Gating options



Always show

All visitors have access to the content in the block, regardless of any other monetization settings.

Show for monetized users

Only Coil Members have access to the content in the block. This option is ideal for providing pieces of exclusive, members-only content.

Hide for monetized users

Coil Members do not have access to content in the block, but non-members do. This option is ideal for hiding content like advertisements from Coil Members.

When a block is set to Show or Hide, a brightly colored tag appears at the top of the block. The tag is only visible in the editor and not in the published page/post.

When you preview your page/post from the Gutenberg editor, content in a Show for monetized users block might appear as black text over a dark gray box. This only occurs in preview mode. When you publish your page, the content will be hidden for those without a Coil Membership.

Tags and categories (taxonomies)

Similar to monetizing pages and posts, you can assign monetization to taxonomies. Tags and categories are available by default.



Other plugin customizations

Donation bar

By default, a message appears at the bottom of Monetized and public pages/posts when a visitor isn't web monetized. The message asks the visitor to consider signing up for Coil and includes a Learn More button.

You can change the message or disable the message entirely. To disable the message:

  1. Open the WordPress Customizer by selecting Appearance > Customize.

  2. Select Coil Web Monetization.

  3. Select Options.

  4. Uncheck the Show a donation bar... option.

  5. Click Publish when you're finished.


From the Excerpt Settings tab within the Coil plugin, you can choose to display excerpts of content to non-Coil Members on members-only pages and posts.

If you choose to show excerpts, we recommend you manually set excerpt text within your page/post. Manually setting excerpts is supported in the Classic and Block/Gutenberg editors.

Excerpt option in the Block/Gutenberg editor

If you don't manually set excerpts, WordPress automatically displays the first 55 words in the body of your page/post. This could cause Coil Members-only content to be visible to non-members.

Your particular theme and setup of WordPress dictate whether excerpts are supported and, if they are, where they appear (under the title, in the body, in search results, etc.). If you choose to show excerpts and none appear, the functionality might not be supported by your theme or setup.

Learn More button

The Learn More button is shown to non-Coil Members when they view Coil Members Only and Monetized and Public pages/posts. You can change the button's label and URL.

  1. Open the WordPress Customizer by selecting Appearance > Customize.

  2. Select Coil Web Monetization.

  3. Select Learn more button.

  4. Make your updates, then click Publish when you're finished.

Messaging settings

From the Messaging Settings tab within the Coil plugin, you can edit many of the messages your visitors will see under certain scenarios.

  1. Click Edit messages to open the WordPress Customizer.

  2. Select Messages.

  3. Make your updates. Each message includes a description for why the message could occur.

  4. Click Publish when you're finished.

You can navigate through your site using the right panel of the Customizer. If you go to a page as a non-monetized user and see a message, the message will update in real time as you make changes.


A padlock is shown next to page and post titles when the page/post is set to Coil Members Only or Split Content. To disable the padlock:

  1. Open the WordPress Customizer by selecting Appearance > Customize.

  2. Select Coil Web Monetization.

  3. Select Options.

  4. Uncheck the Show padlock... option.

  5. Click Publish when you're finished.

If you choose to show the padlock and it doesn't appear on your pages/posts, your theme might not support the feature.


Do I need a Coil account to use Coil's WordPress plugin?

No, but having a free creator account or a Coil Membership can be helpful.

A free creator account lets you post links to your site's monetized pages to Coil's Blogs page. With a Coil Membership, you can download and sign in to the Coil Extension to see exactly how your site appears to other Coil Members.

Can I post my WordPress site to Coil's Blogs page?

Yes, as long as you have a free Coil creator account and the page/post you link to is monetized.

What kind of privacy does the plugin offer me?

The plugin:

  • Doesn't share user data with Coil or any other party.

  • Won't install cookies or other tracking tools other than WordPress's built-in login features.

  • Doesn't require you to have a Coil account. All you need is a payment pointer provided by a Web Monetization-enabled wallet provider.


How do I test the Show/Hide functionality?

You can test blocks set to Show for Monetized Users and Hide for Monetized Users by viewing the page/post in:

  • An unsupported browser, such as Safari

  • A supported browser without the Coil Extension installed

  • A supported browser with the Coil Extension installed, but not signed in with a Coil Member account

  • A supported browser with the Coil Extension installed, and signed in with a Coil Member account (requires a paying Coil Membership)

Everyone/no one can see my monetized content. Why?

The most common reasons why monetization doesn't work as expected on a site-wide scale are:

  1. Your payment pointer is missing or incorrect. Check the plugin's configuration.

  2. Your plugin's content settings are set incorrectly.

  3. There's a conflict within your content monetization hierarchy.

  4. The plugin is referencing the wrong CSS selectors for your theme's content areas.

CSS selectors

Every theme has a stylesheet that defines the content areas for pages and posts. In many stylesheets, the CSS selectors for these areas are named .content-area and .entry-content. The Coil plugin uses these selectors by default. The selectors are set in the Global Settings tab of the Coil plugin settings.

If your monetized content is visible to all visitors, or isn't visible at all, your theme might use different CSS selectors.

First, try deleting the .content-area selector and replacing it with article. We've found that article .entry-content often works when the default doesn't. Save your changes then refresh a monetized page or post.

Second, if your monetized content still doesn't show correctly, force-refresh/force-reload the page/post. The command to do this varies per browser.

Third, if you are still having problems, inspect your theme's stylesheet to find the correct content area selectors.

  1. Right-click on a page/post that is showing/hiding content incorrectly.

  2. Select Inspect (Chrome) or Inspect Element (Firefox).

  3. Look through the <body> for a <main> element. You might have to drill-down quite a bit when looking through the stylesheet. If found, copy the id value and/or class value. For example, in <main class="site-main">, you'd copy site-main.

  4. Look for an article element (<article ...>). Note if found.

  5. Locate the div class for the content area (for example, <div class="page-content">). Copy the class value.

  6. In the Coil plugin settings, go to Global Settings > Advanced Config.

  7. Replace the values in the CSS Selectors field with what you've found. If you found article, include that as well. For example, a stylesheet containing: <main class="site-main"> ... <div class="page-content"> Means the following should be placed in the CSS Selector field: .site-main .page-content

The table below lists the top 15 most popular WordPress themes as of January 2020 and the CSS selectors they use for their content areas. Notice that most themes use the plugin's default.


Content Area CSS Selectors


.content-area .entry-content (plugin default)

Colibri WP (modern theme)



.content-area .entry-content (plugin default)

Hello Elementor

.site-main .page-content


article .entry-content


article .entry-content


.content-area .entry-content (plugin default)


.content-area .entry-content (plugin default)


article .entry-content

Twenty Fifteen

.content-area article

Twenty Nineteen

.content-area .entry-content (plugin default)

Twenty Seventeen

.content-area .entry-content (plugin default)

Twenty Sixteen

.content-area .entry-content (plugin default)

Twenty Twenty

article .entry-content

Uptown Style

.content-area .entry-content (plugin default)