PHPackages                             mage2kishan/module-performance-debugger - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Debugging &amp; Profiling](/categories/debugging)
4. /
5. mage2kishan/module-performance-debugger

ActiveMagento2-module[Debugging &amp; Profiling](/categories/debugging)

mage2kishan/module-performance-debugger
=======================================

Production-grade Magento 2 frontend performance debugger and profiler. Tracks block render time, observers, plugins, layout XML, DI resolution, DB queries (slow + duplicate + N+1), memory, and full page timeline. Surfaces a floating storefront toolbar with bottleneck detection, severity scoring, suggested fixes and estimated savings. Supports XLS + PDF report export and per-collector toggles.

1.0.7(1mo ago)0141[1 issues](https://github.com/mage2sk/module-performance-debugger/issues)proprietaryPHPPHP ~8.1.0||~8.2.0||~8.3.0||~8.4.0

Since Apr 28Pushed 1mo agoCompare

[ Source](https://github.com/mage2sk/module-performance-debugger)[ Packagist](https://packagist.org/packages/mage2kishan/module-performance-debugger)[ Docs](https://kishansavaliya.com)[ RSS](/packages/mage2kishan-module-performance-debugger/feed)WikiDiscussions main Synced 3w ago

READMEChangelogDependencies (10)Versions (9)Used By (0)

Magento 2 Performance Debugger: Profiler, N+1 Detector and XLSX/PDF Reports (Hyva + Luma)
=========================================================================================

[](#magento-2-performance-debugger-profiler-n1-detector-and-xlsxpdf-reports-hyva--luma)

[![Magento 2.4.4 - 2.4.8](https://camo.githubusercontent.com/079c832211eed4f9451ebe264e3865f825b0f9f31b041cbf03676c6e254535d4/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4d6167656e746f2d322e342e342532302d2d253230322e342e382d6f72616e67653f6c6f676f3d6d6167656e746f266c6f676f436f6c6f723d7768697465)](https://magento.com)[![PHP 8.1 - 8.4](https://camo.githubusercontent.com/56b3cce18841623e2cbed2ebf09b06be1be8807e99e6e054a89d304ab4790b8e/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f5048502d382e312532302d2d253230382e342d626c75653f6c6f676f3d706870266c6f676f436f6c6f723d7768697465)](https://php.net)[![Hyva + Luma](https://camo.githubusercontent.com/d4d6a05401973034a5aae392f030440eefa40afc9191ffb06ed897af5d25adb1/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f5468656d65732d487976612532302532422532304c756d612d313462386136)](https://www.hyva.io)[![Live Demo & Details](https://camo.githubusercontent.com/7c88f7ac18d981d9554bc71d7ec0769469a77e232412bed13c07800e68898d0e/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c69766525323044656d6f25323025323625323044657461696c732d6d6167656e746f2d2d322d2d706572666f726d616e63652d2d64656275676765722d3044393438383f7374796c653d666c6174)](https://kishansavaliya.com/magento-2-performance-debugger.html)[![Packagist](https://camo.githubusercontent.com/f8058104c369f64ea8a9d4c61589db84c39d7f3c2a0a4de8f9623fb7e8ce310b/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f5061636b61676973742d6d616765326b697368616e2532466d6f64756c652d2d706572666f726d616e63652d2d64656275676765722d6f72616e67653f6c6f676f3d7061636b6167697374266c6f676f436f6c6f723d7768697465)](https://packagist.org/packages/mage2kishan/module-performance-debugger)[![Upwork Top Rated Plus](https://camo.githubusercontent.com/6f72584179420c41ed90432fd2579a4ed36199d4229e8181d20f353c1c4ee4eb/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f5570776f726b2d546f702532305261746564253230506c75732d3134613830303f6c6f676f3d7570776f726b266c6f676f436f6c6f723d7768697465)](https://www.upwork.com/freelancers/~016dd1767321100e21)[![Website](https://camo.githubusercontent.com/f1ae86d28e2b505aee60f240d3e5508e390b0a8dc7a9b7ecf1b450fad862053f/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f576562736974652d6b697368616e736176616c6979612e636f6d2d304439343838)](https://kishansavaliya.com)

> **See exactly where every millisecond goes, and which ones you can actually fix.** A floating storefront toolbar plus a full admin profiler that traces every block render, observer, plugin, layout phase, DI resolution, and DB query in a single request. Detects bottlenecks with severity scoring and estimated savings, and shows the exact `file:line` your code called the slow path from. Magento core findings live in their own tab so you only triage what is actually yours to fix. XLSX and PDF reports included. Zero JS framework dependency, works identically in Hyva, Luma, Breeze, and any custom theme.

**Product page:** [kishansavaliya.com/magento-2-performance-debugger.html](https://kishansavaliya.com/magento-2-performance-debugger.html)

---

Quick Answer
------------

[](#quick-answer)

**What is Panth Performance Debugger?** It is a Magento 2 profiler and bottleneck detector that records the complete execution flow of any frontend or admin request, blocks, observers, plugins, DB queries, layout phases, and memory, then shows the findings in a floating storefront toolbar and an admin grid.

**What does it add to my store?**

- A **floating storefront toolbar** with severity-scored bottlenecks, estimated savings, call origins, and copy-pasteable fix snippets.
- **Bottleneck detection** for slow queries, N+1 / duplicate query patterns, slow block renders, slow observers, and heavy modules.
- A **userland vs Magento core split** so you see only the issues you can actually fix, not noise from Magento internals.
- An **admin Profiler Runs grid** with per-run detail, XLSX export, and a PDF report.

**Which themes are supported?** Any Magento theme, including **Hyva**, **Luma**, and **Breeze**. The toolbar uses pure vanilla JS with no jQuery, RequireJS, KnockoutJS, or Alpine.js.

**What does it need?** Magento 2.4.4 to 2.4.8, PHP 8.1 to 8.4, and the free `mage2kishan/module-core` package.

---

🚀 Need Custom Magento 2 Development?
------------------------------------

[](#-need-custom-magento-2-development)

> **Get a free quote for your project in 24 hours** for custom modules, Hyva themes, performance work, M1 to M2 migrations, and Adobe Commerce Cloud.

 [ ![Get a Free Quote](https://camo.githubusercontent.com/eac8c45d21cff8b139ddc392325f3bd6c8266a6f3d7b23f15131c958f3d3c8d0/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f476574253230612532304672656525323051756f74652532302545322538362539322d5265706c7925323077697468696e2532303234253230686f7572732d4443323632363f7374796c653d666f722d7468652d6261646765) ](https://kishansavaliya.com/get-quote)

### 🏆 Kishan Savaliya

[](#-kishan-savaliya)

**Top Rated Plus on Upwork**

[![Hire on Upwork](https://camo.githubusercontent.com/b69353d3c6e192f4d03cc36bb8883612004e32f54dd2dbcc1e700dd791acd875/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f486972652532306f6e2532305570776f726b2d546f702532305261746564253230506c75732d3134613830303f7374796c653d666f722d7468652d6261646765266c6f676f3d7570776f726b266c6f676f436f6c6f723d7768697465)](https://www.upwork.com/freelancers/~016dd1767321100e21)

100% Job Success • 10+ Years Magento Experience Adobe Certified • Hyva Specialist

### 🏢 Panth Infotech Agency

[](#-panth-infotech-agency)

**Magento Development Team**

[![Visit Agency](https://camo.githubusercontent.com/bbf04bdd2aff502082508568ec42ace3a7475c98756f596e2013056c89726ed6/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f56697369742532304167656e63792d50616e7468253230496e666f746563682d3134613830303f7374796c653d666f722d7468652d6261646765266c6f676f3d7570776f726b266c6f676f436f6c6f723d7768697465)](https://www.upwork.com/agencies/1881421506131960778/)

Custom Modules • Theme Design • Migrations Performance • SEO • Adobe Commerce Cloud

**Visit our website:** [kishansavaliya.com](https://kishansavaliya.com) | **Get a quote:** [kishansavaliya.com/get-quote](https://kishansavaliya.com/get-quote)

---

Table of Contents
-----------------

[](#table-of-contents)

- [Who Is It For](#who-is-it-for)
- [Key Features](#key-features)
- [Screenshots](#screenshots)
- [Compatibility](#compatibility)
- [Installation](#installation)
- [Configuration](#configuration)
- [How It Works](#how-it-works)
- [Toolbar Tabs Reference](#toolbar-tabs-reference)
- [Bottleneck Detection](#bottleneck-detection)
- [Reports](#reports)
- [FAQ](#faq)
- [Support](#support)
- [About Panth Infotech](#about-panth-infotech)
- [Quick Links](#quick-links)

---

Who Is It For
-------------

[](#who-is-it-for)

- **Magento developers** who need to find which block, query, or observer is slowing a page down, without spending 30 minutes grepping through stack traces.
- **Agency teams** that want a shared admin report to hand off profiling findings to a client or junior dev, with context already attached.
- **Merchants running Hyva stores** who need a developer toolbar that works with Alpine.js and has no jQuery or RequireJS dependency.
- **Stores going through a performance audit** who want per-request timing data, estimated savings per fix, and exportable XLSX / PDF reports.
- **Any developer who uses New Relic or Blackfire** for high-level latency but wants deep per-request triage inside the Magento admin.

---

Key Features
------------

[](#key-features)

### Profiling Depth

[](#profiling-depth)

- **Per-block render time** for every `AbstractBlock::toHtml()` call, including template path, class, and output bytes.
- **Per-event observer dispatch time** recorded by event name.
- **Per-query DB timing, bind values, and SQL fingerprint** so duplicates are caught even when the bound values differ.
- **Layout XML timing** for `generateXml` and `generateElements` recorded separately.
- **Controller dispatch time** as a single record per request.
- **Memory delta per event** and peak memory for the whole run.
- **Total wall-clock time** from `Http::launch`, the earliest reliable anchor.

### Bottleneck Detection

[](#bottleneck-detection)

- **Slow query** flag when a single query exceeds the configurable threshold (default 50 ms).
- **Duplicate query / N+1 detection** when the same SQL fingerprint repeats at or above the duplicate threshold (default 3 times).
- **Slow block render** flag for blocks above the slow-block threshold (default 50 ms).
- **Slow observer** flag for dispatches above the slow-observer threshold (default 30 ms).
- **Heavy module** flag for any module accumulating 100 ms or more of render, query, and observer time across the request.
- **Severity scoring** (Low / Medium / High / Critical) and a conservative **estimated saving** for each finding.

### Call-Origin Tracking

[](#call-origin-tracking)

- **Exact file:line** that fired a slow or duplicate query, not just the Magento framework frame.
- **Userland frame promotion** so a slow query caused by a theme override at `vendor/hyva-themes/.../form.phtml:94` surfaces that file as the origin, because that is where you can edit.
- **5-frame call trail** expandable in the toolbar and rendered inline in the PDF.
- **Distinct bind values** per duplicate group so you can see which IDs drove the N+1.

### Userland vs Magento Core Split

[](#userland-vs-magento-core-split)

- Findings are classified as **userland** (app/code, app/design, non-Magento vendor) or **core** (vendor/magento - informational only).
- The main Issues tab, Fix it tab, Overview top issues, and savings totals show **userland findings only**.
- A separate **Core tab** in the toolbar and a separate section in the admin run detail hold Magento core findings, clearly labeled as not your fault.
- The launcher pill color and badge counts are driven by userland severity only.

### Fix Snippets

[](#fix-snippets)

- **Copy-pasteable code snippets** for every finding kind: request-scoped cache pattern for duplicate queries, EXPLAIN + ALTER TABLE for slow queries, layout XML `cacheable="true"` for slow blocks, and queue publish pattern for slow observers.
- One-click copy buttons for the snippet, the SQL, and the call origin.

### Floating Storefront Toolbar

[](#floating-storefront-toolbar)

- **Pure vanilla JS and CSS**, zero dependency on jQuery, RequireJS, KnockoutJS, or Alpine.js.
- Works identically in Hyva, Luma, Breeze, and any custom theme.
- CSS namespaced under `.panth-pdbg-` so it cannot collide with theme styles.
- Six tabs: Overview, Timeline, Queries, Modules, Issues, Fix it, and Core.
- Floating launcher pill with severity-driven color (green / yellow / orange / red).
- ESC closes the panel, click outside dismisses, and a Re-profile button reloads the page.

### Admin Grid and Reports

[](#admin-grid-and-reports)

- **Server-side paginated Profiler Runs grid** sortable on every column, with full-text URL / route search and a severity dropdown filter.
- **Run detail view** with 9 metric cards, bottleneck card list, Magento core section, back navigation, Download XLS, and Open PDF Report links.
- **XLSX export** via Magento's built-in `Convert\Excel`, no PhpSpreadsheet dependency, opens natively in Excel and LibreOffice.
- **PDF report** via browser-native "Save as PDF", no server-side PDF library required.

### Production Safety

[](#production-safety)

- **Off by default** - zero overhead until explicitly enabled.
- **IP allow-list** so the toolbar is visible only to the IPs you specify (or in developer mode).
- **Production-Safe Mode** to disable the heaviest collectors (DI tracking, plugin call stacks) for brief on-production profiling.
- **Per-run event cap** (default 5000) to stop a runaway page from bloating storage.
- **Hourly cleanup cron** (`panth_perf_cleanup`) with a configurable retention period (default 24 hours).
- Every persistence call is wrapped in a try-catch so a DB error never affects the response.

---

Screenshots
-----------

[](#screenshots)

### Storefront Toolbar - Overview Tab

[](#storefront-toolbar---overview-tab)

The floating launcher pill (bottom-right) shows total ms, SQL count, your-issues count, and core-findings count, color-coded by worst userland severity. Click it to open the panel.

[![Toolbar Overview](docs/images/toolbar-overview.png)](docs/images/toolbar-overview.png)

### Storefront Toolbar - Timeline, Queries, Modules, and Core Tabs

[](#storefront-toolbar---timeline-queries-modules-and-core-tabs)

TimelineQueries (with SQL and origin)[![Toolbar Timeline](docs/images/toolbar-timeline.png)](docs/images/toolbar-timeline.png)[![Toolbar Queries](docs/images/toolbar-queries.png)](docs/images/toolbar-queries.png)Modules (split userland vs core)Core (Magento internals - informational)[![Toolbar Modules](docs/images/toolbar-modules.png)](docs/images/toolbar-modules.png)[![Toolbar Core](docs/images/toolbar-core.png)](docs/images/toolbar-core.png)### Admin - Profiler Runs Grid

[](#admin---profiler-runs-grid)

Server-side paginated, sortable on every column, full-text search, severity filter, page-size selector.

[![Profiler Runs grid](docs/images/admin-runs-grid.png)](docs/images/admin-runs-grid.png)

### Admin - Run Detail with Full Call Trail and Core Findings Split

[](#admin---run-detail-with-full-call-trail-and-core-findings-split)

Each finding is a card with: severity badge, title, module attribution, measured ms, invocation count, min/avg/max per call, estimated saving, the exact SQL, the call origin file:line (expandable to a 5-frame trail), distinct bind values, and a green "Fix:" callout. Magento core findings appear in a separate informational section below.

[![Run detail](docs/images/admin-run-detail.png)](docs/images/admin-run-detail.png)

### Admin - Configuration

[](#admin---configuration)

Five config groups: General (master switch, IP allow-list, safe mode), Collectors (per-collector toggles), Thresholds (slow-query / slow-block / slow-observer / slow-plugin / N+1 thresholds), Storage (persistence, retention, per-run event cap), Reports (XLSX / PDF toggles).

[![Admin configuration](docs/images/admin-configuration.png)](docs/images/admin-configuration.png)

### Admin - PDF Report

[](#admin---pdf-report)

Print-to-PDF report with 10 metric cards, full bottleneck cards with code-snippet fixes, heaviest-modules breakdown split userland-vs-core, and top 200 events. Auto-prints on open.

Report - top halfReport - modules and events[![PDF report top](docs/images/pdf-report-top.png)](docs/images/pdf-report-top.png)[![PDF report bottom](docs/images/pdf-report-bottom.png)](docs/images/pdf-report-bottom.png)### Live Demo

[](#live-demo)

A 40-second walkthrough of the admin grid, run-detail view, PDF report, and back navigation:

[![Performance Debugger live demo](docs/images/admin-dashboard-demo.gif)](docs/images/admin-dashboard-demo.gif)

---

Compatibility
-------------

[](#compatibility)

RequirementVersions SupportedMagento Open Source2.4.4, 2.4.5, 2.4.6, 2.4.7, 2.4.8Adobe Commerce2.4.4, 2.4.5, 2.4.6, 2.4.7, 2.4.8Adobe Commerce Cloud2.4.4 to 2.4.8PHP8.1.x, 8.2.x, 8.3.x, 8.4.xMySQL8.0+MariaDB10.4+Hyva Theme1.3+ (no companion module needed)Luma ThemeNative supportBreeze-style themesNative supportRequired Dependency`mage2kishan/module-core` (free)---

Installation
------------

[](#installation)

### Composer Installation (Recommended)

[](#composer-installation-recommended)

```
composer require mage2kishan/module-performance-debugger
bin/magento module:enable Panth_Core Panth_PerformanceDebugger
bin/magento setup:upgrade
bin/magento setup:di:compile
bin/magento setup:static-content:deploy -f
bin/magento cache:flush
```

### Manual Installation via ZIP

[](#manual-installation-via-zip)

1. Download the latest release from [Packagist](https://packagist.org/packages/mage2kishan/module-performance-debugger) or from the [product page](https://kishansavaliya.com/magento-2-performance-debugger.html).
2. Extract it to `app/code/Panth/PerformanceDebugger/` in your Magento install.
3. Make sure `Panth_Core` is installed too (required dependency).
4. Run the commands above starting from `bin/magento module:enable`.

### Verify Installation

[](#verify-installation)

```
bin/magento module:status Panth_PerformanceDebugger
# Expected: Module is enabled
```

After install, open:

```
Admin -> Stores -> Configuration -> Panth Extensions -> Performance Debugger

```

---

Configuration
-------------

[](#configuration)

Go to **Stores -&gt; Configuration -&gt; Panth Extensions -&gt; Performance Debugger**.

[![Admin configuration](docs/images/admin-configuration.png)](docs/images/admin-configuration.png)

### General

[](#general)

SettingGroupDefaultDescriptionEnable ProfilerGeneralNoMaster switch. When disabled the profiler records nothing, zero overhead.Show Frontend ToolbarGeneralYesRender the floating debugger panel on the storefront. Only visible to allowed IPs.Allowed IP AddressesGeneral127.0.0.1Comma-separated IPs that may see the toolbar. Leave empty to allow only developer mode. Use `*` for everyone (never on production).Production-Safe ModeGeneralNoDisable the heaviest collectors (DI tracking, plugin call stacks) for brief on-production profiling.### Collectors

[](#collectors)

SettingGroupDefaultDescriptionTrack Block RenderingCollectorsYesWrap every `AbstractBlock::toHtml()` and record render time.Track ObserversCollectorsYesWrap every `EventManager::dispatch()` and record dispatch time.Track PluginsCollectorsYesRecord plugin chain timing. Auto-disabled in safe mode.Track DB QueriesCollectorsYesHook `DB\LoggerInterface` for per-query timing, bind values, and SQL fingerprint.Track Layout XMLCollectorsYesTime `generateXml` and `generateElements` separately.Track DI ResolutionCollectorsNoRecord DI object creation. Heavy; auto-disabled in safe mode.Track Memory Per EventCollectorsYesRecord memory delta for every profiled event.### Thresholds

[](#thresholds)

SettingGroupDefaultDescriptionSlow Query (ms)Thresholds50Queries above this duration are flagged.Slow Block Render (ms)Thresholds50Block renders above this duration are flagged.Slow Observer (ms)Thresholds30Event dispatches above this duration are flagged.Slow Plugin (ms)Thresholds20Plugin calls above this duration are flagged.Duplicate Query ThresholdThresholds3Same SQL fingerprint repeated this many times triggers an N+1 warning.### Storage

[](#storage)

SettingGroupDefaultDescriptionPersist Profiler RunsStorageYesSave runs to the database so they appear in the admin Profiler Runs grid.Retention (hours)Storage24Auto-cleanup cron deletes runs older than this.Max Events Per RunStorage5000Hard cap to prevent a runaway page from bloating storage.### Reports

[](#reports)

SettingGroupDefaultDescriptionEnable XLSX ExportReportsYesAllow downloading runs as `.xls` (SpreadsheetML, opens natively in Excel and LibreOffice).Enable PDF ExportReportsYesAllow opening the print-ready HTML report (browser-native Save as PDF).---

How It Works
------------

[](#how-it-works)

1. At request start, `HttpAppPlugin` hooks `Magento\Framework\App\Http::launch` and starts the profiler with a wall-clock anchor and a unique 16-char token.
2. During dispatch, collectors (plugins on `FrontController`, `Layout`, `EventManager`, `AbstractBlock`, and `DB\LoggerInterface`) record events into an in-memory buffer.
3. Before the response is sent, the storefront `Toolbar` block reads the buffer and analyzer findings into a JSON payload, embedded into a single ``. The vanilla JS hydrates it into the panel.
4. After the response is sent, `ResponseFinalizePlugin` persists the run to `panth_perf_run` and `panth_perf_run_event` (with cascade-delete FK).
5. Hourly, `panth_perf_cleanup` cron prunes runs older than the configured retention period.

DB query backtraces use `debug_backtrace(DEBUG_BACKTRACE_IGNORE_ARGS, 30)` with a max depth of 30, then filtered to skip `Zend_Db` and `Magento\Framework\DB\...` frames, so the actual ResourceModel / Repository / Provider bubbles to the top.

---

Toolbar Tabs Reference
----------------------

[](#toolbar-tabs-reference)

### Overview

[](#overview)

Eight metric cards (Total time, DB queries, DB time, Blocks, Block render, Observers, Peak memory, Time after fixes) plus a Top 5 userland issues table and a Heaviest userland modules table.

[![Overview tab](docs/images/toolbar-overview.png)](docs/images/toolbar-overview.png)

### Timeline

[](#timeline)

Top 200 events sorted by duration, with kind badge, label, origin (file:line), module, and duration bar. A filter input matches name, file, and module.

[![Timeline tab](docs/images/toolbar-timeline.png)](docs/images/toolbar-timeline.png)

### Queries

[](#queries)

Top 300 queries sorted by duration. Each row shows the SQL with the call origin underneath. A per-row "Copy SQL" button is included. Duplicate fingerprints get a count badge.

[![Queries tab](docs/images/toolbar-queries.png)](docs/images/toolbar-queries.png)

### Modules

[](#modules)

Split into "Your modules - actionable" and "Magento core - informational" sections. Per-kind columns (Blocks / SQL / Observers / Other) plus time and percentage of total.

[![Modules tab](docs/images/toolbar-modules.png)](docs/images/toolbar-modules.png)

### Issues

[](#issues)

Userland findings only. Each finding is a card with severity badge, title, module attribution, stat chips (Measured, invocations, min/avg/max, Saving), a why-text, a "Fix:" callout, an expandable callsites box with the 5-frame trail, and a distinct-bind-values box.

### Fix It

[](#fix-it)

Userland findings sorted by estimated saving, each with a copy-pasteable code snippet.

### Core

[](#core)

Magento core findings, informational only. Same depth as Issues (callsites, Copy SQL) but no fix snippets.

[![Core tab](docs/images/toolbar-core.png)](docs/images/toolbar-core.png)

---

Bottleneck Detection
--------------------

[](#bottleneck-detection-1)

KindTriggerDefault ThresholdSuggested FixSlow querySingle query exceeds slow-query threshold50 msEXPLAIN + composite indexN+1 (duplicate query)Same SQL fingerprint repeats &gt;= threshold AND uses a `WHERE col = ?` pattern3 repeatsBatch with `IN (?)` or request-scoped cacheDuplicate query (memoize)Same SQL fingerprint repeats &gt;= threshold (non-N+1)3 repeatsMemoize in private staticSlow block renderSingle block render exceeds slow-block threshold50 msEnable `block_html` cache or move to ViewModel + AJAXSlow observerSingle event dispatch exceeds slow-observer threshold30 msMove to async queue consumerHeavy moduleModule aggregates 100 ms or more across blocks, observers, and queries100 ms totalAudit for cacheability, sync work, and N+1 in repositoriesSeverity scaling: 8x or more above threshold is Critical, 4x is High, 2x is Medium, otherwise Low.

---

Reports
-------

[](#reports-1)

### XLSX

[](#xlsx)

Generated via Magento's built-in `Magento\Framework\Convert\Excel`, no `phpoffice/phpspreadsheet` dependency. Emits Microsoft XML Spreadsheet 2003 format, which Excel and LibreOffice both open as `.xls` natively. Columns: Kind, Label, Source, Duration (ms), Invocations.

### PDF

[](#pdf)

Print-ready HTML with auto-print script, uses the browser's native Save as PDF, no server-side PDF library needed (no mpdf, no dompdf, no tcpdf). Includes 10 metric cards, bottleneck cards with callsites and fix snippets, a heaviest-modules table split userland-first, and top 200 events.

---

FAQ
---

[](#faq)

### Does the profiler slow down my store?

[](#does-the-profiler-slow-down-my-store)

When `Enable Profiler` is No (the default), the only code that runs is the plugins' early-return guards, measured at under 0.1 ms total. When fully enabled, expect 4 to 8 ms of overhead on a typical category page. Use Production-Safe Mode for brief profiling on a live store.

### Is it safe to leave on in production?

[](#is-it-safe-to-leave-on-in-production)

Briefly, yes. That is what Production-Safe Mode, the IP allow-list, and the per-run event cap are for. Keep `Allowed IP Addresses` set to your dev or staff IPs only. Do not leave it visible to all visitors during a traffic peak.

### Does it work on Hyva themes?

[](#does-it-work-on-hyva-themes)

Yes. The toolbar uses pure vanilla JS with no jQuery, RequireJS, KnockoutJS, or Alpine.js. It works in Hyva, Luma, Breeze, and any custom theme without a companion compat module.

### Which product types and request types are profiled?

[](#which-product-types-and-request-types-are-profiled)

Every HTTP request to Magento is profiled, including admin requests, GraphQL POST requests, and any custom route. GraphQL runs appear in the admin grid with route `graphql/index/index`. The storefront toolbar does not inject into GraphQL JSON responses.

### What is the userland vs core split?

[](#what-is-the-userland-vs-core-split)

Most of the time on a stock Magento page is Magento itself. Reporting 31 issues when 28 are inside `vendor/magento/*` is noise you cannot act on. The module classifies each finding as userland (you can fix it) or core (informational only). Main tabs and severity colors are driven by userland findings only.

### What does the estimated saving number mean?

[](#what-does-the-estimated-saving-number-mean)

It is a conservative ceiling based on fixed factors per finding kind: 85% for query fixes, 70% for block cache, 60% for observer queueing, 40% for module audits, applied to the measured wasted time. Actual savings depend on how you fix the root cause.

### Can I disable individual collectors?

[](#can-i-disable-individual-collectors)

Yes. The Collectors group in configuration has a toggle for each of the seven collectors: blocks, observers, plugins, DB queries, layout XML, DI resolution, and memory. Turn off the collectors you do not need to reduce overhead.

### Does it work with multi-store setups?

[](#does-it-work-with-multi-store-setups)

Yes. Every run records `store_id`. Configuration is store-scoped, so you can enable the profiler on one store view and leave it off on another.

### Does Panth Performance Debugger need Panth Core?

[](#does-panth-performance-debugger-need-panth-core)

Yes. `mage2kishan/module-core` is a free, required dependency that Composer installs for you. It provides the Panth Infotech admin menu group.

---

Support
-------

[](#support)

ChannelContactProduct Page[kishansavaliya.com/magento-2-performance-debugger.html](https://kishansavaliya.com/magento-2-performance-debugger.html)EmailWebsite[kishansavaliya.com](https://kishansavaliya.com)WhatsApp+91 84012 70422GitHub Issues[github.com/mage2sk/module-performance-debugger/issues](https://github.com/mage2sk/module-performance-debugger/issues)Upwork (Top Rated Plus)[Hire Kishan Savaliya](https://www.upwork.com/freelancers/~016dd1767321100e21)Upwork Agency[Panth Infotech](https://www.upwork.com/agencies/1881421506131960778/)Response time: 1-2 business days.

### 💼 Need Custom Magento Development?

[](#-need-custom-magento-development)

Looking for **custom Magento module development**, **Hyva theme work**, **store migrations**, or **performance tuning**? Get a free quote in 24 hours:

 [ ![Get a Free Quote](https://camo.githubusercontent.com/0d9512dc4f89ef40179e9f650fd0786b6bc846d289ab2cb04a223a43f2833eeb/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f254630253946253932254143253230476574253230612532304672656525323051756f74652d6b697368616e736176616c6979612e636f6d2532466765742d2d71756f74652d4443323632363f7374796c653d666f722d7468652d6261646765) ](https://kishansavaliya.com/get-quote)

 [ ![Hire on Upwork](https://camo.githubusercontent.com/fad56e8be7896e39593f090cd2ed32e6bf86b4b6e75974cf292aee99d45f5077/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f486972652532304b697368616e2d546f702532305261746564253230506c75732d3134613830303f7374796c653d666f722d7468652d6261646765266c6f676f3d7570776f726b266c6f676f436f6c6f723d7768697465) ](https://www.upwork.com/freelancers/~016dd1767321100e21) [ ![Visit Agency](https://camo.githubusercontent.com/fdf45a9d937d72b896f5e2557337d47efebc0e06b7ad4d4c162c0a64375a62fa/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f56697369742d50616e7468253230496e666f746563682532304167656e63792d3134613830303f7374796c653d666f722d7468652d6261646765266c6f676f3d7570776f726b266c6f676f436f6c6f723d7768697465) ](https://www.upwork.com/agencies/1881421506131960778/) [ ![View Product Page](https://camo.githubusercontent.com/b233519c50c1046969a3191f0dfd8a0ee4dc3a1c93ba7f6fc5f1065507cdeb92/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f5669657725323050726f64756374253230506167652d6d6167656e746f2d2d322d2d706572666f726d616e63652d2d64656275676765722d3044393438383f7374796c653d666f722d7468652d6261646765) ](https://kishansavaliya.com/magento-2-performance-debugger.html)

---

About Panth Infotech
--------------------

[](#about-panth-infotech)

Built and maintained by **Kishan Savaliya** ([kishansavaliya.com](https://kishansavaliya.com)), a **Top Rated Plus** Magento developer on Upwork with 10+ years of eCommerce experience.

**Panth Infotech** is a Magento 2 development agency that builds high quality, security focused extensions and themes for both Hyva and Luma storefronts. The extension suite covers SEO, performance, checkout, product presentation, customer engagement, and store management, with each module built to MEQP standards and tested across Magento 2.4.4 to 2.4.8.

Browse the full extension catalog on our [Magento extensions page](https://kishansavaliya.com/magento-extensions.html) or on [Packagist](https://packagist.org/packages/mage2kishan/).

---

Quick Links
-----------

[](#quick-links)

ResourceLink🛒 **Product Page**[magento-2-performance-debugger.html](https://kishansavaliya.com/magento-2-performance-debugger.html)📦 **Packagist**[mage2kishan/module-performance-debugger](https://packagist.org/packages/mage2kishan/module-performance-debugger)🐙 **GitHub**[mage2sk/module-performance-debugger](https://github.com/mage2sk/module-performance-debugger)🌐 **Website**[kishansavaliya.com](https://kishansavaliya.com)💬 **Free Quote**[kishansavaliya.com/get-quote](https://kishansavaliya.com/get-quote)👨‍💻 **Upwork (Top Rated Plus)**[Hire Kishan Savaliya](https://www.upwork.com/freelancers/~016dd1767321100e21)🏢 **Upwork Agency**[Panth Infotech](https://www.upwork.com/agencies/1881421506131960778/)📧 **Email**📱 **WhatsApp**+91 84012 70422---

 **Ready to find exactly what is slowing your Magento store down?**
 [ ![See Performance Debugger](https://camo.githubusercontent.com/76e69c44011fbd494da08618aa108afe23bdf938ae83f25fa5cf24d6e85a1415/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f254630253946253941253830253230536565253230506572666f726d616e636525323044656275676765722532302545322538362539322d50726f647563742532305061676525323025323625323044656d6f2d4443323632363f7374796c653d666f722d7468652d6261646765) ](https://kishansavaliya.com/magento-2-performance-debugger.html)

---

**SEO Keywords:** magento 2 performance debugger, magento 2 profiler, magento 2 bottleneck detector, magento 2 n+1 detector, magento 2 n+1 query finder, magento 2 slow query finder, magento 2 duplicate query finder, magento 2 block render profiler, magento 2 observer profiler, magento 2 plugin profiler, magento 2 db query log, magento 2 developer toolbar, hyva performance debugger, hyva profiler, luma performance debugger, magento 2 performance audit, magento 2 page speed, magento 2 ttfb, magento 2 profiler extension, magento 2 debug toolbar, magento 2 query profiler, magento 2.4.8 profiler, php 8.4 magento profiler, mage2kishan performance debugger, panth performance debugger, panth infotech, hire magento developer, top rated plus upwork, kishan savaliya magento, custom magento development, magento 2 xlsx pdf report, magento 2 userland core split

###  Health Score

44

—

FairBetter than 90% of packages

Maintenance91

Actively maintained with recent releases

Popularity9

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity57

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~7 days

Total

8

Last Release

36d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/343e344aa298f189db888b32d62f9202d31ced1a5ea23411850a63dc4a30299c?d=identicon)[kishansavaliya](/maintainers/kishansavaliya)

---

Top Contributors

[![KishanSavaliya](https://avatars.githubusercontent.com/u/16853223?v=4)](https://github.com/KishanSavaliya "KishanSavaliya (7 commits)")

---

Tags

profilerperformancedebuggermagento2developer-toolsmagento2 moduleslow-queriesbottleneckn plus 1panth

### Embed Badge

![Health badge](/badges/mage2kishan-module-performance-debugger/health.svg)

```
[![Health](https://phpackages.com/badges/mage2kishan-module-performance-debugger/health.svg)](https://phpackages.com/packages/mage2kishan-module-performance-debugger)
```

###  Alternatives

[mollie/magento2

Mollie Payment Module for Magento 2

1131.9M16](/packages/mollie-magento2)[loki/magento2-components

Core module for defining Alpine.js components with advanced AJAX features

1011.8k26](/packages/loki-magento2-components)[run-as-root/magento2-prometheus-exporter

Magento2 Prometheus Exporter

68357.9k](/packages/run-as-root-magento2-prometheus-exporter)[opengento/module-category-import-export

This module add the capability to import and export the categories from the back-office.

1310.9k2](/packages/opengento-module-category-import-export)[angeo/module-llms-txt

Magento 2 module for AI Engine Optimization (AEO). Generates spec-compliant llms.txt and llms-full.txt per llmstxt.org standard, plus streaming JSONL for vector indexing. Multi-store, multi-website, CLI, cron, async admin UI, Page Builder-aware sanitization, customer-group pricing, atomic writes, ETag/Cache-Control, .md mirrors.

111.1k](/packages/angeo-module-llms-txt)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
