🔬 WordPress Plugin Feature — Works on All Hosting

Your WordPress Admin
Is Slow. We Know Why.

wp-admin taking 4+ seconds to load? Random 504 errors? Wondering which of your 40 plugins is the culprit? SysWP's Admin Health Profiler instruments your live WordPress site remotely — no SSH, no server access needed.

Works on WPEngine, Kinsta, Cloudways, and any managed host. Zero impact on your public-facing site. Activates on demand, deactivates automatically when done.

12

WP Lifecycle Phases Measured

>50ms

Slow Query Threshold

0

Public Site Impact

SSH

Not Required

The Slow wp-admin Problem

Every WordPress professional has felt this — but almost nobody has a good way to diagnose it.

Slow Admin Pages

The posts list, WooCommerce orders, plugin settings — all loading in 3–8 seconds. Your team loses productivity. It's not a server problem. It's a plugin stacking problem. But which one?

504 Gateway Timeouts

Random timeouts when saving posts, exporting data, or running imports. The hosting support says "it's PHP" but doesn't say which PHP. You're stuck guessing.

🔍

No Good Diagnostic Tools

Query Monitor shows queries but not the full lifecycle picture. New Relic requires $300/month and server instrumentation. APM tools require root server access most managed hosts don't allow.

How the Admin Health Profiler Works

Three steps. No file editing. No server access. Deactivates itself automatically.

1

Click "Start Analysis"

From the SysWP dashboard, click Start Analysis on any WordPress site. SysWP remotely activates the profiler via the SysWP WordPress plugin — no SSH, no wp-config.php edits, no maintenance mode. The profiler is off by default and adds zero overhead until you trigger it.

When inactive: costs less than 1ms per admin page load (a single transient check)
2

Navigate wp-admin Normally

The profiler silently instruments every admin page you visit. For each page request it records: time spent in each WP lifecycle phase, all database queries and their durations, all external HTTP calls your plugins make, and memory peak. Each page visit becomes a data snapshot. Visit the pages that feel slow — WooCommerce orders, plugin settings, media library, whatever your pain point is.

Up to 25 page snapshots stored. Your live visitors are completely unaffected.
3

Get Report + AI Analysis

Click "Get Report" in SysWP. The profiler deactivates immediately. SysWP renders the full diagnostic report — aggregated phase timings, slowest callbacks (attributed to their plugin), HTTP call map, slowest queries with SQL, and static analysis (autoloaded options, DB table sizes, heartbeat hooks). Then Claude AI reads the report and delivers specific, actionable recommendations.

Profiler deactivates automatically — no cleanup needed.

WordPress Lifecycle Phases Measured

muplugins_loaded

MU plugins

plugins_loaded

All plugins loaded

setup_theme

Theme init

after_setup_theme

Theme features

init

Core init

wp_loaded

WP fully loaded

admin_init

Admin bootstrap

admin_menu

Menu registration

admin_enqueue_scripts

Assets enqueue

admin_head

Head section

admin_notices

Admin notices

admin_footer

Page complete

Each phase uses -PHP_INT_MAX and +PHP_INT_MAX priority hooks to bracket the exact duration from first to last callback.

What the Report Shows

Seven categories of diagnostic data, aggregated across all your page visits.

⏱️

Phase Timing Breakdown

Average and P95 milliseconds per lifecycle phase across all captured snapshots. Instantly shows where time is spent: if plugins_loaded takes 1,200ms, you know that phase — not PHP or MySQL — is the bottleneck.

plugins_loaded: 1,240ms avg
admin_init: 380ms avg
admin_enqueue: 95ms avg

🐌

Slow Callbacks by Plugin

Every hook callback taking more than 10ms is captured, attributed to its plugin or theme by file path, and ranked by total cumulative time across all requests. You see the exact function name and which plugin owns it.

plugin: woocommerce
WC_Admin::admin_init() — 284ms
across 5 page requests

🌐

External HTTP Calls

Every outbound HTTP request your WordPress makes during admin page loads — captured via WordPress's http_api_debug hook. Grouped by remote host. Identifies chatty plugins calling external APIs on every admin page load.

api.mailchimp.com — 12 calls
www.googleapis.com — 8 calls
→ plugin: mailpoet

🗄️

Slow Database Queries

Queries taking more than 50ms are captured with their SQL (safe truncation), execution time, and the WordPress call stack that triggered them. SAVEQUERIES is enabled remotely for the profiling session and disabled automatically afterward — no wp-config.php changes needed.

SELECT * FROM wp_posts WHERE...
LIKE '%yarpp%' — 207ms
caller: yarpp_get_related()

📦

Autoloaded Options Breakdown

Top 30 autoloaded WordPress options by size in KB — with the owning plugin guessed from the option name prefix. Autoloaded options load on every WordPress request. Bloated autoload is one of the most common causes of slow WordPress sites and is invisible without this kind of analysis.

_transient_wpseo (bad!) — 412KB
wpseo_titles — 89KB
Total autoload: 2.1MB

🤖

Claude AI Recommendations

After the report renders, Claude reads the complete profiler data and returns specific, actionable fixes based on your actual numbers — not generic advice. It identifies which plugins to configure differently, which features to disable, and which queries to cache, with the exact settings to change.

"YARPP's related posts query uses LIKE — disable Related Posts on admin pages in YARPP settings → Settings → Disable in admin. Expected: −200ms on all admin pages."

Plus: Static Analysis (no browsing required)

DB Table Sizes

Top 15 database tables by size (MB) from information_schema — spot bloated postmeta, options, or log tables instantly.

Heartbeat Hook Audit

Lists all plugins registered on heartbeat_received, heartbeat_send, and heartbeat_tick — the WP heartbeat runs every 15s and is a common cause of unexpected admin slowdowns.

Active Plugin List

Complete list of active plugins included in the AI analysis context so Claude's recommendations are specific to your installed stack.

Advanced

Deep Mode: Per-Callback Timing

Standard profiling tells you a phase is slow. Deep Mode tells you which individual function inside that phase is slow — by wrapping every callback registered on admin_init, init, admin_menu, and admin_enqueue_scripts.

Activate deep mode by appending ?syswp_deep=1 to any wp-admin URL while the profiler is active. Every callback that takes more than 10ms is recorded with its function name, owning plugin, hook, and duration.

Wraps all callbacks at PHP_INT_MAX priority (after all real callbacks run)

Identifies the exact function, not just the hook phase

Opt-in — only active when you append ?syswp_deep=1

# Deep Mode output example

admin_init YARPP_Core::init_options() 312ms
admin_init WC_Admin::load_admin() 148ms
admin_menu ACF::acf_init() 87ms
init Gravity_Forms::init() 63ms
admin_enqueue Elementor::enqueue() 41ms
Total identified 651ms of 1,240ms phase

SysWP vs Other Diagnostic Approaches

Before SysWP, diagnosing slow wp-admin required expensive tools or server-level access.

Approach SysWP Query Monitor New Relic
Phase-level timing (not just queries)
Remote activation (no wp-config edits)
Works on managed hosts (WPEngine, Kinsta)
AI analysis with specific fixes
External HTTP call tracking
Autoloaded options audit
Zero public site impact
Monthly Cost$19–$49Free$300+

Frequently Asked Questions

Does the profiler slow down my WordPress site for visitors?
No. The profiler only runs on authenticated wp-admin requests — it never touches your public-facing pages. When inactive, the plugin adds a single transient check per admin page load (less than 1ms overhead, only for logged-in admins). Your visitors experience zero difference.
Does it work on WPEngine, Kinsta, or Cloudways?
Yes, fully. The profiler runs entirely inside PHP — no server-level agents, no root access, no APM SDKs to install. It activates via a WordPress transient (a database flag), instruments the WordPress hook system from within the plugin, and deactivates itself automatically. Everything that works inside standard WordPress plugins works with the profiler.
Do I need to change wp-config.php to enable SAVEQUERIES?
No. The profiler enables SAVEQUERIES programmatically for the current request by defining the constant at runtime — before the WordPress query buffer is initialized. This is a safe, standard PHP technique that works on any host without file edits. It's enabled only during your profiling session and has no effect on any other requests.
How is this different from the Query Monitor plugin?
Query Monitor is excellent for in-browser query inspection on a single page load. SysWP's profiler is designed for a different use case: remote activation (from a central dashboard, without touching the WordPress install), aggregation across multiple page visits (statistical accuracy), static analysis of the whole site, and AI-generated actionable recommendations. Think of them as complementary: Query Monitor for deep dives during development, SysWP for production diagnostics without server access.
What plan do I need for the Admin Health Profiler?
The Admin Health Profiler is available on all paid plans that include the WordPress plugin — starting with the Pro plan at $49/month. The 7-day free trial includes WordPress plugin features so you can test it before subscribing.

Stop Guessing. Start Profiling.

7-day free trial. No credit card required. WordPress plugin included.

✓ No credit card for trial ✓ Works on managed hosts ✓ Zero public site impact