keepcalculator

06 Numbers and Powers

WordPress Multisite Timeouts: Layer-by-Layer Fix Guide

Card No. 06·40324 · Updated · Standard formula, shown below

WordPress Multisite timeouts can stall your entire network, affecting every subsite and frustrating visitors and editors alike. This guide walks you through a systematic, layer-by-layer approach to diagnose and fix timeout errors—from quick browser-side checks to server configuration, database optimization, and plugin/theme conflicts. You’ll learn the most common causes and the exact steps to resolve them, so you can get your network back online fast.

What You’ll Need

  • Access to your WordPress admin dashboard (at least one working subsite or the network admin).
  • FTP or file manager access to your site’s files (via cPanel, SSH, or similar).
  • Access to your hosting control panel or server configuration (for PHP settings and server logs).
  • A database management tool like phpMyAdmin (often available in cPanel).
  • A code editor (like Notepad++ or VS Code) for editing configuration files.
  • Patience and a backup of your site (files and database) before making changes.

Step-by-Step

  1. Start with a simple browser test. Open a few of your subsites in an incognito window. If they load, the issue may be caching or a specific browser extension. Clear your browser cache and test again. If all subsites time out, move to the next layer.
  2. Check your server’s PHP time limit. WordPress Multisite often needs more execution time than single sites. Log into your hosting control panel and look for a “PHP Settings� or “PHP Configuration� option. Increase the max_execution_time to at least 300 seconds (5 minutes). Also, raise max_input_time to 300 and memory_limit to 256M or higher. If you can’t find these settings, create or edit a php.ini file in your site’s root directory with these values. After saving, restart PHP if possible or wait a few minutes for changes to take effect.
  3. Test with a default theme. Temporarily switch your network’s main site to a default WordPress theme (like Twenty Twenty-Four). You can do this by renaming your current theme’s folder via FTP (e.g., wp-content/themes/your-theme to your-theme-old). WordPress will automatically fall back to a default theme. If timeouts stop, your theme is the culprit. If not, revert the folder name and move on.
  4. Deactivate all plugins (network-wide). In your network admin dashboard, go to Plugins and select all plugins. From the bulk actions dropdown, choose “Deactivate� and apply. This deactivates plugins across all subsites. Test your subsites again. If they load, reactivate plugins one by one (network-wide) until you find the one causing timeouts. Pay special attention to caching, security, and backup plugins, as they often conflict with Multisite.
  5. Increase WordPress memory limit. If you can’t edit PHP settings, add a line to your wp-config.php file (located in your site’s root): define('WP_MEMORY_LIMIT', '256M'); and for admin tasks: define('WP_MAX_MEMORY_LIMIT', '512M');. Save the file and test again.
  6. Optimize your database. Multisite databases can become bloated with transients, revisions, and spam comments. Use a plugin like WP-Optimize (if plugins are active) or run manual SQL queries via phpMyAdmin to clean up. For example, delete expired transients with: DELETE FROM wp_options WHERE option_name LIKE '_transient_timeout_%' AND option_value < NOW(); (adjust table prefix if needed). Also, consider optimizing tables by running OPTIMIZE TABLE wp_options; and other large tables.
  7. Check for external HTTP requests. Some plugins or themes make external calls (e.g., to Google Fonts, API services) that can hang and cause timeouts. Use a plugin like Query Monitor (if you can enable it) to see which requests are slow. Alternatively, temporarily disable any plugin that makes external calls (like analytics or CDN plugins) and test.
  8. Review server logs. Access your hosting control panel's error logs (often in “Logs� or “Errors� sections). Look for PHP fatal errors, memory exhaustion errors, or timeout messages. These logs will tell you exactly which script is causing the issue. Common culprits are wp-cron.php or a specific plugin's file.
  9. Disable WordPress cron and run it manually. Multisite cron jobs can pile up and cause timeouts. Add to your wp-config.php: define('DISABLE_WP_CRON', true);. Then, set up a server cron job (via cPanel or SSH) to run wp-cron.php every 5-10 minutes. For example, a simple cron command: wget -q -O - http://yourdomain.com/wp-cron.php?doing_wp_cron (adjust URL).
  10. Check your .htaccess file. For Multisite, the .htaccess file must contain the correct rewrite rules. Compare yours with the standard Multisite rules (available in the WordPress Codex). A misconfigured rule can cause infinite loops and timeouts. If you're unsure, back up the file and replace it with the default rules for your setup (subdirectory or subdomain).

Common Mistakes

  • Not testing after each step. Change one thing at a time and test. Otherwise, you won't know what fixed it.
  • Forgetting to clear caching. If you have a caching plugin or server-side cache, old cached pages may still show timeouts. Clear all caches after each change.
  • Editing files without backups. Always back up your wp-config.php and .htaccess before modifying them.
  • Increasing limits too much. Setting memory limit to 1G might mask the problem but isn't a long-term fix. Find the root cause.
  • Ignoring the network admin. Some settings are only in the Network Admin (e.g., “Network Settings�). Check there for any unusual configurations.

Tips

  • Use a staging environment. Test all changes on a staging copy of your Multisite before applying to production.
  • Monitor resource usage. Use your hosting provider's resource monitor to see if timeouts coincide with CPU or memory spikes.
  • Consider a managed WordPress host. They handle server-level tuning and often have Multisite-specific support.
  • Keep everything updated. Update WordPress core, themes, and plugins regularly to avoid known timeout bugs.
  • Use a CDN. Offload static assets to reduce server load and improve response times.

Troubleshooting

If the steps above don't resolve the issue, try these additional checks:

  • Check PHP error logs specifically. Look for “Maximum execution time exceeded� or “Allowed memory size exhausted� messages. They'll point to the exact file and line number.
  • Disable your security plugin temporarily. Some security plugins (like Wordfence) can be resource-intensive and cause timeouts on Multisite. Deactivate it and test.
  • Check for infinite redirects. If your .htaccess is wrong, you might get redirect loops. Use a browser's developer tools (Network tab) to see if requests are looping.
  • Try a different browser or device. Sometimes local issues (like a proxy or VPN) can cause timeouts that aren't server-related.
  • Contact your hosting provider. If you've exhausted all options, your host may have server-level issues (e.g., firewall, mod_security) that only they can fix.

Frequently Asked Questions

Why does my Multisite time out only on certain subsites?

This often points to a plugin or theme that is active only on those subsites. Check the subsite's active plugins and theme. Also, large media libraries or high traffic on specific subsites can cause timeouts.

Can a single plugin cause timeouts across the entire network?

Yes, especially if it's network-activated. A plugin that makes heavy database queries or external requests can slow down all subsites. Deactivate network-wide plugins one by one to isolate.

What is the ideal PHP memory limit for Multisite?

For a small network, 256M is a good baseline. For larger networks with many plugins, 512M or higher may be needed. Monitor your usage and adjust accordingly.

How do I find the exact file causing the timeout?

Check your PHP error logs. They will show the script that exceeded the execution time. If logs are not enabled, enable them temporarily by adding define('WP_DEBUG', true); define('WP_DEBUG_LOG', true); to wp-config.php.

Is it safe to increase max_execution_time to 300?

Yes, for most sites. It only affects PHP scripts on your server, not visitors' browsers. However, if you have a shared hosting plan, your host may have limits. Check with them if you're unsure.

Should I disable WP-Cron on Multisite?

If cron jobs are causing timeouts, yes. But you must set up a real cron job to replace it, otherwise scheduled tasks (like backups) won't run.

Related

Method: the standard formula for this calculation, rounded as each result states. See how the calculators work or report an error.

More cards in this drawer

The whole Numbers and Powers drawer →