CronCanary DocsPricingOpen app
← Integration guides

Monitor a GitHub Actions scheduled workflow

GitHub silently disables scheduled workflows on inactive repos and skips runs under load. A dead-man's-switch catches it.

Add a ping step

Store your check URL as a repo secret (CRONCANARY_URL), then ping at the end of the job:

name: nightly on: schedule: - cron: "0 4 * * *" jobs: run: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - run: ./scripts/nightly.sh # ping only if all previous steps succeeded - run: curl -fsS "$CRONCANARY_URL" env: CRONCANARY_URL: ${{ secrets.CRONCANARY_URL }}

Report failures too

- name: report failure if: failure() run: curl -fsS "${{ secrets.CRONCANARY_URL }}/fail"

Tip: set the check's grace generously — GitHub's scheduled runs can be delayed several minutes under load.


Ready to wire this up? Create a free check — 20 checks, all alert channels, no card.