Cron Expression for Every Quarter
Run a cron job on the first day of each quarter using 0 0 1 1,4,7,10 *. Executes on January 1, April 1, July 1, and October 1.
Expression
0 0 1 1,4,7,10 * At 00:00 on the 1st of January, April, July, and October
Use Cases
- • Generating quarterly financial reports
- • Running quarterly performance reviews
- • Archiving quarterly data snapshots
- • Triggering quarterly compliance audits
Code Examples
Crontab
# At 00:00 on the 1st of January, April, July, and October
0 0 1 1,4,7,10 * /path/to/your/script.sh GitHub Actions
name: Scheduled Job
on:
schedule:
- cron: '0 0 1 1,4,7,10 *'
jobs:
run:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: echo "Running Every Quarter (Quarterly)" systemd Timer
[Unit]
Description=Every Quarter (Quarterly) timer
[Timer]
OnCalendar=*-*-* *:*:00
Persistent=true
[Install]
WantedBy=timers.target Tips
- ✓ Months 1,4,7,10 correspond to Q1, Q2, Q3, Q4 start dates
- ✓ Adjust months for fiscal year if it does not start in January
- ✓ Run at business hours: 0 9 1 1,4,7,10 * for 9 AM on quarter start
- ✓ Only 4 executions per year, so test thoroughly
Frequently Asked Questions
How do I schedule a quarterly cron job?
Use 0 0 1 1,4,7,10 * to run at midnight on the first day of January, April, July, and October. Adjust months for your fiscal year.
Can I run at the end of each quarter instead?
Use 0 0 31 3,6,9,12 * for March, June, September, December. Note that June and September have 30 days, so use 0 0 28-31 3,6,9,12 * with a last-day check.