Tech Tips, Web Development 10:00 am

Automating WordPress Maintenance: Set It and Forget It

Stop doing WordPress maintenance manually. Here’s how to automate everything and sleep better.

6 min read

My Server, My Problem, My Advantage

I do not use WP Engine. I do not use Kinsta. I do not use any managed WordPress hosting provider. I run my own Linode server with cPanel and LiteSpeed, and I have been managing it myself for the better part of 16 years - cPanel throughout, LiteSpeed only recently. I host a deliberately small roster of clients on that server, and I have kept it that way on purpose.

That probably sounds either reasonable or quaint depending on your perspective, and I want to be honest: for most of those years, running your own server has been closer to insane. It means you are the sysadmin, the developer, the support team, and the one who gets the text when something breaks. There is no “contact hosting support” button. You are hosting support.

But something changed recently that turned this from a liability into maybe the biggest competitive advantage I have ever had. And that something is AI.

The Old Way Was Not Sustainable

Here is how WordPress maintenance used to work for me. Every week or two, I would log into each client site, check for plugin updates, check for theme updates, check for WordPress core updates, glance at the security logs, make sure nothing looked broken, and move on to the next one. Each one taking 10 to 15 minutes if nothing was wrong, and significantly longer if something was.

That math does not scale well. Even on a small roster, you are looking at a real chunk of maintenance per cycle just for the routine stuff. Try to grow that to dozens of sites and it becomes physically impossible for a two-person shop. And we are a two-person shop - me and my collaborator Matthew. I also have a full-time job as a senior front-end developer at StudioRx. The freelance business runs on nights and weekends.

So I had a choice: stay small and overworked, or figure out how to make maintenance nearly free.

Claude Code Changed the Math

I am going to say something that might sound like an ad but is actually just the truth: Claude Code is the reason I can offer WordPress maintenance for $20 a month and still make it worth my time.

Twenty dollars a month. That includes hosting on my server, plugin and theme updates, security monitoring, backups, and reasonable fixes when things break. If a plugin update causes a conflict, I fix it. If the site goes down, I fix it. If they need a small content change, I do it. Twenty bucks.

The reason that number works is that AI has made most of these tasks take seconds instead of hours. A plugin conflict that used to require 45 minutes of debugging - deactivating plugins one by one, checking error logs, Googling the specific combination of plugin versions that caused the issue - now takes a few minutes. I describe the symptoms to Claude Code, it identifies the conflict, suggests the fix, and I apply it. Done.

Security monitoring? I have scripts that run on the server, and when something looks off, Claude Code helps me triage it faster than I ever could manually. Database optimization? Automated. Backup verification? Automated. The human judgment part - the “should I update this plugin or wait because it has a known issue with this PHP version” part - that is where I still add value. But the grunt work is gone.

What Automation Actually Looks Like on My Server

Forget the plugin-based automation approach that most WordPress maintenance articles recommend. I do not use ManageWP or MainWP or any of those dashboard tools. My setup is simpler and more direct because I own the server.

Backups run via cron on the server itself. Full database dumps and file archives, stored locally and synced offsite. I do not need a WordPress plugin for that because I have root access. WP-CLI handles bulk updates across every site from the command line. One script, all sites, with pre-update snapshots so I can roll back if something breaks.

LiteSpeed Cache handles the performance layer at the server level, which is more effective than any WordPress caching plugin because it operates before PHP even touches the request. That is an advantage of running your own server that you simply cannot get on shared hosting or even most managed platforms.

The monitoring is straightforward: uptime checks, error log scanning, and disk space alerts. Nothing fancy. When something triggers an alert, I investigate with Claude Code assisting. The whole system is designed so that when everything is working, I do not have to think about it. And when something breaks, I can fix it fast.

The Business Model That Actually Works

Here is why I am writing this post: I think the standard WordPress maintenance business model is broken. Most agencies charge $100 to $300 per month for maintenance plans, and most of that money goes to labor costs for manually doing things that should be automated. They need to charge that much because a human being is spending real time on each site every month.

I am going the other direction. Low monthly price, AI-assisted, kept intentionally small. Six clients at the full $20 a month, two nonprofits at half that, and a few more riding along free on multi-site setups. It is not a fortune. It barely covers the server and then some. But the work it takes me each month is a handful of hours, because 90% of it is automated and the remaining 10% is dramatically accelerated by AI.

The value proposition for the client is obvious: they get hosting, maintenance, and support for less than the cost of a single lunch. The value proposition for me is that the marginal cost of each additional client approaches zero. Adding one more client costs me almost nothing in additional time or resources, because the systems are already running.

Why I Am Not Using Managed Hosting

People ask me this constantly. “Why not just put everyone on Flywheel or WP Engine and let them handle it?” Because then my costs scale linearly with my client count, and I lose every advantage that makes the $20 price point possible.

WP Engine’s cheapest plan is $20 per month per site. So my entire margin would be zero before I even touch maintenance. Kinsta starts at $35. At those prices, I would need to charge $75 to $100 per month per client just to break even, and then I am competing with every other agency offering the same thing at the same price.

My own server costs me about $60 a month on Linode. All of my clients live on that one server. The per-client cost is a couple of bucks. That is the gap that makes everything else possible.

The AI Part Is Not Optional

I want to be clear: this model does not work without AI. The $20 price point assumes that when things break, I can fix them fast. Before Claude Code, a tricky plugin conflict or a PHP compatibility issue could eat an entire evening. That time cost made low-price maintenance plans a money-losing proposition.

Now? Most issues resolve in minutes. And the ones that do not - the genuinely complex problems that require deep investigation - those are the ones where my 16 years of WordPress experience and my ability to read core code line by line actually matter. AI handles the routine. I handle the weird. That is a division of labor that works.

Staying Small on Purpose

I could chase volume. The server can handle a lot more, the automation can handle it, and Claude Code can absorb the support load. But I am not trying to build an empire. The bottleneck is the part I already admitted I am bad at - sales and marketing - and honestly, I am fine with that. A small, sustainable roster I can actually take care of beats a big one I cannot.

The pitch, when I bother to make it, is simple enough that even I can deliver it: “I will host your WordPress site, keep it updated, keep it secure, and fix things when they break. Twenty dollars a month. No contract.” That is not a hard sell. That is a no-brainer for any small business with a WordPress site that they do not want to think about.

I am revitalizing my freelance business because AI made the economics work. Not because AI is building the sites for me - I am still the developer, and the sites I build are still custom, still hand-coded, still mine. But because AI turned the maintenance side from a time sink into a service I can actually sustain. And that changes everything about what a small web shop can offer.