WordPress: Should I Buy a Theme or Have One Custom Built? (Updated for 2022)
How to Get a Great Site and Avoid Common Mistakes
WordPress is an interesting beast. It’s not often (outside of ecommerce platforms) for prospective clients to specify the platform for a site build, but for the last few years, WordPress is the regular request. That’s fine with us, since we know it like the lyrics to “Sweet Caroline” (bah, bah, bah). But as with anything else, it’s easy to make huge mistakes.
The biggest temptation has to do with premade WordPress themes, of which there are approximately 47 billion and counting. And I’ll confess: Many years ago, our standard process was to send clients to ThemeForest and have them pick out a theme. That led to a giant mess, and here’s why:
Many Themes Try to be Everything to Everyone
Remember the old days of buying PCs, and how you’d spend the first few hours removing all the junk programs they were loaded down with? That’s how most of these themes are.
It makes sense. The theme builders are trying to make money, and they have no idea how you plan to use it. So they add in ecommerce templates, 7 different home page versions, tabs, columns, callout boxes, sliders, light/dark versions, pink ostrich wallpaper – you name it. The problem is that all those components require coding, and the more coding you have, the more things can go wrong, to say nothing of the impact on site speed. WordPress is already inherently a slower platform; loading it up with code bloat only increases that issue.
A Word About Site Speed
Google has put a priority on site speed for years, and with Core Web Vitals, they’ve upped the ante considerably. Simply put, if your site is slow, you have a huge uphill battle ahead of you if you’re gunning for high search placement.
For years, statistics have clearly shown that users do not have patience for sites that do not load quickly. And when we say this, we’re not talking about sites that take several seconds to load – we’re talking fractions of seconds. Consider this data from a great Cloudflare article:
- Walmart found that for every 1 second improvement in page load time, conversions increased by 2%
- COOK increased conversions by 7% by reducing page load time by 0.85 seconds
- Mobify found that each 100ms improvement in their homepage’s load time resulted in a 1.11% increase in conversion
Add to this the fact that Google has moved completely to a mobile-first index. This makes perfect sense, since the bulk of Internet traffic is happening on mobile devices, but also increases the need for speed. All of this adds up to a priority on streamlined, fast code – the exact opposite of what you get with WordPress and bloated themes.
The Learning Curve
A basic WordPress site is extremely easy to use. We typically schedule training classes for an hour or less, and that’s even on large sites with hundreds of pages. Purchased themes? No way; buckle in and prepare for a long day. And refresher courses. And components that are so convoluted to update, you’ll either ignore them or pay a developer to update (“my footer still says 2017 and I CAN’T UPDATE IT”).
There are a number of different ways that developers can work with WordPress. You can manipulate the core functionality, so that even custom programming behaves like everything else in the system – intuitive, consistent and reliable. Or you can build (or use) a different editor; just do a search for wordpress theme builder for examples.
At ForeFront Web, we’ve made the decision to work with the core functionality, and expand what it can do using something called Advanced Custom Fields (ACF). ACF extends what WordPress does already, so it adds very little overhead, and it still “feels” like WordPress. It allows us to make custom blocks that can be easily dropped into any page, so adding hours of code into a page only takes seconds for the user. ACF is one of the biggest reasons it only takes us an hour to train people!
Theme builders are similar to premade themes themselves – the developers have no idea how to plan for its use, so they pack every feature possible into the system. That sounds great, right? Well, not when you have to learn it…
What makes builders (and premade themes) so popular? Put simply, it vastly reduces the amount of time that an actual developer needs to spend working on the site. If you have a basic understanding of web hosting and FTP, you can download and install everything you need to create an incredibly complex website. And there are some absolutely amazing designers who have done exactly that, and have avoided that nasty “learn to program” step completely. But here’s the inevitable trap:
- There is a huge learning curve
- When you need something outside of what is baked into the theme or builder, you’ll need someone who knows how to code. We’ve rescued countless people because the person they hired “just stopped responding,” and almost every time, it’s because of this situation.
- You have to REALLY know your stuff to make WordPress and a premade theme and a theme builder fast. It ain’t easy.
And then there’s…
Apps and Updates
One of the things we like about WordPress is the evolution of the platform. It has come a long way from its inception as a blogging platform, and updates are released frequently, with major releases every four months on average. The downside of all these updates? Well, things break.
I’ve already mentioned that we have a central philosophy of using as much core WordPress functionality as we can. Here’s the other one: We use as few apps as possible. And the ones we use are well supported and trusted, we’re intimately familiar with them, or they are from highly reputable app marketing companies. When WordPress updates come out, we rarely have to do anything other than update app versions.
Hosting platforms also get updated, and that can lead to major issues as well. One of our hosting partners updated the PHP version on their servers – all of our custom WordPress sites were just fine, but the older theme builds all broke. Fortunately, we have amazing developers, but we’re pretty lucky in that regard.
A lot of the reputable theme developers (and most of the name-brand theme builders) do a good job of creating regular updates for their themes. But actually updating an installed theme can be a hassle, and a lot of times, it will completely destroy any custom programming you’ve had done. And sometimes, if you pick the wrong one, you can be left with a theme that hasn’t been updated and you’re forced to build a new one – not fun.
The Support Nightmare
One of the biggest misconceptions is the idea that just because a site is built in WordPress, a developer can just jump right in and take care of things. There are more wrong ways to build out a site than right ways, and holy cow have we seen some epic failures. Sadly, some of them are so far gone we have no choice but to recommend a complete rebuild from the ground up.
When you throw premade themes on top, you’ve added another large element of complexity. Some themes are well-documented and well-commented (developers can leave comments in code to help others through the rabbit holes); most are not. It can be a nightmare even when we have to support a theme site that we built ourselves! If it’s a site we built several years ago, someone has to re-learn the idiosyncrasies of that particular theme, and as I’ve mentioned, the learning curve can be brutal.
With our custom themes, any of our developers (and sometimes even our non-developers) can jump in and immediately feel at home. There is consistency across all of them, even if the sites themselves are vastly different. Our clients pay us to jump in and fix issues and make updates, not to teach ourselves how to troubleshoot the site.
TL;DR – The Takeaway
It’s common for our clients to ask about our stance of building out custom WordPress themes only, and it’s understandable. Those $59 themes look pretty sexy, and you can’t beat the price. For folks who need a personal resume site, a family reunion or wedding site, etc., it might be a great option. But for long-term viability, ease of use, support and success – you can’t beat custom.