Eager Loading: Fixing N+1 Query Problems
Improve performance by loading related models efficiently using eager loading.
Daniel Wright
November 16, 2025
2.7k63
The N+1 problem happens when Laravel runs one query for a list, then one query per item.
## Problem example
```php
$posts = Post::all();
foreach ($posts as $post) {
echo $post->user->name;
}
```
This can trigger dozens of queries.
## Solution
```php
$posts = Post::with('user')->get();
```
## Comparison
```mermaid
flowchart TD
A[Load Posts] --> B{Eager load?}
B -->|No| C[1 + N Queries]
B -->|Yes| D[2 Queries]
```
Eager loading is essential for scalable applications.
In the next tutorial, we will create reusable query scopes.
#Laravel#Eloquent#Performance#Advanced