WordPress doesn’t run itself indefinitely. Without maintenance, sites accumulate plugin updates, security vulnerabilities, database bloat, and broken links. The good news: with a structured routine, weekly maintenance takes 15-20 minutes, monthly an hour, and the site stays reliably healthy for years. This guide is the actual checklist.
Weekly (15-20 minutes)
- Apply updates. WP Admin → Updates. Apply WordPress core, theme, plugin updates. Read change logs for major version updates.
- Quick visual check. Browse 3-5 important pages (home, contact, key landing pages). Verify nothing visibly broken.
- Check spam comments. Approve legitimate ones; trash the rest.
- Review form submissions / contact requests. Process anything backed up.
- Glance at security plugin dashboard. Wordfence / Solid Security / etc. Any flagged events? Failed login spikes?
Pro tip: schedule a 20-minute recurring calendar block. “WordPress maintenance, Monday 9 AM.” Habit beats inconsistency.
Monthly (45-60 minutes)
- Verify backups exist and are restorable. Spot-check JetBackup — do you have last 30 days of backups? Try a test restore in staging.
- Database cleanup. Run WP-Optimize: revisions, transients, table optimization. DB optimization guide.
- Run security scan. Wordfence Scan or Imunify360 dashboard. Investigate flagged files.
- Check broken links. Plugin “Broken Link Checker” or external tool like screamingfrog.co.uk. Fix or remove broken URLs.
- Plugin audit. Any plugins not updated in 6+ months? Active alternatives? Plugins you don’t actually use?
- Performance check. Run PageSpeed Insights on home and key pages. Score dropped from last month?
- Review user accounts. Anyone with admin access who shouldn’t have it anymore?
- Search Console review. New crawl errors, indexing issues, manual actions?
- Disk usage check. cPanel quota — getting close to limit? Disk usage guide.
Quarterly (90 minutes)
- Rotate WordPress salts. Generate new ones, paste into wp-config.php. Invalidates all sessions; everyone re-logs in. Hardening guide.
- Review all installed plugins. Deactivate and delete anything not actively used. Each plugin is potential attack surface.
- Theme review. Custom child theme still maintained? Any unused themes in the directory? Delete extras.
- Verify SSL. AutoSSL renewing properly? Check SSL/TLS Status → all domains green.
- Test contact forms. Submit a test entry; verify you receive it. Frequent failure point.
- Review SEO basics. Yoast/RankMath status, no critical errors. Top keywords still pointed to right pages.
- Review hosting plan. Outgrowing limits? Underusing? Upgrade or right-size.
- Compliance / legal review. Privacy policy current? Terms of Service still accurate?
Yearly (2-3 hours)
- Major version update review. PHP version, MySQL/MariaDB version. Should you upgrade? PHP version guide.
- Domain renewal. Verify autorenew enabled with valid payment. Check expiration date.
- Full security audit. Run multiple security scans, review hardening status against latest best practices.
- Performance baseline. Document current PageSpeed scores. Compare against next year’s check.
- Theme/plugin licensing. Renew premium licenses you depend on.
- Backup strategy review. Where are off-site backups going? Still working?
- Disaster recovery test. Could you actually restore the site if needed? Test it.
- Content audit. Outdated pages? Old promotional content? Refresh or delete.
Before every WordPress core major update
- Manual JetBackup before clicking Update.
- Update in staging environment first if you have one. Staging guide.
- Check for known compatibility issues with your specific plugins/theme.
- Have rollback plan ready: restore from backup if site breaks.
Minor updates (security patches, bug fixes) are usually safe to auto-apply. Major version jumps (WordPress 6.x to 7.x) deserve more caution.
Plugin update strategy
When to auto-update
- WordPress core minor updates (security/bugfix only) — enable auto-update.
- Trusted security plugins (Wordfence, Solid Security) — auto-update.
- Small utility plugins with minimal site impact — auto-update OK.
When to manually update
- Page builders (Elementor, Bricks). Major version updates have broken layouts in the past.
- WooCommerce and major commerce plugins. Test in staging.
- Custom-modified plugins (you’ve edited code, update will overwrite).
- Plugins your site critically depends on (membership, payment, custom workflow).
Documenting your site
Keep a simple document with:
- WordPress admin URL.
- Active theme name and version.
- List of essential plugins (the ones the site can’t function without).
- Premium license keys (in password manager).
- External services connected (Stripe, Mailchimp, SendGrid, etc.).
- DNS records on file.
- Last major changes and dates.
Time investment: 30 minutes. Worth its weight when a developer needs context or you return after months away from the site.
When to skip maintenance and hire help
- Site generates revenue and downtime hurts financially.
- You can’t allocate the routine time.
- You don’t enjoy this work and it stresses you out.
- Sites multiple in number.
Hire a maintenance service ($30-100/month for basic, $200+ for advanced). They handle updates, backups, security, monitoring. Frees you to focus on content/business.
Common questions
“My site is small. Do I really need all this?” Scale down — weekly checks become “I update plugins once a month”. Monthly checks become “I check security once a quarter”. Don’t skip entirely; just match effort to value.
“Auto-updates seem easier. Why manual?” Auto-updates work great until they don’t. Major plugin updates can break sites. Manual gives you control over timing.
“I haven’t done maintenance in a year — what do I do?” Don’t bulk-update everything in one go. Step-by-step: backup → update WordPress core → backup → update one critical plugin → test → repeat for each plugin. Spread over a week.
“Backup vs JetBackup vs UpdraftPlus?” JetBackup at server level captures everything regardless of WordPress state. UpdraftPlus or similar inside WordPress is a second layer. Run both.
“What if an update breaks my site?” Restore from backup taken right before the update. Identify the offending plugin (usually obvious — the one you just updated). Decide: roll back to old version, find alternative, or accept the break and fix.
What’s next
- Database cleanup specifics: DB optimization.
- Security hardening: Hardening guide.
- Backup setup: JetBackup guide.
- Staging environment: Staging guide.
WordPress maintenance is one of those things you either schedule deliberately or watch slowly deteriorate. The weekly 15-minute habit + monthly 1-hour deeper check covers nearly everything that matters. Six months of skipped maintenance becomes a multi-day recovery project; six months of consistent maintenance is barely noticeable in your week.
Was this helpful?
Thanks for your feedback!