Blog background
December 26, 2025|Read • 4 Min

How Tideways Helped Us Uncover the Hidden Bottlenecks In a Slow Magento PLP

Written by
Mahaveer Devabalan
Mahaveer Devabalan
Tideways

Listen Full Blog Here

Last Updated: Oct 13, 2026

Key Takeaways

  • »A Magento product listing page can be slow even when the code is clean, caching is on, and logs look fine, and a recent audit found over 4 seconds TTFB.
  • »Xdebug, Magento’s built-in profiler, query checks, and manual code scans did not show the cause.
  • »Tideways traces the full PHP request, including queries, cache calls, API requests, and loops, so it shows what is slow and why.
  • »It found one heavy query running repeatedly (about 800 ms) and an ld+json generator looping through every child product (about 1.2 seconds).
  • »Caching the query and refactoring the ld+json logic cut TTFB from 4 seconds to roughly 1.6 to 2 seconds, with no server changes.

Every Magento developer knows the pain of a slow Product Listing Page. Everything looks fine, the code seems clean, caching is enabled, and logs are not alarming. Yet the site feels slow, like something inside the system is quietly stealing seconds.

We saw this firsthand during a recent audit. The PLP was taking more than 4 seconds TTFB, and none of the usual debugging methods gave us a clear direction.

Before we get into the story, it is important to understand what a profiler really does.

What is a Profiler

A profiler is a tool that shows where your code spends its time.
It helps you understand which functions, classes, or processes take longer than expected. It gives a complete view of what happens inside a request so you can find bottlenecks you normally cannot detect with logs or debugging alone.

You can think of it like an X-ray for your code execution. Magento developers usually begin with tools like Xdebug or Magento’s built-in profiler..

When Traditional Profilers Are Not Enough

We did what any Magento team would do:

  • Enabled Magento profile
  • Checked Xdebug traces
  • Looked at DB queries
  • Manually scanned templates
  • Searched custom modules for loops

But the real clarity was missing with the existing tools.
The page was still taking over 4 seconds. We were still guessing.

This is where Tideways changed the entire direction.

Enter Tideways, the Profiler That Reveals the Full Story

The moment we enabled Tideways, the request flow became transparent. Tideways visualizes every part of a PHP request, end to end.

Controllers, models, DB queries, cache calls, external API requests, loops, memory usage, and even micro delays. Everything is stitched into a single trace so you understand not only what is slow but why it is slow.

Within minutes, Tideways pointed out the exact reasons behind the slow PLP.

What Tideways Found

1. A heavy DB query running multiple times

The same expensive query was triggered again and again.
Total wasted time: almost 800 ms.

2. An inefficient ld+json generator

A module was looping through every child product to generate structured data. Total time wasted: almost 1.2 seconds.

No inbuilt profiler would have shown this so clearly.

Fixing the problems was the easy part

Once we knew the cause, the solution took very little time.

  • We cached the query results so it ran only once.
  • We refactored the ld+json logic to avoid unnecessary loops.

Just two changes were enough.

The Impact

PLP TTFB dropped from 4 seconds to roughly 1.6 to 2 seconds.
Same server. Same configuration. Same page.
The difference was Tideways revealing the truth behind the scenes.

How to Set Up Tideways for Magento 2

Setting up Tideways with Magento 2 is straightforward. Here is the simplest version of the process.

1. Install the Tideways PHP Extension

On Ubuntu:

sudo apt-get install tideways-daemon tideways-php

Enable it in php.ini:

extension=tideways.so

Restart PHP FPM:

sudo service php8.1-fpm restart

2. Install the Tideways Daemon

sudo service tideways-daemon start

3. Configure the API Key

Add this to the environment:

export TIDEWAYS_APIKEY=”your_api_key_here”

Or add to the Tideways configuration file:

/etc/tideways/daemon.ini

4. Configure Magento to recognize it

No code change is needed. Once the extension is active, Tideways automatically detects Magento requests.

5. Login to your Tideways dashboard

You will start seeing:

  • Full request traces
  • Slow transactions
  • Database breakdowns
  • Flame charts
  • Calls made by custom modules
  • Exact hotspot functions

This is where the real journey begins.

Why Tideways Is Different

Xdebug and Magento profiler are meant for development.
Tideways is built for real-world performance engineering.

It gives you:

  • Full call graphs
  • Flame charts
  • Query timings
  • Memory consumption
  • I/O waits
  • Comparison of traces
  • Continuous low overhead profiling

It shows the entire execution flow in one place.

Final Thoughts

Magento performance problems rarely have one obvious cause. They are usually small inefficiencies stacking up in unexpected places.

Tideways helps uncover these hidden stories.
For us, it was a turning point in solving a stubborn PLP issue.

If your pages still feel slow and the usual methods are not giving answers, try Tideways.

Your code is probably hiding something interesting.

Liked what you read? Share with your teamShare

FAQs

Time to first byte measures how long the browser waits for the first byte from the server. Google rates 800 ms or less as good and above 1.8 seconds as poor. TTFB is not a Core Web Vital, and it sets the floor for LCP.

Uncached requests, such as cache misses, filter combinations, and logged-in or personalized views, still run your full code path. Slow queries, repeated calls, and heavy modules show up there. Bot traffic on non-cached URLs can create the same symptoms.

It is built for production use with sampling and low-overhead timeline tracing, and detailed callgraph profiling adds more overhead. Test on staging, start with sampling, and review what trace data captures.

Xdebug and the built-in profiler suit development. Tideways records traces on real traffic, with database detail, call graphs, flame charts, and comparison across traces.

Start with the calls that cost the most time and repeat within a request, then check cache hit rates, then re-profile. Confirm each change with a trace comparison.

CTA Background

eRetail Growth
in Mind?

Get tailored technology solutions to scale your retail business online

Request A QuoteArrow
Mail

Subscribe to
Stay in Know

Stay ahead with insights, trends, and brand success stories from the world of Digital Commerce.

Codilar team at work
USA
Australia
Singapore
KSA
UAE
Oman
Indonesia
India

Build. Optimize. Grow.

With world's leading digital commerce agency.

Full Name*
Official Email*
Mobile No*
Company Name*
Select Services
Message

Want our latest stories
sent straight to your inbox?