Laravel Tutorials

Fixing Queries & Adding Indexes: From 400 Queries to 4 - Laravel In Practice EP6

Published

▶️ Watch the video tutorial (6 minutes)

Drastically Improving Your Laravel Dashboard Performance - Laravel In Practice EP6

Your dashboard is making over 400 queries, but the fix is simpler than you think. What if I told you that a few strategic changes could reduce those queries to just 4 and slash your response time from 180ms to 40ms?

In this episode of Laravel In Practice, I show you how to eliminate N+1 queries and add strategic database indexes without breaking your clean architecture. You'll learn to fix the top customers method that was generating hundreds of queries using loadMissing() and lookup tables, add composite indexes to frequently queried columns like status and user_id, and use EXPLAIN query plans to verify your optimizations are actually working.

The result? Your dashboard drops from over 400 queries to just 4. That sluggish 187ms load time becomes a snappy 53ms. You'll see exactly how indexes allow SQL to jump directly to relevant rows instead of scanning entire tables, and how to validate these improvements with test routes that measure real performance gains.

This continues our Performance Optimization journey, taking the N+1 problems we discovered with Telescope in Episode 5 and fixing them systematically. No complex rewrites needed - just smart use of loadMissing() to avoid redundant relationship loading and strategic indexes added through a simple migration.

Whether you're debugging a slow dashboard or preventing future bottlenecks, these techniques are essential. You'll understand how to create lookup tables that prevent iteration redundancy, when to use composite indexes for multi-column queries, and how to prove your optimizations work using Laravel's database explain features.

The query optimizations and indexing strategies we implement here achieve a 4.5x performance improvement - and we're just getting started. Next episode, we'll push even further by moving calculations to the database level.

▶️ Watch Episode 6 now →

Harris Raftopoulos photo

Senior Software Engineer • Staff & Educator @ Laravel News • Co-organizer @ Laravel Greece Meetup

Sponsored

laravelcloud logo
Laravel Cloud

Easily create and manage your servers and deploy your Laravel applications in seconds.

Visit Laravel Cloud

The latest

View all →
CPX: The Composer Package Executor for PHP image

CPX: The Composer Package Executor for PHP

Read article
Laravel AI SDK Adds Human-in-the-Loop Tool Approval image

Laravel AI SDK Adds Human-in-the-Loop Tool Approval

Read article
Pest 5 Released With Test Impact Analysis, Agent Verification, and Evals image

Pest 5 Released With Test Impact Analysis, Agent Verification, and Evals

Read article
Queue-SQL: Run Mass Deletes and Updates Across Parallel Queue Jobs image

Queue-SQL: Run Mass Deletes and Updates Across Parallel Queue Jobs

Read article
Blade Formatting in Laravel Pint image

Blade Formatting in Laravel Pint

Read article
Inertia DevTools Is Now on the Chrome Web Store image

Inertia DevTools Is Now on the Chrome Web Store

Read article