Overview #
max_execution_time limits how long a single PHP request may run before the server kills it. The default on many hosts is 30 seconds: fine for normal page loads, fatal for long-running operations. This article covers the alert, what breaks, and the fix.
The Alert #
MAX_EXECUTION_TIME (warning): max_execution_time is below 60 seconds. Long-running operations may time out.
What Breaks at Low Values #
| Operation | What happens under 60s |
|---|---|
| Plugin updates & installs | Large packages time out mid-install |
| Media processing | Bulk image compression, PDF generation, video processing |
| Migrations & imports | AI1WP imports, WooCommerce product CSV imports, theme demo imports |
| Backup restores | Large restores exceed the ceiling and die |
| Heavy admin actions | Elementor template imports, JetEngine sync, report generation |
The Fix #
Raise max_execution_time to 600 seconds (10 minutes).
- GridPane: control panel → PHP settings → Max Execution Time → 600 (Xponent does this for you).
- php.ini / .user.ini:
max_execution_time = 600 - .htaccess (Apache module mode only):
php_value max_execution_time 600
Verifying the Change #
Retry the operation that timed out. If you need a hard number, check the running value via phpinfo() or WordPress Site Health (Tools → Site Health → Info → Server).
The Xponent Standard #
Xponent-managed sites run max_execution_time = 600 via the GridPane control panel: enough for imports, migrations, and media jobs without letting any single script run away.