Free tool
Cron Expression Builder
Build a cron schedule from plain settings and read any existing cron expression back in plain English, with the next run times worked out for you.
The parts that catch people out
The five fields are minute, hour, day of month, month and day of week. A star means every value. A slash sets a step, so */15 in the minute field runs at 0, 15, 30 and 45. A dash sets a range and a comma sets a list.
The trap is using day of month and day of week together. Cron treats them as OR, not AND, so 0 0 1 * 1 runs on the first of the month and on every Monday, not only on a Monday that falls on the first. If you need the AND behaviour you have to test for it inside the script.
On cPanel, remember the job runs as your user with a minimal environment and no PATH you can rely on, so use the full path to PHP and to your script. Also avoid scheduling everything at exactly midnight or on the hour, because every other account on a shared server is doing the same and your job waits in the queue.