Dzone iconDzoneSep 1, 2026 ~1 min source read

Building a Zero-Cost Daily Job Alert Pipeline on GitHub Actions

I needed a job to run once a day, remember what it did yesterday, and cost nothing to operate. So I pushed the whole thing onto GitHub Actions and used a JSON file committed back to the repo as the database.

Building a Zero-Cost Daily Job Alert Pipeline on GitHub Actions

Share this story

Send the public story page.

Useful takeaways from this story.

I needed a job to run once a day, remember what it did yesterday, and cost nothing to operate.

So I pushed the whole thing onto GitHub Actions and used a JSON file committed back to the repo as the database.

It has now run 139 times in production on the free tier, tracking just over 1,000 records, and the operating bill is still zero.

Building the complete brief

The page is ready to read now. The fuller skim-friendly version will appear here automatically.

The useful part

I needed a job to run once a day, remember what it did yesterday, and cost nothing to operate. So I pushed the whole thing onto GitHub Actions and used a JSON file committed back to the repo as the database. It has now run 139 times in production on the free tier, tracking just over 1,000 records, and the operating bill is still zero.

How it works

  • Here is the part that took the most thought: keeping state across runs that are, by design, completely stateless.

Details worth keeping

The obvious answer is a small VM with cron, or a Lambda plus DynamoDB. I did not want to pay for either, and I did not want a server to patch. "The daily digest the pipeline sends, with new postings badged."

Keep reading in the app

Open the app view to save this story, compare related coverage, and continue from the same source.

Open in app