Bespoke website vs template: the real cost over 3 years
The question comes up in almost every first call with a prospect: "A bespoke website is much more expensive than a WordPress template, isn't it?" The short answer: no, not over three years. The long answer deserves a full article, because the reasoning is less intuitive than it seems, and because too many Swiss SMEs fall into the trap of a short-term view of their web budget.
What follows is a rigorous TCO (Total Cost of Ownership) analysis. We compare two real-world paths: on one side, a site built on a ThemeForest or Elementor template, deployed on shared hosting. On the other, a custom-coded site built with a modern stack (Next.js, React, TypeScript). The figures are based on public prices in force in 2024, Swiss market averages and field observations. All sources are cited.
Understanding TCO: why the purchase price means nothing
TCO (Total Cost of Ownership) is a concept from corporate finance. It covers all the costs associated with an asset over its useful life: acquisition, operation, maintenance, replacement. A CFO does not buy a machine by looking only at its list price; they factor in training, preventive maintenance, spare parts and end-of-life costs.
Your website is an operational asset. Treating it any other way is an accounting error.
The problem with templates is precisely that they show a very low entry cost (CHF 30 to 80 for the licence), which creates an illusion of savings. But the real bill builds up elsewhere, across several cost lines that most site owners discover too late.
The four categories of hidden costs
Before getting into the figures, here are the four families of expenses that templates systematically generate:
- Recurring licence and plugin costs: the base template is never enough. You need plugins for forms, SEO, security, caching, backups, GDPR cookie consent… Each one has its own annual licence.
- Technical maintenance costs: WordPress and its plugins release updates constantly. Every update can break the site. Maintenance represents a significant amount of monthly work.
- Security and remediation costs: WordPress accounted for 96.2% of hacked CMSs in 2023, according to Sucuri (2023 annual report). A security incident costs an SME on average between CHF 2,000 and 10,000 to remediate.
- Forced redesign costs: templates age badly. After 2-3 years, incompatibilities pile up, performance degrades, and a partial or complete redesign becomes inevitable.
Scenario 1: the WordPress/Elementor template
Let's take a concrete, realistic case: a Geneva-based SME buys a ThemeForest template (Avada, Divi or similar) and hires a local webmaster or a small agency to install and configure it.
Year 1: start-up costs
That figure looks reasonable. But let's look at what happens next.
Years 2 and 3: the maintenance bill
WordPress releases around 3 major versions a year. Every plugin follows its own schedule. In 2023, WordPress published 6 critical security updates. Elementor, one of the most popular visual builders, patched 17 vulnerabilities in 2023 (source: WPScan Vulnerability Database).
The security incident: the wild card that changes everything
The probability of a WordPress site suffering a successful attack over 3 years is far from negligible. According to the 2023 Sucuri report, 43.2% of the WordPress sites analysed had at least one known vulnerability. The most common attack vectors: outdated plugins (61%), themes (6.7%), and the WordPress installation itself.
The cost of a security incident for an SME includes:
- Cleaning the site and removing malware: CHF 500 to 2,000
- Restoring from backup (if the backup works): CHF 200 to 500
- Google blacklisting and SEO remediation: potentially weeks of lost traffic
- Reputation and client trust: impossible to quantify
We include an average security incident of CHF 1,200 over the period in our calculation (a conservative estimate, with a ~40% probability of at least one incident).
Performance degradation
This is the most insidious aspect. A freshly installed WordPress site can achieve a Lighthouse score of 70-80. After 18 months, with the build-up of plugins, database revisions and unoptimised images added by the client, that score regularly falls to 40-55. Google research shows that an increase in load time from 1 to 3 seconds raises the bounce rate by 32%. Every performance point lost translates directly into lost prospects.
The partial redesign at the end of the cycle
After roughly 30 months, the verdict is often the same: the template has become too rigid, incompatibilities are piling up, and the client wants to update the design. The solution? Either a partial redesign (CHF 800 to 2,000), an upgrade to a premium version of the visual builder, or starting over.
We include a partial redesign of CHF 1,500 as year 3 approaches.
Total template TCO over 3 years
And this total excludes opportunity cost: the revenue lost through conversions that never happen because of degraded performance, a mediocre mobile experience or a reputation damaged by a security incident.
Scenario 2: the custom-coded website (Next.js / React)
A bespoke website uses no general-purpose CMS, no third-party plugins and no visual builder. It is written in code to meet the client's business needs exactly, and only those needs.
The initial investment
The upfront investment is higher, there is no denying it. For a 6 to 10-page SME showcase site with a contact form, animations and technical SEO optimisation:
We will use the median of CHF 6,760 for the rest of the calculation.
Why the infrastructure is radically different
A Next.js site is a compiled JavaScript application that generates static or semi-static pages. There is no database to maintain (unless the project requires one), no plugin to update and no WordPress admin interface to secure. The attack surface is reduced to almost nothing.
The only dependencies are:
- The Next.js framework itself (updated once every 6 to 12 months, handled by the developer)
- Direct npm dependencies (GSAP, Tailwind: stable, few critical vulnerabilities)
- Hosting (Vercel or Infomaniak: no server to administer)
Costs in years 2 and 3
With no plugins, no CMS and no active database, maintenance costs collapse.
Performance remains constant over time. A well-built Next.js site achieves a Lighthouse score of 95+ at launch, and that score does not degrade with use, because there is no build-up of unnecessary data, no plugins being added and no database revisions.
Security: an architecture with no attack surface
Without WordPress, there is no /wp-admin, no xmlrpc.php, no exposable wp-config.php files and no plugin vulnerabilities. The public side of the application is static or near-static. There is no administrator account reachable from the internet to protect.
The risk of a security incident is close to zero for the public part of the site. Security provision: CHF 0.
Total bespoke TCO over 3 years
Head-to-head comparison: the real gap
The bespoke site costs less over 3 years. And that is with conservative assumptions: we have not counted the opportunity cost of degraded performance, nor the internal time the client spends dealing with technical problems.
The break-even point is around 18 months. That is when the template's cumulative cost curve overtakes that of the bespoke site.
The factors the tables do not capture
Performance as an ongoing competitive advantage
Google has used Core Web Vitals (LCP, FID/INP, CLS) as a ranking factor since May 2021. An optimised Next.js site typically achieves:
- LCP < 1.5 s (excellent)
- INP < 100 ms (excellent)
- CLS < 0.05 (excellent)
A WordPress site with Elementor and several plugins typically achieves:
- LCP: 3 to 6 s (poor to very poor)
- INP: 200 to 400 ms (poor)
- CLS: variable depending on plugins
The difference in SEO performance translates directly into rankings, traffic and prospects. Over 3 years, a better Google ranking is worth several times the cost difference.
Adaptability without constraints
With a template, every change is a negotiation with the visual builder's internal logic. Want an unusual type of block? The template either allows it or it doesn't. A specific animation? That depends on a compatible plugin. A multi-step form? That's another plugin.
With a bespoke site, a change is a coding decision. If you need a product configurator, a quote calculator or an API integration with your ERP, it can be done, with no workarounds, no third-party plugins and no additional security risk.
Intellectual property and portability
A bespoke website belongs entirely to you. The source code, the assets, the deployment logic: everything is documented and transferable. You are not locked into the ecosystem of a particular theme or builder.
With a template, if the vendor abandons the theme (which happens regularly on ThemeForest), or if Elementor changes its pricing policy, you are in trouble. In 2022, Elementor removed several features from its free version to reserve them for its Pro version at $99/year.
Invisible costs: what the figures do not show yet
Before looking at the exceptions, it is worth highlighting two categories of cost that our TCO table has not yet included, but which have a very real business impact.
Internal time spent managing the site
A WordPress site is supposed to be "manageable without technical skills". That is true in the first few months: the admin interface is accessible and text is easy to edit. But over time, problems accumulate: an update that breaks how a block displays, an image that no longer renders properly on mobile, an error message in the admin console. Every incident takes time: time to notice it, to find the cause, to contact a technician or to look for the solution yourself.
If you or a colleague spend an average of 2 hours a month dealing with website-related problems (a very conservative estimate for an active WordPress site), and your time is worth CHF 100/h, that adds CHF 2,400 a year (or CHF 7,200 over 3 years) to our TCO calculation without ever appearing on an invoice.
A bespoke Next.js site generates virtually none of this friction. There is no admin interface to monitor, no updates to approve and no plugin errors to diagnose.
The cost of missed opportunities: slow pages = lost clients
The Google/Deloitte study Milliseconds Make Millions (2020) quantified the commercial impact of loading speed on B2B and e-commerce sites: a 0.1-second improvement in load time translates on average into an 8.4% increase in mobile conversion rate.
Conversely, every extra second of delay has a cost. If your site loads in 4.5 seconds on mobile (typical of a heavy WordPress Elementor site) rather than 1.2 seconds (the performance of an optimised Next.js site), and you receive 400 mobile visitors a month with a current conversion rate of 1%, the lost revenue is real and measurable.
Assuming the speed improvement brings your conversion rate to 2% (conservative in light of industry benchmarks), you double your inbound enquiries without touching your marketing budget. Over 3 years, that can represent several tens of thousands of francs in additional revenue: a return on investment that cost tables never express.
When can a template still make sense?
To be fair, there are cases where a template remains relevant:
- Budget under CHF 2,000: if the budget is genuinely very limited and the site is purely informational (one page with an address and phone number), a template can do the job in the short term, provided you know its limits.
- Planned lifespan under 12 months: for an event or a temporary landing page, where TCO has no time to come into play.
- A highly experimental project: to test a business idea without commitment, before investing in something permanent.
In every other case (an SME that wants a professional website that reflects its image, converts prospects and lasts), the TCO calculation consistently tips towards bespoke from year 2 onwards.
What INFUSE offers Swiss SMEs
At INFUSE, every site is coded from scratch. No WordPress, no Elementor, no Divi, no page builder. The stack is Next.js 16, React 19, strict TypeScript, Tailwind v4, and GSAP for animations. Every line of code is written for this client, this sector, these objectives.
The concrete implications for TCO:
Zero third-party plugins: there is no additional attack surface. Forms, animations, performance optimisations: everything is built into the application code.
Lasting performance: an INFUSE site scores 95+ on all Core Web Vitals at launch, and that score stays stable over time, because dependencies do not accumulate.
Predictable maintenance: annual maintenance is simple, documented and clearly priced. No surprises from an incompatible plugin update.
Code owned by the client: you receive the complete Git repository. If you want to change provider tomorrow, you can do so without losing your investment.
The question is not "can I afford a bespoke website?" but "can I afford to pay more over 3 years for an inferior result?"
If you have a project and would like a TCO analysis tailored to your situation, get in touch. The initial estimate is free and without obligation.
Conclusion: think in TCO, not purchase price
The next time you compare the price of a template with that of bespoke development, ask yourself a different question: how much will this site cost me in 36 months, all in?
The answer, as we have shown here, completely changes the decision. The template starts cheaper and ends up more expensive. Bespoke starts more expensive and ends up cheaper, with better performance, stronger security and unconstrained flexibility as a bonus.
For a Swiss SME that invests in its website as a business development tool (rather than as an expense to be minimised), the calculation is unambiguous.
Sources:
- Sucuri, Hacked Website Annual Report 2023: sucuri.net/resources/reports
- WPScan Vulnerability Database 2023: wpscan.com/statistics
- Google Search Central, Core Web Vitals: developers.google.com/search/docs/appearance/core-web-vitals
- Google/Deloitte, Milliseconds Make Millions (2020): study on the impact of load time
- ThemeForest pricing 2024: themeforest.net
- Yoast, WP Rocket, Wordfence, Gravity Forms: official 2024 pricing