Cron Expression for Every Minute
Run a cron job every minute using the expression * * * * *. This is the most frequent standard cron schedule, executing a task 60 times per hour.
Expression
* * * * * Every minute
Use Cases
- • Health-check pings to verify a service is alive
- • Polling a queue or inbox for new messages
- • Updating a real-time dashboard cache
- • Monitoring disk or memory usage
Code Examples
Crontab
# Every minute
* * * * * /path/to/your/script.sh GitHub Actions
name: Scheduled Job
on:
schedule:
- cron: '* * * * *'
jobs:
run:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: echo "Running Every Minute" systemd Timer
[Unit]
Description=Every Minute timer
[Timer]
OnCalendar=*-*-* *:*:00
Persistent=true
[Install]
WantedBy=timers.target Tips
- ✓ Avoid long-running tasks that may overlap with the next execution
- ✓ Use a lock or mutex to prevent duplicate runs
- ✓ Consider using every 5 minutes instead to reduce server load
- ✓ Log execution times to detect tasks that exceed one minute
Frequently Asked Questions
What does * * * * * mean in cron?
Each asterisk represents a field: minute, hour, day of month, month, and day of week. An asterisk means "every possible value," so * * * * * runs every minute of every hour of every day.
Is running a cron job every minute safe?
It depends on the task. Lightweight health checks are fine, but heavy database queries or API calls every minute can overload a system. Always ensure the task finishes within 60 seconds.