Skip to content
Paul Bunyan Message Logger. The best damn logger there ever was. WordPress, PHP, MySQL.

PAUL BUNYAN FOR WORDPRESS

Find out what is slowing down your WordPress site, and which line of code is doing it.

Paul Bunyan records every request on your site, then gives you one ranked list of what to fix first. Each item names the plugin, the file and the line.

Runs on any host. No server extension. Adds about 10 to 20 ms per request on our test sites.

Paul Bunyan Fix first screen ranking six kinds of problem by total cost, each with its PB code, what it means and what to do
Fix first, the screen Paul Bunyan opens on. Recorded on a test site.

FROM MESSAGES TO MEANING

You turned on debug mode.
Now what?

Most advice on a slow or broken WordPress site ends in the same two places: turn on WP_DEBUG, or deactivate your plugins one at a time. The first gives you a log file nobody explains. The second takes an afternoon and tells you nothing about why. Paul Bunyan starts where that advice stops.

wp-content/debug.log
[02:14:07] PHP Deprecated: Dynamic property …
[02:14:07] PHP Deprecated: Dynamic property …
[02:14:08] PHP Notice: Translation loading …
[02:14:09] PHP Fatal error: Memory exhausted …
[02:14:11] PHP Deprecated: Dynamic property …
[02:14:12] PHP Notice: Translation loading …

Thousands of repeats. One real failure buried in the middle.

What Paul Bunyan shows instead
01

One fatal error, first in the listThe request it happened in, and the plugin, file and line.

02

Repeated notices, counted onceThousands of identical lines grouped into one row with a count.

03

Each one tied to its pluginSo you know whose code to update, report or replace.

Illustrative comparison.

ONE REQUEST, BROKEN DOWN

One checkout.
See where the time goes.

Every request is broken down like this, so you can see what the customer was waiting for and which code spent the time.

Checkout on a WooCommerce test store POST /checkout/ · 1,315 ms
Everything else · 499 msEmails · 542 msPush notifications · 274 ms

Recorded by Paul Bunyan on our own test store. Emails and push notifications were sent while the buyer waited.

One request opened as a timeline in the Messages screen: WordPress stages, slow hooks and the functions inside them, with timings in milliseconds
Any request opens like this in the Messages screen: stages, hooks, functions, queries and outside calls, in order.

WHAT YOU GET

The evidence behind the problem.

Everything below is in the free edition. It starts recording the moment it is installed, with no code changes.

01

Fix first

One list, ranked by cost, with what each problem is, where it is and what to do about it.

02

File and line

Slow queries, outside calls, emails and PHP errors, each traced to the plugin, file and line responsible.

03

Requests nobody was watching

The 2 a.m. checkout, the scheduled job that overran, the admin page that timed out. Kept for you.

04

Your own log lines

Ten logging functions for your plugin or theme, in the same timeline as everything else.

05

Small footprint

About 10 to 20 ms per request on our test sites. It measures its own cost and shows it to you.

06

Any host

A plugin and nothing else. No server extension, no root access, shared hosting included.

FOR DEVELOPERS

Log from your own code.
Read it in one timeline.

Your messages land beside the hooks, queries, outside calls and emails of the same request, with levels and timings. Explain why a branch ran, why validation stopped, or whether a job finished.

Use the action form and your code keeps working with or without Paul Bunyan installed.

How the logging action works

Pass a level, a component, a message and an optional data array to paul_bunyan_log. If Paul Bunyan is not active, nothing listens and nothing happens. Keep personal data, keys and tokens out of log messages.

PHP
// Safe whether or not Paul Bunyan is installed.
do_action(
    'paul_bunyan_log',
    'info',
    'shop',
    'Cache warmed',
    array( 'items' => 24 )
);

// Or call the functions directly.
pb_info( 'shop', 'Pulled SKUs from supplier' );
pb_warn( 'shop', 'SKUs missing a price', array( 'count' => 3 ) );

FROM OUR INVESTIGATIONS

What the measurements showed.

1,315 → 499 ms

Checkout work the buyer was waiting for.

On a WooCommerce test store, Paul Bunyan showed that emails and push notifications were sent while the buyer waited. Moving that work out of the way cut checkout time by 62%.

0.3 s vs 8.7 s

A fast server. A slow page.

On a client site before launch, the server answered in 0.3 seconds but the page took 8.7 seconds in a real browser. The cost was marketing tags, not the server.

Results from individual investigations. Your site will differ.

A USEFUL FREE TOOL. ROOM TO GROW.

Start with Lite.
Add Professional when you need it.

Lite is free and stays free. Nothing in it is locked, timed or switched off later. Professional pays for continued development and support.

Lite

Free

Records everything. Every screen.

  • Fix first, PB codes and setup checks
  • Plugins, Database, Messages and Background screens
  • Logging functions for your own code
  • 3 days of full detail, 7 days of summary
  • Export and delete your data
  • Support on the WordPress.org forum
Get Lite free

Professional

From $59/yr

A separate add-on to Lite, for ongoing work.

  • History of 30 days or 13 months
  • Alerts by email or webhook
  • “Got slower” detection after an update
  • WooCommerce order trails
  • Ask AI with the AI service you choose
  • Support tickets, answered in 1 business day
Buy Professional

$59 a year for 1 site, $149 for 10, $299 for 50. Staging copies are free.

What does “3 days of detail, 7 days of summary” mean?

For 3 days Lite keeps everything it recorded. From day 4 to day 7 it keeps every request, anything slow or failed, anything with a PB code, browser timing and cost per plugin, and drops the routine detail.

LOGGING TOOLS SINCE 1995

A familiar name.
Built for WordPress.

The first Paul Bunyan shipped in 1995 as a message logger for Windows developers, published by Levon's Wake and later Diamond Sierra. It recorded the component, file and line behind every message, and it was used inside Fortune 100 companies through the Y2K years.

It spread the way developer tools do: one developer used it, the team adopted it, and it went along to the next job. This is the same idea, rebuilt for WordPress and PHP by the same people.

  1. 1995First releases
  2. 1999The Y2K years
  3. 2000Diamond Sierra
  4. 2026WordPress
The Paul Bunyan home page in 1999: Best Damn Logger There Ever Was
Paul Bunyan's home page in May 1999, from the Internet Archive.

Install it. Load a few pages.
Open Fix first.

Get it free on WordPress.org

Free on WordPress.org from November. The link will appear here when the listing is approved.

FREE ON WORDPRESS.ORG

Coming in November.

Paul Bunyan Lite will be free on WordPress.org. The link will appear here as soon as the listing is approved.