If you’re running paid newsletters from WordPress and still manually emailing CSV exports to Stripe, you’re doing it the hard way. The Substack-replacement workflow is real, it’s mature, and the tooling has gotten sharp enough that you can own your list, gate your RSS feed, process payments with Stripe or Paddle, and stay GDPR-compliant without stitching together five fragile plugins. This guide covers the full stack.
Why WordPress for Paid Newsletters in 2026
Substack charges 10% of revenue. Ghost charges $9-$199/month plus Stripe fees. Both lock you into their infrastructure and their subscriber export terms. WordPress with the right stack charges you a flat Stripe processing fee (2.9% + 30 cents per transaction for US cards) and a one-time or annual plugin license. At $5,000 monthly recurring revenue, the math difference is material.
Beyond cost, you own the subscriber data, the delivery domain, the SEO from your public preview posts, and the codebase. That matters when you’re building a newsletter as a business asset, not a hobby.
Newsletter vs Membership: Picking the Right Mental Model First
Most WordPress guides conflate these two, and that causes plugin selection mistakes. They’re different products with different delivery contracts:
Type | Core delivery | Access model | Typical plugin fit |
|---|---|---|---|
Paid newsletter | Email to inbox on schedule | Active subscription = new content delivered | Newsletter Glue + MemberPress or Paid Memberships Pro |
Content membership | Gated pages and posts | Active subscription = view protected content on-site | MemberPress or Paid Memberships Pro standalone |
Hybrid | Both email delivery and gated archive | Subscription unlocks email AND historical archive | Newsletter Glue + MemberPress, or Ghost via API |
The target keyword for this post is “paid newsletter WordPress,” which almost always means the hybrid model: readers pay to receive email issues AND access a searchable archive of past issues. That’s the workflow this guide builds.
Plugin Stack: MemberPress vs Paid Memberships Pro vs Newsletter Glue
MemberPress
MemberPress is the most complete solution when you want rules-based access control with minimal configuration. It integrates natively with Stripe and PayPal, includes a coupon system, dunning emails for failed payments, and a subscriber portal where users manage their own billing. Pricing starts at $179.50/year for the Basic plan (as of May 2026 per memberpress.com). The Developer plan ($399.50/year) unlocks the REST API and the developer tools you’ll need if you want to automate subscriber onboarding via webhooks.
The key limitation: MemberPress’s built-in email tools are basic. You’ll need a bridge plugin to push gated post content as a formatted newsletter. That’s where Newsletter Glue enters.
Paid Memberships Pro
Paid Memberships Pro (PMPro) is a free core plugin with paid add-ons. The free tier is genuinely functional for basic access rules and Stripe integration via the free Stripe add-on. The All Access plan ($297/year as of May 2026 per paidmembershipspro.com) unlocks all add-ons including email confirmation flows, advanced Stripe features, and the email-marketing integrations.
PMPro’s advantage over MemberPress is cost at low volume and the open-source codebase - the plugin is more hackable if you need custom access logic. The disadvantage is that advanced features are spread across many individual add-ons, making the system harder to reason about when something breaks.
Newsletter Glue
Newsletter Glue is the missing piece for the newsletter use case specifically. It connects WordPress posts to your email service provider (ESP) and lets you publish a post to both your site and your subscriber list simultaneously from the Gutenberg editor. It supports Mailchimp, ActiveCampaign, ConvertKit, MailerLite, and SendGrid. Pricing starts at $89/year per site (as of May 2026 per newsletterglue.com).
The workflow it enables: draft an issue as a WordPress post, tag it as members-only in MemberPress or PMPro, hit publish, and Newsletter Glue delivers it to confirmed subscribers while the post itself is gated on your site. Non-subscribers see a preview with a payment CTA.
Payment Gateway: Stripe vs Paddle
Both MemberPress and PMPro integrate with Stripe directly. The choice between Stripe and Paddle comes down to one question: where are most of your subscribers?
Stripe
- Processing fee: 2.9% + $0.30 per successful card charge (US). European cards are 1.5% + EUR 0.25 for European businesses.
- Stripe handles payment processing only. You are the merchant of record, meaning tax collection and remittance is your responsibility in each jurisdiction.
- Best fit when your audience is concentrated in one or two countries and you’re set up to handle sales tax/VAT.
Paddle
- Paddle acts as a merchant of record, collecting and remitting VAT, GST, and sales tax globally. Fee is 5% + $0.50 per transaction (as of May 2026 per paddle.com developer docs).
- Higher per-transaction cost but eliminates tax compliance overhead entirely for digital subscriptions sold internationally.
- MemberPress supports Paddle via the Paddle add-on (Developer plan required). PMPro has community-maintained Paddle integration with less official support.
For most WordPress-hosted newsletters targeting English-speaking audiences in the US, UK, and Australia: Stripe. For newsletters with significant European subscriber bases where VAT compliance is a real concern: Paddle is worth the higher fee to avoid the compliance burden.
Gated Content Patterns
Access gating in WordPress is fundamentally a capability check on the current user’s membership level against the content’s access rules. Both MemberPress and PMPro implement this as post meta plus a shortcode or block that renders the paywall fallback for non-members.
Partial Content Preview
The standard pattern is showing the first 150-300 words of a post publicly, then cutting to a subscription prompt. MemberPress handles this with the “Excerpt Mode” rule on a membership level. PMPro does the same with the “Require Membership” meta box, plus the [pmpro_membership_levels] shortcode for inline prompts.
The critical SEO consideration: your gated posts need to be at least partially indexable. The public excerpt that renders for non-members and search engines should contain your target keyword in the first paragraph. Keep gating rules configured so that the first section of each issue is visible to Googlebot, not hidden behind a JavaScript paywall check. Google’s crawler is not logged in.
Member-Only Post Categories
A cleaner architecture for a newsletter archive is to create a dedicated WordPress category (e.g., “Member Issues”) and set a single access rule protecting that entire category. New issues are posted into that category. This means one rule controls everything instead of individual post-level rules that get out of sync over time. Both MemberPress and PMPro support category-level access rules.
Free vs Paid Tiers
If you run a free tier alongside a paid tier (common for newsletter growth), set up two membership levels: Free (registered subscriber) and Paid. Free members can read public archives and receive a weekly digest. Paid members get new issues immediately on publish. This maps cleanly to both plugins via level-based access rules.
RSS Feed Protection
This is the most commonly overlooked part of the paid newsletter stack. By default, WordPress exposes your full post content in RSS and Atom feeds at /feed/. Paid subscribers who use RSS readers expect this to work. Non-paying crawlers and scrapers should not get full content from the feed for free.
Authenticated RSS with MemberPress
MemberPress has a built-in feature called “Protected RSS” which requires a member-specific token appended to the feed URL for full content access. Subscribers get a personal RSS URL in their account portal. Non-authenticated requests to the main feed get the excerpt only. This is the right implementation: each subscriber gets a unique feed URL, so if a URL leaks, you can revoke that specific token.
PMPro RSS Options
PMPro does not include authenticated RSS out of the box. The recommended approach is to use the “Require Membership” block/shortcode to limit the full content in posts, which also limits what appears in the feed (WordPress feeds use the_content filter, which PMPro hooks). Full-content authenticated feeds require either a custom implementation or a third-party plugin like “Subscribe to Download” or similar.
Email Service Provider as the Delivery Channel
For many newsletter operators, the RSS feed for subscribers is a secondary feature. The primary delivery is email via Newsletter Glue to your ESP. If your subscribers primarily read via email, you can disable the public feed entirely (Settings > Reading > turn off feed links) and treat the WordPress site purely as the archive and payment entry point.
Double Opt-In and GDPR Compliance
Running a paid newsletter means you’re collecting email addresses, processing payments, and storing subscriber data. The compliance surface is real.
Double Opt-In is Non-Negotiable in the EU
Under GDPR, you need explicit consent for marketing communications. Double opt-in (a confirmation email before someone is added to your active list) is the standard implementation that demonstrates consent was affirmative, not assumed. Both MemberPress and PMPro trigger registration confirmation emails. When integrated with Newsletter Glue, ensure the ESP’s double opt-in flow is active for new subscribers added via the WordPress registration hook. Test this: create a test subscriber account and confirm you receive and must click a confirmation email before receiving the first issue.
Data Processing Agreement with Your ESP
Every ESP (Mailchimp, ConvertKit, etc.) has a Data Processing Agreement (DPA) available. Sign it. This is a contractual requirement under GDPR Article 28, which mandates written contracts with data processors. Most ESPs provide self-service DPA signing in their settings. The alternative - being caught without a DPA in a complaint investigation - is not a favorable position.
Your WordPress Privacy Page
Your privacy policy needs to explicitly describe: what data you collect at subscription (name, email, payment method), who processes it (Stripe or Paddle as payment processor, your ESP as email processor), how long you retain it, and how subscribers can request deletion. WordPress has a built-in privacy policy template generator under Settings > Privacy that covers some of this, but it needs customization for your specific stack.
Cancellation and Data Deletion
When a subscriber cancels, their membership level reverts. Their email address stays in your ESP unless you implement a deletion workflow. Both MemberPress and PMPro have hooks you can use to trigger ESP API calls on membership expiry. Wire these up. A cancelled subscriber should be moved out of your active list (or tagged as inactive) automatically. Manual list maintenance at scale is how compliance problems accumulate.
How This Compares to the Broader Membership Site Stack
If you’ve already read through how to build a membership site with WordPress, you’ll recognize that paid newsletters are a specific application of the same access-control infrastructure. The difference is that newsletters add an active delivery obligation - you’re not just protecting content, you’re publishing on a schedule and pushing it to inboxes. That delivery layer is what Newsletter Glue solves.
Compared to Ghost’s built-in membership and email system, the WordPress stack requires more setup but gives you more control over content structure, SEO, and extensibility. Ghost is genuinely faster to configure for a basic paid newsletter. WordPress wins when you have existing site infrastructure, need complex access rules, or want to integrate newsletter revenue with other monetization streams like online course sales or affiliate review content.
Step-by-Step: Minimum Viable Paid Newsletter on WordPress
Step 1: Install and configure MemberPress
Install MemberPress, connect Stripe in MemberPress > Settings > Payments, and create your first membership level (e.g., “Newsletter Subscriber - $7/month”). Set the access rules to protect your “Member Issues” category. Enable the subscriber portal so members can manage their own billing without contacting you.
Step 2: Configure the protected RSS feed
In MemberPress > Settings > General, enable Protected RSS and set the feed to show excerpts only for non-members. Test with a logged-out browser and an RSS reader to confirm gating is working before you publish any paid content.
Step 3: Connect Newsletter Glue to your ESP
Install Newsletter Glue, authenticate with your ESP, and map your paid member list to the Newsletter Glue audience. Create a test issue post in your “Member Issues” category, draft it in Gutenberg with the Newsletter Glue sidebar active, and do a test send to your own address before going live.
Step 4: Set up a landing page for new subscribers
Create a WordPress page with the MemberPress registration form for your paid plan. This is your Substack-equivalent landing page. Write copy that explains what subscribers get, how often you publish, and what the cancellation policy is. Include a plain-language data processing disclosure if you’re targeting EU readers.
Step 5: Test the full subscriber journey
Sign up with a test card (Stripe provides test card numbers), confirm the double opt-in email arrives, verify the welcome email fires from MemberPress, publish a test issue, confirm it arrives in your inbox, and verify the post is gated on the site. Then cancel the test subscription and verify your ESP list is updated accordingly.
Pricing Realities in 2026
Component | Annual cost (estimate) | Notes |
|---|---|---|
MemberPress Basic | $179.50 | Per memberpress.com, May 2026 |
Newsletter Glue | $89 | Per newsletterglue.com, May 2026 |
Mailchimp Essentials (500 contacts) | $156 | $13/month, per mailchimp.com, May 2026 |
Stripe processing (on $5k MRR) | ~$1,800 | 2.9% + $0.30 per transaction estimate |
WordPress hosting (managed, mid-tier) | $240-$600 | Varies by host |
Substack equivalent (at $5k MRR) | ~$6,000 | 10% platform fee |
At $5,000 MRR, self-hosted WordPress with this stack runs roughly $2,500-$2,800 in annual tooling and processing costs versus $6,000 for Substack’s platform fee alone. The breakeven point where switching makes economic sense is somewhere around $1,500-$2,000 MRR, depending on hosting costs and subscriber count. Below that threshold, the operational overhead of managing the stack probably isn’t worth it.
Common Failure Modes
- Cron-based dunning fails silently. MemberPress uses WordPress cron for subscription renewal reminders and payment retry logic. If your hosting provider has WP-Cron disabled or throttled, dunning emails don’t send and failed payments don’t retry. Use a real cron job or a cron manager plugin to trigger
wp-cron.phpon a reliable schedule. - Newsletter Glue sends to the wrong audience. When you connect Newsletter Glue to your ESP, the audience mapping is manual. If you have both a free and a paid list in Mailchimp, it’s easy to accidentally send a paid issue to the free list on first publish. Double-check audience configuration before the first live send.
- RSS feed reveals full content to crawlers. Verify your feed gating with a tool like Feedly using a non-logged-in URL. Some caching plugins bypass MemberPress’s content filters and serve cached full-content versions to unauthenticated requests.
- Stripe webhook failures during subscriber status updates. MemberPress relies on Stripe webhooks to update membership status on cancellation, failed payment, and renewal. Ensure your WordPress site’s webhook endpoint is accessible (not behind basic auth or a firewall) and that the Stripe webhook secret matches the one configured in MemberPress. Check the MemberPress transaction log after any payment event.
Conclusion
Running a paid newsletter on WordPress in 2026 is a solved problem if you pick the right combination: MemberPress for access control and Stripe payment processing, Newsletter Glue for Gutenberg-to-inbox delivery, and a real ESP for list management and compliance tooling. The setup takes a day, not a week. The compliance pieces - double opt-in, DPA agreements, cancellation flows - are the parts that deserve careful attention, not the plugin configuration.
For the broader membership infrastructure question, the WordPress membership site guide covers access rules, subscription tiers, and content protection patterns in more depth. For newsletter operators who also want to add course revenue to their stack, the LearnDash and WooCommerce course setup guide walks through how to combine membership-based access with course enrollment.
Frequently Asked Questions
Can I run a paid newsletter WordPress site without MemberPress?
Yes. Paid Memberships Pro with the free Stripe add-on handles basic paid newsletter access control at lower annual cost. The tradeoff is more configuration overhead and less polished subscriber-facing tools. For newsletters starting below $500 MRR, PMPro is a reasonable starting point you can migrate off later.
Does Newsletter Glue work with Substack-style free previews?
Newsletter Glue delivers whatever content is in the post to your email list. The free preview logic is handled by MemberPress or PMPro on the website side - they render a truncated version of the post for non-members. For email, you control what goes in the email by editing the post content. A common pattern is to write the full issue in the post, set the MemberPress excerpt mode to show the first section on site, and let Newsletter Glue send the full content to confirmed paid subscribers.
What is the best WordPress newsletter plugin for GDPR compliance?
Compliance is not a single plugin feature - it’s a stack configuration. Double opt-in is handled by your ESP (Mailchimp, ConvertKit, etc.), not by MemberPress or PMPro. Your ESP’s settings need double opt-in enabled for any list that receives marketing emails. MemberPress handles the membership contract side (confirmation emails, billing record). GDPR compliance also requires a signed Data Processing Agreement with your ESP and a privacy policy that discloses your data processing chain.
Can I migrate from Substack to WordPress without losing subscribers?
Substack allows you to export your subscriber list as a CSV. You can import this into your ESP. For paid subscribers, migration requires coordination: you pause Substack billing, notify subscribers of the new payment URL on your WordPress site, and manually import free subscribers. Stripe does not allow direct migration of active subscriptions between accounts, so paid subscribers need to re-subscribe through your MemberPress checkout. Most newsletter operators give migrating paid subscribers a free period during transition.
Is Paddle better than Stripe for a paid newsletter with international subscribers?
Paddle is better specifically for avoiding VAT registration and remittance obligations across multiple EU and other jurisdictions. If more than 30% of your subscriber base is outside the US and in VAT-applicable countries, Paddle’s merchant-of-record model simplifies your tax compliance significantly. If most of your subscribers are in the US, Canada, or Australia, Stripe’s lower transaction fee (2.9% + $0.30 versus Paddle’s 5% + $0.50) makes Stripe the better choice.





No comments yet