Task Scheduling: Automating Recurring Jobs
Run recurring jobs like cleanup and reports using Laravel’s scheduler instead of manual cron scripts.
Daniel Foster
October 27, 2025
3.5k170
Laravel’s scheduler allows you to define cron jobs in code.
## Define schedule
```php
protected function schedule(Schedule $schedule) {
$schedule->command('reports:daily')->dailyAt('01:00');
$schedule->call(fn () => Log::info('heartbeat'))->everyMinute();
}
```
## System cron
```bash
* * * * * php /path/to/artisan schedule:run >> /dev/null 2>&1
```
## Flow
```mermaid
flowchart LR
A[Cron] --> B[schedule:run]
B --> C[Due Tasks]
C --> D[Execute]
```
Scheduling centralizes automation in one place.
In the next tutorial, we will cache data to improve performance.
#Laravel#Scheduler#Advanced