One plugin. Every subscription model covered.
Everything that's included
SlimSubs handles the entire subscription lifecycle — from the first checkout to automatic renewals, role-based access, customer self-service, and automated follow-up emails. Configure it once and it runs itself.
Take payments and handle renewals — automatically
Stripe powers the payments. SlimSubs handles everything else.
SlimSubs connects to your Stripe account and takes care of the full billing cycle: checkout, recurring charges, failed payment retries, and cancellations. You set the price and billing cycle once. Everything after that is automatic.
Hosted Stripe Checkout
your customers pay on Stripe's secure page, not your server. Card details are never stored on your WordPress site — a genuine trust signal you can use in your marketing.
Any billing cycle you need
charge weekly, monthly, every 3 months, every year, or any custom interval. Each plan has its own cycle, so you can run a monthly and a yearly plan side by side.
Automatic renewals
Stripe bills your subscribers on schedule and SlimSubs updates their access automatically. No invoicing, no chasing, no manual work.
Free trials
offer any number of trial days before the first charge. Your customer enters their card at signup and isn't billed until the trial ends.
One-time signup fee
charge an onboarding or setup fee alongside the first recurring payment, in a single checkout. Subsequent renewals only charge the recurring price.
Coupon and promotion codes
enable a discount code field at checkout per plan. Create codes in your Stripe dashboard and share them however you like — SlimSubs and Stripe do the rest.
Failed payment handling
if a payment fails, access is suspended automatically. The moment Stripe successfully retries, access is restored — with no action needed from you or your customer.
Apple Pay and Google Pay
Stripe Checkout supports one-tap payments for customers on mobile devices, depending on their location and browser.
Run any subscription model — not just simple monthly plans
From a basic monthly plan to a complex tiered funnel — SlimSubs handles it.
Most subscription tools handle straightforward recurring billing. SlimSubs goes further: limited-run offers, automatic plan expiry, subscriber upgrades and downgrades, and billing pauses — all managed without writing a line of code.
Unlimited plans
create as many plans as your business needs. Different prices, different billing cycles, different content access — all managed from one admin panel.
Free plans
a plan priced at $0 activates instantly with no Stripe session and no card required. Use it for freemium tiers, beta access, or lead magnets.
Limited-run plans — stop after N payments
create an introductory offer that automatically stops renewing after a set number of payments. The subscriber keeps access until the end of the last paid period and isn't charged again. No manual cancellation needed.
Limited-run plans — stop on a specific date
set a cutoff date instead of a payment count. Useful for seasonal access, event-based content, or anything with a natural end date.
Upgrade and downgrade between plans
your subscribers can switch to a different plan directly from their account, without cancelling and resubscribing. The price difference is calculated and applied to the next invoice automatically.
Pause and resume billing
a subscriber who needs a break can pause their billing from their account panel. Stripe stops generating invoices. When they're ready to return, they resume in one click — no new checkout, no lost subscription history.
Automatic access revocation
when a subscription ends, is cancelled, or a payment fails, access is removed automatically. When it's restored — on a successful payment or a resume — access returns automatically too.
Show the right content to the right people — without managing it manually
Every post, page, or content block can be restricted to paying subscribers.
SlimSubs uses WordPress roles to control who sees what. When someone subscribes, they get a role. When they cancel, the role is removed. You decide which content requires which role — from the post editor, with a single click.
Restrict any post or page
open the post editor, find the Access Restriction panel in the sidebar, and select which subscription is required. That's the entire setup. Visitors without the right subscription see your paywall message instead.
Restrict content within a page
use the shortcode to gate a section of content rather than an entire page. Add a "Subscribe to read the rest" block inside a public article. Non-subscribers see whatever fallback text you choose.
Custom paywall message
you control what non-subscribers see. Edit the message in the plugin settings. Full HTML is supported, so you can include a call-to-action button, an image, or anything else.
Multiple roles per plan
one subscription can grant access to several content areas simultaneously. Useful when your paid tier unlocks both a resource library and a client portal, for example.
Bundle access across plans
if two plans both grant the same role, a subscriber with either plan can access that content. When one plan lapses, access continues as long as the other is active.
Admins always see everything
administrators are never locked out of their own content, regardless of subscription status.
Pages excluded from search results
mark any SlimSubs-related page (checkout, account, paywall) as excluded from search results with one checkbox. Functional pages are excluded automatically.
Your customers manage their own subscriptions. You don't do it for them
A complete self-service account panel — out of the box.
Add the shortcode to any page and your subscribers have a full account panel: they can see their subscriptions, payment history, switch plans, pause billing, and manage their card — without emailing you.
Subscription overview
subscribers see all their active plans, current status, next payment date, and the date they signed up.
Payment history
every payment is listed: date, amount, and status. Subscribers can check whether a payment went through without contacting support.
Upgrade or downgrade in one step
a "Switch plan" dropdown lets subscribers move between your paid plans from the account page. A confirmation prompt prevents accidental switches.
Pause billing from the account panel
no need to cancel. Subscribers pause their billing with one click and resume whenever they're ready.
Stripe Billing Portal — card and invoice management
a "Manage billing" button opens Stripe's secure portal, where subscribers update their payment method, download invoices, or cancel their subscription at the end of the billing period.
Cancel free plans directly
subscribers on free plans can cancel from the panel without any Stripe redirect.
The right email at the right moment — sent automatically
SlimSubs emails your subscribers so you don't have to.
Two situations trigger automated emails: when a payment fails, and when a limited-run subscription is about to end. Both are sent automatically, both are customisable per plan, and both are designed to keep subscribers engaged rather than lost.
Payment failure email
when Stripe can't collect a payment, the subscriber receives an email explaining what happened, the next retry date, and a direct link to update their card. Reduces involuntary churn without any manual follow-up from you.
Upsell email before a plan ends
when a limited-run plan is within 7 days of expiry, the subscriber receives an email with a direct link to subscribe to your standard plan. Converts promotional customers to long-term subscribers automatically.
Fully editable per plan
subject line and body text are editable in the admin panel for each plan separately. Use placeholders for the customer name, plan name, end date, and checkout link. Leave the body blank and a polished default HTML template is sent instead.
Sent once, at the right time
each email is sent at most once per subscription. You control how far in advance the upsell email is sent.
Configured in minutes. Managed in seconds
Three shortcodes. One settings screen. You're live.
SlimSubs doesn't require a developer to set up. Connect Stripe, create a plan, add a shortcode to a page, and you're ready to accept subscriptions. The admin panel shows you everything you need without requiring you to open the Stripe dashboard for day-to-day management.
Interactive setup checklist
the settings screen walks you through every step: API keys, webhook configuration, plan creation, and page setup. A green "Ready!" indicator tells you when everything is in place.
Automatic Stripe sync
when you create or edit a plan in WordPress, the corresponding Stripe product and price are created or updated automatically. No manual steps in the Stripe dashboard.
Shortcode for a single plan
shortcode renders a subscribe button for one specific plan. Add it to any page, landing page, or post.
Shortcode for a full pricing table
shortcode renders a responsive card grid of all your active plans, each with a checkout button. Control which plans appear and how many columns the grid uses.
Subscription list in the admin panel
see all active, paused, trialing, and cancelled subscriptions in one place. Filter by status or search by email address.
Direct links to Stripe
every subscription in the admin panel links directly to the corresponding record in your Stripe dashboard, so you can investigate or take action there without searching.
Built-in login and registration at checkout
when a logged-out visitor clicks a subscribe button, they see a sign-in and create-account form right there — no redirect to wp-login.php, no lost customers.
Built to work even when things go wrong
Subscriptions that activate reliably — not just most of the time.
A customer whose browser closes mid-checkout should still get access. A webhook that's delivered twice should only activate a subscription once. A missed Stripe event shouldn't leave a subscriber with permanent access they haven't paid for. SlimSubs is built with these edge cases in mind.
Webhook-driven activation
subscriptions activate via a Stripe server-to-server notification, not via a browser redirect. A slow connection, closed tab, or failed redirect doesn't cause a missed activation.
Duplicate event protection
if Stripe delivers the same event twice (which happens), SlimSubs processes it once and discards the duplicate. No double-charges, no double-activations.
Daily safety net
a scheduled task runs every day and checks for subscriptions that should have expired but whose Stripe event was missed. Access is revoked if it shouldn't still be active.
Automatic cleanup
abandoned checkouts and cancelled trial records are removed automatically. Your database stays clean without manual intervention.
Extend it without modifying core — hooks for every lifecycle event
Built for clean integrations.
If you're a developer using SlimSubs for a client project or building on top of it, there's a WordPress action hook for every subscription event. Connect a CRM, send a welcome email via a third-party service, issue a license key, update a spreadsheet — hook into whichever events you need.
10 action hooks
covering every subscription event: activation, cancellation, expiry, payment failure, pause, resume, plan switch, approaching end, and raw Stripe events.
3 filters
for customising the paywall HTML, the license server URL, and the upsell email lead time.
No WooCommerce dependency
installs on any WordPress 6.0+ site; no paid plugins required.
Modern codebase
PHP 8.0+, PSR-4 autoloading, official Stripe PHP SDK v13+; no build step for frontend JavaScript.
What you need to run SlimSubs
- WordPress 6.0 or newer
- PHP 8.0 or newer
- A Stripe account (free to create; test mode works for development)
- No WooCommerce, no page builder, no additional paid plugins required
SlimSubs works with any WordPress theme and any page builder, including DIVI, Elementor, Bricks, and the Block Editor.
Don't see your use case?
If your business involves charging for recurring access to anything on WordPress, SlimSubs can handle it. The combination of flexible billing cycles, role-based access control, and Stripe's payment infrastructure covers most models out of the box.
SlimSubs by SupaPlugins