Free on WordPress.org

Speedix WordPress performance profiler

See exactly which plugins and hooks slow down your WordPress site. Speedix times every hook, traces slow callbacks back to the plugin that added them, and keeps up to 7 days of history so you can spot trends.

WordPress 6.3+
PHP 8.0+
Tested up to WordPress 7.1
The Speedix dashboard in Simple view: response time, health score and hook time trend cards, then System Status, External APIs, Performance by plugin and WooCommerce panels.
Your data stays on your site
No tracking, no telemetry

Free, private, no upsell

  • Every feature is free No Pro version, no upsells, no account
  • Private by design Data stays in your WordPress database. The timing beacon posts only to your own admin-ajax.php
  • Safe for production Sampling, a slow-hook threshold and overload protection
  • GPL-2.0-or-later Use it on any number of sites, client sites included
Features

Everything you need to diagnose performance issues

Speedix shows why a site is slow, not just how slow it is. Find the culprit, then fix it.

Hook timing, traced to the plugin

Times every WordPress action and filter and uses PHP Reflection to trace slow callbacks back to the plugin or theme that registered them. A ranked list shows what to optimize or replace.

Server response breakdown

Response time split into plugins, theme, core, database and HTTP calls, with request count, P95 and a frontend versus admin split. Color-coded so problems stand out.

Database time needs SAVEQUERIES enabled in wp-config.php.

Frontend timing

FCP, LCP, DOM Ready and Load, measured in your visitors' browsers, with desktop and mobile trend charts.

LCP is a Core Web Vital; FCP is a supporting diagnostic. INP and CLS are not measured.

22-point Site Health scan

Database bloat, configuration and PHP checks: revisions, orphaned meta, expired transients, autoload size, cron, OPcache, PHP settings, Action Scheduler history and more. Color-coded by severity, with an email report.

Built-in WooCommerce profiling

A WooCommerce tab with 9 hook categories: Checkout, Cart, Products, Orders, Shipping, Payment, Subscriptions, Memberships and Blocks. Works with HPOS and Cart/Checkout Blocks.

External API monitoring

Slow server-side HTTP calls (50 ms and up) grouped by host, with the plugin that made each call. Expand a host for its endpoints and open the response time history.

Also included

  • Health Score (0-100). Starts at 100 and loses points for slow responses, hooks over 10 ms or 50 ms, high plugin overhead, autoload bloat, autoloaded transients, timed-out requests and a high JS/CSS file count.
  • Hotspots. The 3 slowest hooks averaging at least 1 ms, color-coded by severity.
  • History charts. Click any metric for its trend over time, with min, max and average.
  • Per-page metrics. Profile checkout, cart, product pages or any custom path, plus live timing in the admin bar.
  • Database, OPcache and object cache. Query time, OPcache hit rate, object-cache hit/miss rate (with a persistent cache) and slow-query tracking in the Detailed preset. Database time, query counts and slow queries need SAVEQUERIES enabled in wp-config.php, which WordPress leaves off by default.
  • Assets and iframes. Counts enqueued JS and CSS (with the plugin, theme or core behind each file), inline scripts and styles, and iframes with their host.
  • Environment warnings. Page and object cache, low memory and execution time, WP_DEBUG, SAVEQUERIES, Xdebug, Query Monitor and high server load: settings that skew results. OPcache and autoload size are checked in System Status and the Site Health Scan.
  • Overload protection. Pauses profiling automatically if its own overhead spikes, and resumes after an hour.
  • Presets and Auto-Calibrate. Safe, Balanced or Detailed in one click, or let Speedix suggest a threshold for your site.
  • Configurable retention. From 1 hour to 7 days (24 hours by default), cleaned up automatically.
  • Export. CSV, JSON or Markdown for client reports and before/after comparisons.
  • Quick Setup wizard and a dashboard widget for a summary at a glance.
Changelog

What's new in Speedix 2.1

  1. 2.1.9

    • Speedix now requires PHP 8.0 or newer, matching the code it already ran. WordPress no longer offers the update to PHP 7.4 sites.
  2. 2.1.8

    • Tested with WordPress 7.1 and WooCommerce 11.0.
  3. 2.1.7

    • New “Add Custom Path” field in Settings → Pages to Profile: type any URL path, and end it with / to include its subpages.
    • “Clear All Data” is now “Clear Speedix Data”. It deletes only Speedix’s own statistics, never your content or WooCommerce data.
    • Fixed duplicate-entry database errors from the frontend timing beacon under concurrent traffic.

Full changelog on WordPress.org (opens in a new tab)

Screenshots

See Speedix in action

The dashboard, hook and WooCommerce tabs, settings and history views, as they appear in WordPress.

Speedix dashboard in Simple view with Response Time, Health and Hook Time Trend cards above the System Status, External APIs and Performance panels.
Dashboard Simple View - Health Score, Response Time, and Top Time Consumers at a glance
Speedix dashboard in Advanced view with type, plugin and page filters, the metric cards and the By Plugin, By Hook and WooCommerce tabs.
Dashboard Advanced View - Full metrics with plugin breakdown and trend charts
The By Hook tab: a table of WordPress hooks with timings, plugin attribution badges and expandable callback rows.
By Hook tab - Hook timing table with plugin attribution badges and expandable callbacks
The WooCommerce tab: hook categories such as Checkout, Cart and Products, with page timing cards.
WooCommerce tab - Hook categories for Checkout, Cart, Products with page timing cards
The Per-Page tab: performance for a single page with its response time history.
Per-Page tab - Individual page performance with response time history
The Speedix settings page with Quick Presets, profiling controls and auto-calibration.
Settings page - Quick Presets, profiling controls, and auto-calibration
Response Time History window: a chart of response time over the selected period.
Response Time History - Click any metric to view historical trends
External API History window: response times of an external HTTP endpoint over time, with a breakdown.
External API History - Track slow external HTTP calls with detailed breakdown

Questions? Read the Speedix help center

Ready to speed up your WordPress site?

Free and GPL. No Pro version, no upsells, no tracking.