Cron job
Cron is optional. You need it only if you set TIDEMARK_INGEST=queue or TIDEMARK_RETENTION_DAYS above zero. (Update checks don’t need it: they also run while an administrator is using the app.)
In cPanel, open Cron Jobs and add a job that runs every minute:
* * * * * php /home/you/tidemark/artisan schedule:run >> /dev/null 2>&1What the scheduler runs
Section titled “What the scheduler runs”| Task | When | Condition |
|---|---|---|
Drain the ingest queue (queue:work --stop-when-empty --max-time=50) |
Every minute | TIDEMARK_INGEST=queue |
tidemark:prune |
Daily at 03:15 | TIDEMARK_RETENTION_DAYS is above 0 |
tidemark:check-updates |
Daily, at a minute chosen per installation | TIDEMARK_UPDATE_CHECK is on (the default). Also runs without cron while an administrator uses the app |
cache:prune-stale-tags |
Hourly | Cache store is Redis |
The queue job does not overlap itself, so a slow run never stacks.
Check the PHP binary
Section titled “Check the PHP binary”Some hosts have several PHP versions. If the job fails, use the full path to a PHP 8.3 binary, for example /usr/local/bin/ea-php83.
© 2026 Tidemark · MIT licensetidemarkanalytics.comSource on GitHub These docs set no cookies and run no trackers.