Total cost of ownership
WordPress 3-Year Cost: Use Your Invoices
WordPress can be cheap or expensive, and the invoice does not tell you which. Add up what you really spend: hosting, plugins and licences, whoever you pay for support, the hours your own team loses to it, the times it broke, and the changes you have planned. Then price the alternatives against that same list.
Commercial and platform references checked July 24, 2026.
Hassan Jamal·Feb 8, 2026·6 min read
Before you open a spreadsheet, hear from three people closer to WordPress than we are. The founder and two developers on r/Wordpress said this in April 2026, in their own words, and each quote links to the original post.
"We are not being killed by competition, I believe we have done this to ourselves. When Cloudflare can ship the entire functionality of WordPress, and then some, in 2 months, we can take longer than that to almost not ship one sub-menu of our Settings screen.
Matt Mullenweg (WordPress co-founder) · Internal Slack post · Apr 14, 2026 · Verify source
"The dictator, who micromanaged the project for two decades, says community is to blame for the results.
u/Rarst · r/Wordpress · Apr 14, 2026 · 128 upvotes · Verify source
"Having a db is not a problem, it is that WP database structure is straight from hell, and it is like that for the sake of being retrocompatible. They should have made a breaking change with v5 or v6 and completely redesign it.
u/zenotds · r/Wordpress · Apr 14, 2026 · 4 upvotes · Verify source
The short answer
WordPress can be cheap or expensive, and no published average tells you which case you are in. The number that matters is the one you build from your own paid invoices, your own internal hours and the incidents you have actually had. Five things go into it. Our own terms, so you can check them against any quote: from $1,500 at a fixed price agreed before we start, no minimum project size, and the code, design files and accounts are yours at the end.
- ✓There is no defensible average three-year cost for every WordPress business site.
- ✓Use paid invoices, contracts, time records, incidents and approved roadmap work as the base case.
- ✓Compare maintain, optimize and migrate using the same features, traffic, service level and time period.
- ✓Do not count hypothetical traffic or revenue as savings unless first-party evidence and an attribution method support it.
- ✓A custom site still has hosting to pay for, packages to update, and someone who has to look after it.
This guide gives no single three-year total, no multiplier for hidden cost and no standard payback period. What your site costs depends on the hosting plan you are on, what you subscribe to, what it connects to, how much traffic it takes, the service level you pay for, and how many of your own hours go into editing, updating, supporting and fixing it. A number from someone else's sample tells you nothing about your bill. Build the number from your paid invoices, contracts and time records, and price custom operation as a real cost line rather than as zero.
Invoices
Hosting, licenses, services, support and incidents.
Labor
Internal editing, updates, QA, recovery and coordination.
Forecast
Renewals, growth, roadmap, contingency and exit.
Compare
Same capability, service level and evidence rules.
The three-year TCO formula
Seven lines make up the total, and only committed or observed cost belongs in the base case. If a line is a forecast rather than something you have paid or measured, keep it out of the base and put it in a scenario instead. The formula is written out so every term is visible and the result can be checked against your own records.
+ planned renewals and usage growth
+ internal operating labor
+ contracted maintenance and support
+ expected roadmap work
+ incident and contingency allowance
+ migration or exit work inside the period
Keep the base case to committed or directly observed cost. Put uncertain items in low, expected and high scenarios with named inputs. Do not combine a worst-case WordPress scenario with a best-case custom scenario. For how the same inputs are gathered when the comparison is a move off the platform, see the WordPress migration cost breakdown.
Collect the recurring invoices
"WordPress can be cheap or expensive, and the invoice alone never tells you which.
Start with what you are already paying, because the real number is almost never the one people quote from memory. Six categories catch nearly all of it, and the lines that get forgotten are the annual renewals and the retainer that has been running quietly since launch. Work from invoices rather than from a list of plugins.
- ✓Hosting, the CDN, storage, backups, a staging site and your domain
- ✓Your theme, the page builder, and the plugins doing forms, SEO, security, caching and media
- ✓Commerce, subscriptions, bookings, memberships and payment-related extensions
- ✓Search, email sending, analytics, the consent banner, chat, monitoring, and anything wiring them together
- ✓Agency, freelancer, care-plan and emergency-support retainers
- ✓Taxes, currency, overages, seats and annual renewal changes
Use current invoices and renewal notices. Public list prices may differ from a contracted, grandfathered, promotional or usage-based amount. For every line, note who is billed, when it renews, how much you actually use, what depends on it, and what breaks if you cancel. An extension-heavy stack can also carry an operating cost that never appears on a licence line, which is what our guide to WordPress plugins and site speed works through.
Count internal operating work
The largest line in a WordPress bill is usually the one nobody invoices: your own people. Six categories of work happen whether or not anyone logs them, and they surface as slower releases and interrupted afternoons instead of as a cost. Count those hours before you compare any two platforms on price.
- ✓Core, theme and extension update review, staging and release
- ✓Content, product, merchandising and campaign changes
- ✓Performance, accessibility, analytics and search checks
- ✓User access, vendor reviews, security monitoring and backup tests
- ✓Plugin conflicts, failed jobs, integration changes and support coordination
- ✓Time your procurement, finance and management people spend on the website
Multiply recorded hours by an agreed fully loaded internal rate. If time is not tracked, sample a representative operating period and label the estimate. Do not invent an industry maintenance retainer and apply it to a team that handles the work differently. If much of that time goes into chasing performance problems, work through the evidence-led method for fixing a slow WordPress site before you price anything else.
Handle incidents without a fake average
For incidents you have already had, write down the hours spent responding, what outside help invoiced, how long you were down, the transactions that failed, what it took to recover the data, the support load, any legal review, and who you had to notify. For future scenarios, use a separately labelled contingency or risk-adjusted model approved by the business. One public breach-cost statistic does not predict this site's loss. For the exposure that sits behind that contingency line, read our review of WordPress security risk in 2026.
Include roadmap and technical debt
Write down what the business expects to do over the three-year window you are modeling. New markets. New products. Subscriptions. A redesign. Different content structures. A CRM, search, payments, reporting, or a compliance requirement. Estimate each option against the same capability matrix. A platform that is inexpensive today may require costly work for a future requirement, while a migration may replace mature features unnecessarily. If the roadmap includes a store, scope the commerce path on its own terms against our WooCommerce migration service.
Scenario A: maintain WordPress
Maintaining means funding the site properly rather than leaving it alone, which is the version of this scenario most comparisons quietly skip. Five commitments make it a genuine option: current software, retired duplication, funded QA and security, evidence-led integration repair, and a forecast built from your actual contracts rather than from list prices.
- ✓Keep the current architecture and required capabilities.
- ✓Update supported software and retire unused or overlapping components.
- ✓Fund routine QA, security, backups, performance and incident readiness.
- ✓Replace fragile integrations only where evidence justifies the work.
- ✓Forecast current invoice renewals and capacity from actual contracts.
Scenario B: optimize or rebuild within WordPress
Separate what your content and features are worth from what the old build is costing you. A new theme, template system, hosting configuration, database repair or extension consolidation may solve measured problems without changing the content and commerce platform. Include migration within WordPress, staging, QA, launch and retraining in the comparison. Page-builder debt is a common part of that implementation cost, so test it directly against how Elementor affects SEO and how the Divi theme affects page speed.
Scenario C: migrate to a custom stack
Price the whole job, not just the build. That means working out what you need, designing it, building it, moving the content and data across, replacing whatever your plugins were doing, making it accessible, protecting your search traffic, getting analytics right, securing it, testing that money actually changes hands, the switchover itself, and support afterwards. Then add what it costs to run: hosting, the CMS, a database, email, search, monitoring, backups, whatever you use of each vendor, and the engineering time to keep it patched. A Vercel plan or other free allowance is not a permanent universal commercial-cost promise. Our WordPress migration service sets out how that scope is run, and the step-by-step WordPress to Next.js migration guide covers the sequence in detail.
Normalize the comparison
Two options can only be compared if they were quoted against the same assumptions, and most platform comparisons fail here rather than on the arithmetic. Fix the capability list, the demand you are planning for, the quality bar and the time horizon first, then apply all four identically to every option on the table.
| Control | Use the same assumption for every option |
|---|---|
| Capabilities | Pages, editing, commerce, accounts, integrations and reports |
| Demand | Traffic, data, transactions, regions and growth scenario |
| Quality | Performance, accessibility, privacy, security and reliability acceptance |
| Service | Monitoring, response, backups, recovery, updates and support hours |
| Period | Same start date, three-year window, currency and tax treatment |
| Uncertainty | Same low, expected and high scenario rules |
How to handle performance and revenue benefits
Measure field performance and business events on the current site. If work is released, compare the groups affected and hold the other variables still where you can: campaigns, price, stock levels, content, device, location and time of year. Then say what you observed and how you tested it, without dressing up a correlation as a cause. Performance improvements do not automatically create a ranking, conversion or revenue result. Core Web Vitals explained sets out which of those measurements are field data and which are lab diagnostics before you attach any of them to a business case.
Calculate payback only after the inputs are approved
Annual verified savings = removed direct cost - new direct cost
Simple payback years = net migration investment / annual verified savings
Keep uncertain business benefits separate from verified direct savings. If annual verified savings are zero or negative, a cost-only payback does not exist. The migration may still be justified by capability, risk or strategy, but label that rationale directly.
When WordPress may still be worth it
WordPress stays the right answer when the editing workflow fits your team and somebody in the building genuinely owns the updates, the security and the recovery. Five conditions describe that position. Where all five hold, a migration mostly recreates features that already work, which is an expensive way to end up where you started.
- ✓The content and editing workflow fits the team.
- ✓Maintained extensions deliver required capability economically.
- ✓It is fast enough and reliable enough, or it can be fixed.
- ✓Someone in your organization can own the updates, the security, the monitoring and the recovery.
- ✓A migration would recreate mature features without a material business benefit.
When migration may be worth pricing
Get a migration priced once you have tried to fix the site and the problem is still there, not because the monthly bill looks high. Five things have to be true, and the last one always gets skipped: moving your data, protecting your search traffic, sorting out who owns what, getting sign-off and switching over all cost money, and they need their own line in the budget before anyone quotes the build.
- ✓Core workflows or data models repeatedly conflict with the current stack.
- ✓Required controls cannot be reached through a reasonable repair plan.
- ✓Direct recurring and operating costs are verified and materially reducible.
- ✓You know exactly what the new site has to do, and who keeps it running afterwards.
- ✓You have budgeted for the risks: the data, your search traffic, ownership, sign-off, the switchover and support.
PandaCodeGen planning terms
PandaCodeGen tiers start at $1,500 Starter, $3,500 Growth and $5,000 Scale, with custom work scoped separately. A common payment option is 30 percent at onboarding and 70 percent on delivery, and another written schedule may be agreed. Where the accepted project terms include it, a refund covers fees paid under that scope if the promised deliverables are not delivered. It is not a change-of-mind refund, and deliverables, acceptance and remedy all follow the signed scope. Where the accepted project terms record it, Starter includes 15 business days of launch defect support; Growth and Scale include 30. These terms are inputs to a comparison, not proof that migration is the lower-cost choice. What sits inside each tier is listed on the pricing page, and custom engineering covers work scoped outside them.
Related reading
To carry this comparison further, read the WordPress and Next.js platform comparison, the three-year cost comparison of WordPress and custom code, or how Cloudflare built its own WordPress replacement.
Frequently asked questions
Frequently Asked Questions
How much does WordPress really cost per year?
Use the site's hosting, software, support and incident invoices plus internal operating labor and approved roadmap work. Public averages do not represent every WordPress site, contract or team.
Is WordPress still worth it in 2026?
Yes when its editorial workflow and maintained capabilities fit, measured quality is acceptable or repairable, and the team can own updates, security and operations. Migration is worth pricing when verified constraints and a complete target plan justify its added cost and risk.
What is the best alternative to WordPress?
There is no universal best alternative. Compare optimize-in-place, a WordPress rebuild, headless WordPress and a different custom or managed platform against the same content, features, data, quality, ownership and operating requirements.
How do I compare WordPress with a custom site financially?
Use the same three-year period, capabilities, traffic, quality and service level. Include initial work, providers, software, labor, roadmap, incidents and exit for both options. Keep hypothetical ranking or revenue benefits outside the base case unless first-party evidence supports them.
Primary sources
- WordPress maintenance documentation
- WordPress hardening guide
- WordPress update documentation
- WordPress export documentation
- Vercel current pricing
- Vercel current fair-use and plan terms
Bring invoices, not assumptions
We will compare maintain, optimize and migrate using your actual costs, capabilities and operating requirements.
Related Articles
Next.js and Sanity in 2026: Fit, Cost and Tradeoffs
A current guide to Next.js with Sanity: rendering and content roles, editorial workflows, localization, pricing, security boundaries and when to use a simpler stack.
WordPress in April 2026: Three Security and Product Records
A source-led review of the Smart Slider 3 Pro and EssentialPlugin supply-chain incidents plus a WooCommerce core team lead's public feedback thread and their limits.
CMS Market Share 2015 to 2026: WordPress Peaked in 2022
Twelve years of measured CMS market share. WordPress peaked at 65.2% in 2022 and is at 59.0% in the August 2026 reading, self-hosted platforms lost 12.7 points while hosted builders gained 12.8, and Webflow has not moved in three readings.