*Updated 10/24/12 with a response from WP-Engine at the bottom*
My friend John posted a glowing recommendation about WP-Engine the other day. I see a lot of people praising WP-Engine, so maybe I just got the short end of the stick, but I promised him I’d talk about why I found it so lacking.
First the back story. Last year I was working for a consulting company that has a very popular blog. Unfortunately, like many small companies, there was not a dedicated IT person for infrastructure, and their blog was hosted on a local ISP with a shared server, and so there were constantly problems. WordPress would get hacked, the database would get corrupt, etc… So I jumped in and was excited to suggest WP-Engine, which I heard so much about and which promised to take the management away from us and solve all of these problems.
WP-Engine costs an order of magnitude more then crappy shared hosting, so it really had to provide a lot more value to justify this, but I figured it was easily worth it, as downtime could cost the company business.
Unfortunately the problems started as soon as we began our switch. WP-Engine asks you how you want to domain configured (www or non-www) and even though I had set it up to be www, when we switched our DNS to WP-Engine they had configured it wrong and there was a big error on our site. No worries, problems happen… so I called WP-Engine. That’s when I learned they have NO PHONE SUPPORT! My site was down and they were asking me to hangup and email them to open a support ticket. There was another option for “Critical issues” that you could page them, so this is what I did. It rang and rang (probably trying to page people) and eventually I got someone who was out at lunch who promised to call someone at the office and get it fixed, which they did (in probably under an hour).
So that wasn’t so bad. It was disheartening learning we wouldn’t have phone support, when even the crappy ISP we moved from had this, but with their 100%(!!) uptime guarantee, I hoped we wouldn’t need it.
We had setup Pingdom to tell us when the site was down for at least 5 minutes when we were with our previous provider, and soon after signing up for WP-Engine we started getting outages. They would typically be just little ones (5-10 minutes) but enough to register on Pingdom. Other times we’d load our blog and get an error, only to refresh a minute later and it would be back (meaning there were clearly outages that Pingdom wasn’t picking up on).
What really burned though was after a particularly noticeable outage we tried calling WP-Engine, again using their paging system, but this time no one picked up (this was during business hours). The next day we got an email from WP-Engine (I was expecting a mea culpa) but it was instead telling us that they had to bump us up to the Business tier because of our traffic levels. This was really insult to injury, but also confusing.
I originally signed up for the $99 tier because it says up to 100,000 visits per month. Google Analytics was showing ~50k visits per month so I figured this was plenty of room to grow. WP-Engine was showing that I had something like 150k visits though! They are not very clear on how they count a visitor, but I can only assume it must be IP based, so you will get penalized if you are crawled frequently by Google (which we were). Ugh, $250 a month now when we were paying $30 per year? Getting hard to justify my decision considering we had more downtime so far, but it looks like the Business Plan comes with phone support, so that sounds great. I emailed back to WP-Engine and said:
“OK, we’re on the Business plan, now how do I get that phone support, there is a secret number right?”.
“No, just call our main number and then press the option to page someone”
“Uh, I’ve done that and sometimes got no one”
“What? When?” (He then proceeded to ask me for specific times and dates, which I had, and after much back and forth said they were working on making phone support better and gave us a credit for our downtime)
The bottom line for me was that a paging system is not phone support, especially where sometimes there is no answer!
We continued to have downtime issues with WP-Engine (they seemed to be a DDOS target). Here’s how the typical response would go:
“Oh man the site is down again” *Calls WP-Engine, hits ‘2’ to page their emergency support… no answer*
“Fuck” *Emails WP-Engine to open a ticket, no response after 20 min*
Then I’d contact them by Twitter, where they would almost always respond instantly! Usually some low level person would say they’d look at my ticket, then I’d get a response like “It works for us, is your Internet up?”…. “Yes, I’ve checked this from a variety of locations” *no response….site still down*
Anyway, it went on like this several times (they actually blocked one of my co-workers Twitter accounts, WTF!). This is the number one reason I can’t recommend WP-Engine. You can’t sell yourself as a professional hosting solution and not have phone support. They would also just randomly disable our plugins causing the site to break in other ways “This plugin isn’t supported now”. Their metering of the site is shady, and their outages were way too frequent.
They also offered a CDN as a premium feature. In our testing, the CDN was usually SLOWER then not using it. Sometimes daily backups didn’t occur… just a whole manner of crap.
I’m also very dubious of their client list. One time their ISP had a major failure and all WP-Engine sites were down, but they claim FourSquare as a client, and their blog was up? Maybe there is some elite tier of servers that gets geo redundancy. Their uptime status page was also not helpful. I’m talking about a 5-7 hour outage on a business day. The only reason I figured out what happened was I also use Linode, and one of my slices was affected by the same outage, but their status page was great about keeping us up to date on the downtime.
On the positive side, they do actually do a very good job about fixing hacks. We got hacked once when we were with them and their experts cleaned it up and fixed it quickly (once we got ahold of them!). So there is promise in the idea of a managed WordPress provider.
Maybe they’ve gotten better, I understand startup growing pains, but with something as critical as website hosting, I wouldn’t recommend starting with someone still trying to get their act together.
*Here’s a response from WP-Engine (Austin W. Gunter - Brand Ambassador @austingunter)*
I’m the community and content marketing guy for WP Engine. I wanted to write a quick note in response to your post about your experience hosting with us: http://jamespanderson.tumblr.com/post/34114537491/why-i-cant-recommend-wp-engine
First off, thanks for writing the feedback about WP Engine. As a managed hosting company, we hold ourselves to rather high standards, both in terms of technological performance, but perhaps more importantly in terms of the service we provide via our support channels. That said, based on your post, you had a less than stellar experience with us. That’s not really ok in my book. While every company makes mistakes, let me go ahead and apologize for the trouble you all had. I hope that you’ve found a hosting home that you’re very happy with in the meantime.
There’s a few things you mentioned in the post that I wanted to own up to, as it were. First of all, offering 100% uptime was a failed experiment that we ran. Even Amazon S3, which by most accounts is the model for uptime has 99.9% uptime in their SLA. We’ve since remedied this in all our messaging and are setting proper expectations.
Again, with the support you received, I’d be pretty upset too, so I can appreciate your blog post. Your experience doesn’t live up to the high standards we set for ourselves, and it doesn’t live up to the normal customer experience at WP Engine. You may not have received an apology from us, but please accept mine. I’m sorry for the bad experience you had. Rest assured that your time with us is not representative of the normal customer experience with us.
For the visitor count of your site, we’re actually rather clear on our site now about how we count visitors. You can check the pricing page, and I also wrote a blog post about how we count visits. Basically, as a host, we’ve got to serve everything that hits our server and this has to factor into our pricing in order to remain profitable, and also to ensure specific sites don’t consume disproportionate amounts of server resources compared to other sites that are paying the same amount each month.
For the CDN issues, I’d be very curious to know how you’re running those tests. We’ve seen various ways of running speed tests recently that are so inaccurate, yet some reputable developers were actually relying on them as if they were scientific.
And for our client list, I assure you that we’re representing ourselves, and those brands accurately and appropriately. You’ve mentioned a lot of technical aspects of hosting, so you’ll understand that while some sites may be affected by downtime, others may not because they are served from different data centers. Or it could also be different clusters within the same datacenter. Basically, connectivity issues at one datacenter may not send all the servers there offline.
WP Engine has servers across the US, as well as the UK, and Asia. Depending on where your site is hosted, you may not be affected the way another client of WP Engine’s is. This is consistent with other large-scale hosting companies that host enterprise-scale WordPress sites.
As a company, WP Engine has done a lot of growing this year. Not only in terms of customers, which is an important measure, but not the end-all be all. We’re maturing as a company, refining our ops, and adding more tech support. As with any growing company, there are challenges to scale, and when we make mistakes or hit bumps in the road, we make sure to own our errors and make sure that appropriate measures are taken so that problems we encounter once are resolved for good.
Phew. All that to say, thank you for the blog post, Phil. I appreciate the feedback. If you’re ever interested in giving WP Engine another shot, please let me know so I can make sure everything goes smoothly.