Errors / checked October 9, 2026
Hobby accounts are limited to daily cron jobs. This cron expression would run more than once per day.
The error
Vercel deploy output, when vercel.json has a crons entry that runs more than once a day on a Hobby (free) account.
Quick fix
- Change the schedule to once a day (for example 0 9 * * *) and redeploy, if daily is enough. Hobby runs it at some point within that hour, not at the exact minute.
- If you need it more often: remove the crons entry, keep the route, protect it with a CRON_SECRET bearer check, and have an outside scheduler call the route on the schedule you want.
- Or move the project to Vercel Pro, where cron jobs can run once a minute.
Why this happens
Vercel limits Hobby cron jobs to one run per day and fails the deploy for any expression that would fire more often, such as 0 * * * * (hourly) or */30 * * * *.
Other solutions
- Run the job from GitHub Actions on a schedule (minimum every 5 minutes, and runs are often late).
- Call the route from any hosted cron service. RunLater does this every minute on every plan, with retries and a log of each response.
Check a schedule before you deploy it: the cron expression explainer shows the next 10 run times.
Have the URL called on schedule, with retries
RunLater calls your URL on a cron schedule or at an exact time, in your timezone, retries failed calls with backoff and logs each response, so a timeout or a 5xx shows up in a log instead of disappearing.
Start a 14-day trialStarter is $15/month for 250 scheduled requests and 25,000 runs. Cancel before day 14 and you pay nothing.