When to Use WordPress: The Flowchart
WordPress is fantastic for some things, overkill for others, and poorly suited for still others.
If you’re a web developer or site owner, a good question you should be asking yourself is: “When should I use WordPress?” As (in our minds) the world’s greatest CMS, WordPress is fantastic for some things, overkill for others, and poorly suited for still others. If you don’t know which is which, you can end up in a bind.
In other words, you’ve got a decision to make, and decisions mean one thing: Flowcharts.
Our “When to Use WordPress” flowchart synthesizes our experience as both WordPress specialists and end-to-end web developers to describe which kind of projects should and shouldn’t use WordPress—and what alternatives to look for if WordPress isn’t a good fit. Read on!
By “WordPress” here, I mean a WordPress.org install. WordPress’s core software is available for free download from WordPress.org; you can then use that software to set up a site. To do so you’ll need:
- A domain name
- A WordPress-savvy person to set up the site
“WordPress” can also mean WordPress.com, which takes care of all three steps above for you—but with a substantial loss of freedom (in design, domain name convention, etc.). That’s a lot more like Squarespace and other blogging platforms, so we’ve lumped it in with them. So the real question we’re answering here is: “When should I use WordPress.org?”
Without further ado:
Simple, right? If you’ve got questions or want to know why we drew our conclusions, read on:
When Not to Use WordPress
To Build Complex Web Apps
Beyond some basic conveniences, WordPress quickly becomes a liability in applications built around highly unique and interrelated data types.
In WordPress, just about everything is a “post.” The two most common “post types” are Pages and (confusingly) Posts. Even media, like images, are actually stored as a “post,” which contains nothing but the media link.
Beyond these stock post types, you can declare new custom post types with their own properties: “Employees,” “Products,” “Testimonials,” “Real Estate Listings,” you name it. These post types can each accept their own metadata (“Name” or “Salary” for an Employee post, “Price” or “Weight” for a Product post, and so on)—but fundamentally, they’re stored and accessed, in both the WordPress database and the WordPress admin interface, much like a regular old blog post.
This makes WordPress a shaky choice to build complex web applications. Looked at from a WordPress lens, most web apps are nothing but custom post types.
Let’s think about an online travel booking service like (my favorite) TripAdvisor. It must store:
- Flights, with prices, carrier information, aircraft information, availability by date, and about sixty other things…
- Hotels, with prices, locations, hotel descriptions, availability by date, and about sixty other things…
- Car rentals, with prices, locations, car descriptions, availability by date, and about sixty other things…
…And about sixty other things. Do we really want each car rental agency in Portland, with its fleet of rentable cars, to be a “post” in the “Car Agency” custom post type, stacked with thousands of pieces of metadata and stored in essentially the same way that WordPress stores blog posts?
No, we don’t want that. Beyond some basic conveniences (like easy user management and the ability to use themes and plugins), WordPress quickly becomes a liability in applications built primarily around the use and storage of highly unique and interrelated custom data types.
This is a big discussion, and there are lots of perspectives on it, but the voices I find most reasonable acknowledge that you have to hollow out (or, if you like, “hack”) WordPress substantially to use it as a full-fledged app platform. I’d argue that most of the time, for an app that’s really built with success and scale in mind, it’s not worth the trouble.
To Build Complex Mobile Apps
AppPresser is probably the best-known solution for building native apps with WordPress. It does the (amazing!) job of turning a WordPress site into native iOS and Android apps. Again, this could be good for simple solutions, like selling your simple e-commerce website through the iOS App store; but if you’re trying to build the next Angry Birds (or even a step counter for your daily run), WordPress’s existing architecture, plus the difficulty translating a WordPress site into an app language and environment, are likely to be a net inconvenience.
To Build Very Simple Things
If you’ve got a very simple goal, stick with simpler infrastructure.
If you’re not a WordPress developer, you’ll find it more difficult and costly to build a custom WordPress.org install than to set up a WordPress.com blog, a Squarespace site, a Tumblr, etc. So if you’ve got a very simple goal—like short, irregular mixed-media blogging—you may want to stick with those simpler pieces of infrastructure. Tumblr, Instagram, and the like also have built-in social features that WordPress.org installs don’t.
WordPress.org is also not the easiest way to set up landing pages to test preliminary ideas (at least, not if you’re not already a WordPress developer), although it probably is the easiest way to set up simple, attractive test sites.
When to Use WordPress
For actual websites, we’d argue that WordPress is the right solution most of the time.
So, does the above mean that WordPress isn’t right for most things? Well, it’s true that more squares in the flowchart are an elegant dark blue than a classy forest green, as far as that goes.
It’s also true that most things you might do online don’t make sense as an independently hosted website. If your goal is just to post pictures of your dog, why not use Tumblr or Instagram?
But for actual websites, we’d argue that WordPress is the right solution most of the time. Let’s look again at the flowchart:
- Is your website built primarily to display information? Most websites are: from a restaurant’s menu and hours, to a company’s pitch and client testimonials, to a magazine’s most recent articles.
- Do you need a flexible, extensible website—one that will grow with you? Most real website owners do. They want to be able to precisely specify design elements, operate under a domain name that isn’t name.service.com, and upgrade their hosting at will. And someday they may want to switch up their comments system, add an online store, embed online chessboards, or who knows what else.
The people who answered Yes to these two questions make up most of the legion of people who need to have websites in the first place. They’re people who want to share something they care about, and they want both full control over the project and the flexibility to easily grow it. That could be anyone from a local bakery to NASA, and they should be using WordPress.
As a last note, I’ll add that WordPress’s best e-commerce solutions (Easy Digital Downloads for strictly digital products, WooCommerce for any type of product) are good enough that I’d think of them as the default for anything selling less than a few million dollars a year.
Why that cutoff? Well, it’s not meant to be firm. (There’s no good reason that WooCommerce couldn’t help you sell yachts, especially if you only have a few dozen to sell.) I’ve just used “sales” as a convenient all-in-one proxy for scale, volume, and complexity. As these elements grow, you’ll once again start to find WordPress’s architecture a liability. Imagine if each Amazon.com product—with its dozens of sellers, hundreds of reviews, complex global shipping information, “Look Inside!” previews, etc.—was a metadata-heavy post inside the “Product” custom post type of the world’s largest WordPress/WooCommerce install. It’d just get ugly.
Along with the flowchart, I’d like to make two things clear:
- This is my opinion.
- I’d like to hear other opinions!
I do feel pretty strongly that most of the above is accurate, in terms of how I myself understand when to use WordPress in web projects. For more takes on the subject from thoughtful people, check out:
- This Stack Exchange post
- This essay siding against WordPress as an app development platform
- This essay advocating WordPress as an app platform
- This slideshow presenting a nuanced view of WordPress as an app platform
If you’ve got a strong opinion in addition to the above, I’d love to hear it.
Thanks for Reading
Flowcharts are a nice way to simplify life—and to oversimplify it. Hopefully, though, ours has given you a good understanding of when to use WordPress, and when to think about looking for something else.
When do you use WordPress, and when do you steer clear? We’d love to hear your thoughts and questions in the comments below!