I've built sites on both sides of this fence — WordPress for years before I switched to custom React/Next.js builds full-time. So when a business owner asks "should I use WordPress or go custom?" my honest answer isn't a sales pitch for the work I do today. It's: it depends, and the honest tradeoffs aren't what most agencies tell you.
WordPress powers roughly 43% of the web because it's a genuinely good piece of software for a large class of use cases. Custom builds are dramatically better for a different class. The mistake is matching the wrong tool to the wrong situation — and almost everyone making that mistake is doing it because someone with a financial interest told them to.
What each is actually good at
What WordPress (and template builders generally) wins at
- Time to launch. A polished WordPress site with a premium theme can be live in 1 – 2 weeks. A custom build is typically 6 – 12 weeks minimum.
- Content velocity. The block editor (Gutenberg) is genuinely good. A non-technical marketer can publish a blog post or assemble a landing page in 20 minutes.
- Plugin ecosystem. Need a forms tool, an SEO plugin, a backup service, a membership system, e-commerce, an LMS? Within an hour you can stand up something functional. With custom you're writing it.
- Familiar to non-developers. If you ever need to hire help, the WordPress talent pool is massive — and cheaper per hour than custom-stack developers.
- Lower entry cost. $2,500 buys a real WordPress site. $2,500 buys you a starting deposit on a custom build.
What custom builds (Next.js, React, etc.) win at
- Performance. A well-built Next.js site routinely scores 95+ on mobile Lighthouse. A typical WordPress site with 12 plugins scores 50 – 70. That gap matters for SEO and conversion.
- Bespoke functionality. Anything outside the WordPress ecosystem's well-trodden paths — custom configurators, real-time features, complex integrations, AI features — is a fight in WordPress and natural in a custom stack.
- Security surface area. WordPress's 43% market share is also why it's the #1 attack target. Custom apps have a tiny fraction of the attack surface.
- Total cost of ownership over 5+ years. Once you're past launch, custom is cheaper to maintain. More on the math below.
- Long-term ownership. Your site isn't held together by twelve plugins from twelve vendors, any of which could vanish or break.
The performance gap, with real numbers
This is the part agencies skim. Google's Core Web Vitals (LCP, INP, CLS) are real ranking signals and real conversion levers. Here's what I see in actual audits:
- Typical WordPress site, mobile Lighthouse: 45 – 72 performance score, LCP 2.5 – 5.0s.
- Heavily optimized WordPress (custom theme, minimal plugins, caching): 75 – 88, LCP 1.8 – 3.0s.
- Custom Next.js with proper image optimization, SSR, edge caching: 92 – 100, LCP 0.6 – 1.4s.
The conversion impact: every 1-second improvement in LCP correlates to roughly 7 – 10% lift in conversion rate. Going from a 3.0s LCP to a 0.8s LCP is the difference between losing one out of every five visitors before they see your offer, and not losing them.
SEO control: what you actually give up with WordPress
WordPress + Yoast (or Rank Math) handles the basics fine: meta titles, descriptions, sitemaps, basic schema. For most small business sites, this is enough.
What you can't easily do in WordPress:
- Granular structured data per page type (Product + Offer + Review schema with custom fields, Article + Author with E-E-A-T signals, FAQ schema wired into your CMS).
- Dynamic OpenGraph images per page (generated at request time from your data).
- Fine-grained canonical management for pagination, filters, faceted search.
- Programmatic SEO at scale (1,000+ pages generated from a data source, each with unique metadata and content).
- Edge-rendered AB tests on metadata without page-speed penalty.
If your SEO strategy is "publish a blog post a month and target a few local keywords," WordPress is fine. If SEO is a meaningful growth lever — programmatic, data-driven, technical — you'll outgrow WordPress.
The 5-year TCO comparison (with real numbers)
Sticker price is misleading. Here's what a typical small-business site actually costs over five years:
WordPress, modest setup
- Initial build: $4,000 – $8,000
- Premium theme: $60/year × 5 = $300
- Premium plugins (Yoast Premium, ACF Pro, security, backup, forms, image opt): $800/year × 5 = $4,000
- Managed hosting (WP Engine, Kinsta, or similar at decent tier): $50/month × 60 = $3,000
- Plugin updates, breakage fixes, agency maintenance: $150/month × 60 = $9,000
- Inevitable redesign at year 3 – 4 because the theme is dated: $5,000
- 5-year total: ~$25,300
Custom Next.js
- Initial build: $15,000 – $30,000 (I'll use $22k as a midpoint)
- Hosting (Vercel, Cloudflare, or similar): $20/month × 60 = $1,200
- Light maintenance, content updates, occasional feature: $100/month × 60 = $6,000
- No mid-cycle redesign required (the site can be incrementally evolved)
- 5-year total: ~$29,200
The numbers come out close, but custom delivers materially better performance, security, and conversion across those five years. If your site is generating meaningful revenue, that performance gap pays the difference back many times over. If it's a brochure site for a low-volume business, WordPress wins on simple cost.
The security reality
WordPress vulnerabilities are constant. Most aren't core — they're plugins. Roughly 90% of WordPress breaches in published incident data trace back to outdated or vulnerable plugins. The mitigation is real maintenance: weekly updates, vulnerability monitoring, regular audits.
If you're running a WordPress site without that maintenance discipline, you don't have a website — you have a future incident. The cost of "we update the plugins ourselves when we remember" is exactly one bad day where you get hit, and suddenly you're paying $5,000 to a remediation firm to clean up a malware injection that was sitting in your functions.php for three months.
Custom apps don't have zero security risk, but the surface area is dramatically smaller. You don't have 27 third-party packages running arbitrary code at the WordPress hook level. Dependencies are explicit, version-locked, and auditable.
The migration question
The biggest mistake I see is teams that migrate from WordPress to custom without doing the redirect mapping properly. Here's the cheat sheet:
- Export every existing URL. Use Screaming Frog or Sitebulb. Get the complete list.
- Map every URL to its equivalent on the new site. If the URL structure is changing (it usually shouldn't), every old URL needs a 301.
- Migrate the content fully — including metadata, image alt text, internal links. Don't let the new site go live with thin pages.
- Preserve any structured data the old site had. Article schema, breadcrumbs, FAQ. New site should match or exceed.
- Update Search Console with the new sitemap on cutover day. Submit and request indexing.
- Monitor weekly for 90 days. Rankings will dip slightly in the first 2 – 4 weeks; then they should recover and usually exceed where they were.
Honest recommendations
Here's what I tell people, plainly:
Stay on (or use) WordPress if:
- Your site is mostly informational and traffic is modest (< 20k monthly visitors).
- Your team will edit content frequently and isn't technical.
- You don't have a budget over ~$10,000 for the initial build.
- You're not running anything that requires custom integrations or real-time features.
- SEO and conversion are not key growth levers (you have other channels driving the business).
Go custom if:
- Performance and SEO are competitive differentiators in your market.
- You need custom features, integrations, or AI capabilities.
- You plan to scale traffic significantly (your site is a real customer-acquisition channel).
- You're in a regulated industry (healthcare, finance, legal) where security and compliance matter.
- You want a multi-year asset, not a constantly-maintained dependency stack.
Frequently asked questions
Is WordPress slower than a custom site?
Almost always, yes — though heavily optimized WordPress can get close. The gap is widest on plugin-heavy themed sites and narrowest on minimal, performance-focused custom WordPress builds. Custom Next.js sites consistently win on field metrics (real user data in Search Console).
Can I switch from WordPress to custom later?
Yes, and we do this regularly. Plan for 6 – 10 weeks for a typical small business site migration, including proper redirect mapping. If the migration is done right, SEO usually improves — bad WordPress sites are bleeding ranking from their performance scores.
What about Webflow, Squarespace, or Framer?
They sit between WordPress and custom. Webflow especially is a real option for design-led sites that don't need heavy custom functionality. Costs are higher than WordPress at scale ($30 – $300/month) but lower than custom build. SEO control is decent. Performance is usually better than WordPress but worse than well-built custom.
Will my SEO suffer if I rebuild from WordPress?
If you map redirects properly and preserve content depth, no — and usually it improves because the new site is faster. The risk is migrations done by people who don't take the redirect/metadata mapping seriously.
How much does each option really cost?
WordPress build: $4,000 – $15,000 typical. Custom build: $15,000 – $60,000 typical for a marketing site. Over 5 years, total cost of ownership comes out close — but the value delivered (speed, security, flexibility) is materially different.
The bottom line
WordPress is the right answer for a lot of small businesses. Custom is the right answer for businesses where the website is doing real work — acquiring customers, generating leads, transacting revenue. Match the tool to what the site actually needs to do.
If you're not sure which side of that line you're on, we'll do a free 30-minute review of your current site and tell you honestly whether you need to switch. We don't take projects we don't think are right for the client. You can also see how we approach custom web development if that's the direction you're leaning.