Every few weeks someone asks our team a version of the same question, usually in a support thread or a review comment: "wait, is this actually free, or is there a catch?" They've installed WP Career Board or WPMediaVerse expecting the usual WordPress plugin experience, where the free version is a fifteen-minute demo dressed up as a product, and every button that matters is grayed out behind an upgrade nag. Then they open the settings page and find the whole thing works. Employer dashboards. Applicant tracking.

Custom database tables. AI moderation. No paywall in sight for the core feature. And they're suspicious, because they should be. Most of our industry has trained them to be.

I want to explain why we build it this way, because it isn't charity and it isn't a marketing trick either. It's a specific rule about where a paid line should sit, and I think most plugin companies draw that line in the wrong place because it's the easy place to draw it, not the honest one.

The Industry Default, and Why It's Broken

Here's how the standard WordPress freemium plugin works. You install the free version. It does something, technically. Maybe it creates one contact form instead of unlimited forms. Maybe it exports to CSV but not to the format you actually need. Maybe it lets you build a landing page but strips the header and footer unless you pay. The free tier isn't a smaller version of the product, it's a broken version of the product, engineered specifically to be frustrating enough that you upgrade out of annoyance rather than genuine need.

I understand the business logic behind it. If the free thing works, why would anyone pay? That's the assumption baked into most freemium plugin strategy, and it's treated as self-evident. But I think it's wrong, and not just on principle. It's wrong as a business strategy, for three concrete reasons that have nothing to do with ethics.

First, a crippled free tier poisons the one thing it's supposed to produce: trust in your evaluation. Site owners install a lot of plugins before they settle on one. If your free tier is designed to fail them at the exact moment they'd need it to succeed, they don't conclude "I should upgrade." They conclude "this plugin doesn't work" and they uninstall it. You don't get a second chance at that first impression, because they've already moved to the next search result. You spent your one shot at winning them convincing them your product is broken.

Second, it generates support load from people who are furious, not curious. A frustrated free user who hits an artificial wall doesn't file a calm feature request.

They leave a one-star review titled "USELESS UNLESS YOU PAY" and then, if they do email support, they're already hostile before your team says a word. Our support team spends real hours every week on tickets, and a ticket that opens with contempt takes longer to resolve than one that opens with a genuine question, because half of it is now emotional labor. Crippled free tiers don't just cost you goodwill, they cost you support time on the exact users least likely to convert.

Third, and this is the one people underrate: it selects for the wrong customers. If your upgrade path is "we made the free thing annoying enough that you paid to make the annoyance stop," you've filtered for people who resent you. They pay, but they pay like someone paying a toll, not someone buying a tool they believe in.

Those customers churn fast, argue about refunds, and don't refer anyone. Compare that to a customer who used the free plugin for eight months, hit a real growth wall, and upgraded because the paid tier solved an actual problem they now understood deeply because they'd lived inside the free product. That second customer is worth more to us over years, not because they spend more per month necessarily, but because they trust the relationship.

So the crippled-free-tier model isn't just something I find distasteful. I think it's a genuinely worse business than the alternative, once you look past the first quarter.

What "Not Crippled" Actually Looks Like

Talk is cheap, so let me show you the actual feature lists instead of describing them in the abstract.

Take WP Career Board, our job board plugin. Its own readme says it plainly: "WP Career Board is fully functional as a free plugin." Not "functional with limits." Fully functional. The free version includes employer dashboards, candidate applications, company profiles, BuddyPress integration, and full applicant tracking.

Guest applications work out of the box, no account required, with name, email, and cover letter fields. If you're migrating off WP Job Manager, there's a one-click migration tool built into the free plugin, not gated behind a purchase. A site owner can stand up a complete job board today, publish real postings, accept real applications, track candidates through the hiring process, and run it on BuddyPress integration if their site is a community, all without paying us a dollar.

Pro adds: a drag-and-drop Kanban hiring pipeline with custom stages, a resume builder, a Stripe-based credits system so employers can buy job posting credits, AI-generated job descriptions, a multi-board engine for running several independent job boards from one install, a custom field builder, job alerts, RSS/XML job feeds for aggregators, and interactive maps.

Look at that split for a second. None of the Pro features are "the basic feature, unlocked." They're all things that only make sense once you're operating at a different scale or trying to run a different kind of business on top of the board. A single-company job page doesn't need a multi-board engine. A site posting five roles a year doesn't need a Stripe credits system. Those features exist because someone is now running a monetized, multi-tenant, high-volume operation, and at that point the plugin is doing meaningfully more work for them, and costing us more to build and support.

WPMediaVerse follows the same pattern, and honestly it's a more extreme example because the free tier is doing more structurally difficult work.

It's a full media platform for WordPress, built on custom database tables instead of stuffing everything into wp_posts, which is the architectural decision that actually matters for anyone running a large community site. The free feature list, straight from the plugin: custom table architecture across three indexed tables, drag-and-drop uploads with MIME validation and EXIF stripping, albums and smart collections with auto-curation rules, six reaction types, threaded comments, favorites, mentions, follow and unfollow, AI moderation through OpenAI Vision that scans uploads automatically and can flag, quarantine, or reject content before it goes public, six privacy levels per upload, an explore feed, a full lightbox experience, BuddyPress integration for activity uploads and profile and group tabs, nine Gutenberg blocks, more than eighty REST API endpoints across twenty-three controllers, eighteen WP-CLI commands, eight shortcodes, outbound webhooks signed with HMAC-SHA256, and complete GDPR export and erasure support.

That's not a trimmed evaluation copy. That's most of what a serious community site needs to run photo and video sharing, moderated, private-capable, and fully wired into BuddyPress, for free, forever.

Pro adds five additional layout modes (Instagram, Pinterest, Flickr, Dribbble grids on top of the standard grid), a gamification engine with points, streaks, and boosts, S3 and BunnyCDN cloud storage drivers, video transcoding with HLS adaptive streaming, auto-captioning through Whisper, per-user storage quotas tied into MemberPress, WooCommerce, or PMPro, voice messages and read receipts in direct messages, Google Vision and AWS Rekognition as additional moderation providers, and migration importers from rtMedia, MediaPress, and BuddyBoss.

Again, notice what's on that list. Storage quotas only matter once you have enough users that storage is a real constraint. Video transcoding only matters once your community is uploading enough video that raw files are a bandwidth and playback problem. CDN drivers only matter once local disk storage stops being sufficient. Migration importers only matter to the subset of people moving off a competitor, which is a real cost to build and maintain but has nothing to do with whether the core plugin works.

The Actual Rule

Here's the rule we use, stated plainly: the paid line sits where our costs start scaling with the customer's success, not at the point where the customer starts using the basic feature.

Storage offloading. Video transcoding. Migration tooling. Payment and monetization rails. Support.

Those are the categories that land in Pro, and every one of them shares a property: the need for them only appears at size, and providing them costs us more as the customer's usage grows. A small job board with three postings costs us essentially nothing to support for free, forever. A job board running a Stripe credits system with thousands of transactions and multi-board tenancy is now a business we're partnering with, and it makes sense for that partnership to be commercial. A community site with two hundred photos costs us nothing extra. A community site that needs to transcode terabytes of video into adaptive streams is now consuming real infrastructure thinking and, if we host any of that pipeline logic, real compute.

Compare that to the standard industry rule, which is closer to: the paid line sits wherever it's technically easiest to insert a check, usually right at "does this feature run at all." That's why so many plugins gate "unlimited items" behind Pro even when a hundred items costs the vendor nothing extra to serve, because the item count lives in the customer's own database, not the vendor's infrastructure. It's an artificial scarcity, manufactured because it's convenient to build, not because it reflects any real cost difference.

Our rule means some features that competitors charge for immediately, we give away completely, because giving them away costs us nothing ongoing.

AI moderation via OpenAI Vision is in WPMediaVerse's free tier, not Pro, because the AI cost there is a pass-through the site owner already covers with their own API usage, and gating "can you moderate your community at all" behind a paywall is exactly the kind of survival-feature gating I find distasteful. But storage quotas tied to WooCommerce, MemberPress, or PMPro subscription tiers are Pro, because building and maintaining three separate integration layers for three membership plugins is a real, ongoing engineering cost that scales with how many of those combinations customers run.

The Honest Tension: Free Users Cost Money

I don't want to pretend this is free for us to run. It isn't. Every free installation generates support tickets, bug reports, feature requests, and infrastructure thinking, and none of it comes with a subscription attached. Our support team handles free-tier tickets every single week, and that time isn't reimbursed by anyone. If I told you this model has no real constraint, I'd be lying to make the post read better, and that's not the point of writing it.

Here's how we actually manage that constraint, honestly. We can afford this because Pro customers subsidize free support, and we've built our support process so free-tier support scales without linear headcount: documentation is thorough, common issues get fixed at the plugin level instead of answered one-on-one repeatedly, and community-generated answers (forum threads, other users helping each other) absorb a meaningful share of free-tier questions before they ever reach us.

We also don't offer free-tier support with the same response-time commitment Pro gets. That's the honest trade: full features, best-effort support, versus fewer artificial limits but a paid support SLA once you need it fast.

I'll also say plainly: not every plugin company can run this model, and that's not false modesty. If your business is a single plugin with no upgrade path and no diversified revenue, a fully-functional free tier might genuinely starve you, because you don't have Pro revenue elsewhere in the portfolio subsidizing the free-tier support cost. We can afford it because we run a portfolio of plugins and themes, and because our team treats support infrastructure (docs, self-serve troubleshooting, community threads) as a first-class investment rather than an afterthought.

A single-product shop trying to copy this exact approach without that infrastructure underneath it could genuinely hurt itself. I'm not telling every plugin developer to do what we do blind. I'm telling you what we do and why it works for us specifically.

What This Means for Your Risk as a User

Here's the part I actually care about most, more than the business reasoning. If you can run the whole plugin, fully, on the free tier forever, then you can also leave, fully, whenever you want. We don't hold your job board or your media library hostage behind a feature you suddenly discover you need on day ninety. Lock-in isn't our retention strategy, and I think it shouldn't be anyone's.

The honest version of what we're telling you is this: for most people, running a straightforward job board or a modest community media library, the free version is genuinely enough. Not "enough to get started." Enough, period. We say that even though it costs us a sale, because it's true, and because a customer who installs the free plugin, uses it happily for a year, and never once needs Pro is not a failure of our business model.

They're the whole point of it. You pay us when you actually get big, when scale, storage, transcoding costs, monetization, and support response time start mattering more to you than a license fee. Until then, keep the money.

That's the rule. Not "the free version is a trap set to expire." Not "the free version is a taste." The free version is the product, sized for where most people actually are, and Pro exists for the moment your success outgrows what a free tier can reasonably keep subsidizing. If that moment never comes for your site, good. That was always allowed.

We built it this way because our team has to look our own customers in the eye, in support tickets, in reviews, in the plugins we use ourselves. A crippled free tier is a bet that frustration converts better than trust. We're betting the other way.

The Test We Apply, Written Down

When our team argues about which side of the line a feature belongs on, and we do argue, the question we settle it with is not "would people pay for this?" Almost anything can be sold if you withhold it hard enough. The question is: does this feature cost us more as the customer succeeds?

If the answer is no, it belongs in free. If the answer is yes, it is a fair candidate for paid.

What the feature does Does our cost scale with their success? Where it goes
Core function the plugin exists to perform No Free, always
Storage of member-uploaded files Yes, directly Paid
Video transcoding and delivery Yes, directly Paid
Migration tooling from another plugin One-off build, ongoing maintenance per source Paid
Payment rails and monetisation Yes, support load and liability Paid
Basic access control and privacy No Free
Moderation and safety tools No Free, on principle
Cosmetic variety, extra layouts No, but it is genuinely optional Paid, and nobody is blocked
Priority support with a response commitment Yes, it is human time Paid

Moderation sits in that table as the one deliberate exception to our own logic. It does cost us something, and by the rule it could arguably be paid. We put it in free anyway, because a community that cannot moderate uploads is a community that will eventually host something awful, and we are not willing to make that a billing decision.

The Objections We Actually Get

"Doesn't this cost you sales?"

In the short term, yes. There are certainly people running our free plugins today who would have paid if we had put a wall in front of them. We know that. The trade we are making is that a larger number of people evaluate us fairly, tell other people, and come back when they genuinely need the paid tier. That is a slower business than an artificial wall, and it compounds better.

"What stops you changing your mind later and paywalling it?"

Nothing formal, and I would be suspicious of any vendor who claimed otherwise. What I can point at is the practical answer: the free plugins are GPL, they are on WordPress.org, and every version we have ever shipped stays available. If we did something you disagreed with, you would keep the version you have and the community could carry it forward. That is not a promise, it is a property of how the software is licensed, which is worth more than a promise.

"If free is enough, why would anyone pay?"

Because "enough" is relative to size. A community with two hundred members and a few thousand photos genuinely does not need cloud storage, transcoding, or per-user quotas. The same community at twenty thousand members does, and at that point the paid tier is cheap relative to the problem it solves. We would rather sell to the second version of that customer than trick the first one.

"Is the free version just a demo with a time limit?"

No. There is no trial period, no feature that expires, and no nag screen that escalates. If you install the free plugin and never pay us, that is a supported outcome, not a failure state.

Why We Can Afford This Model

I want to be careful not to present this as a moral position that every plugin company should adopt, because the honest truth is that it depends on your economics.

We can run this way for a few specific reasons. We have a portfolio rather than a single product, so a member who arrives through one free plugin often ends up paying for something else entirely. We have been doing this for over a decade, which means our costs are known and our support processes are mature. And a meaningful share of our revenue comes from customers who are running real businesses on top of these tools, where the paid tier is a rounding error against what the site earns them.

A brand new company with one plugin and no runway does not have those advantages. If you are in that position and you gate more aggressively than we do, I am not going to tell you that you are doing something wrong. What I would say is this: be honest about which features you are gating because they genuinely cost you, and which ones you are gating purely as leverage. Your customers can usually tell the difference, and the ones who can are the ones worth keeping.