Skip to content

Series · 7 parts Published July 18, 2026

Certification expiry tracker

A small system that holds the expiry date of every certificate, licence and ticket your staff need, reads new ones from a photograph, and starts chasing the right person at the right lead time for that kind of renewal. It cannot book a course and never claims somebody is qualified. Seven posts on the same system — one diagram at a time — with a cost breakdown and an engineering reference at the end.

  1. 01

    A certification expiry tracker on AWS for a few dollars a month

    The whole system on one page — a reader, a register and a chaser — and the detail that makes it work: the lead time belongs to the certification, not to the calendar.

  2. 02

    How a certificate gets read

    Reading a laminated card photographed at arm’s length, why the certification type is matched rather than read freely, and the date ambiguity that causes almost every error.

  3. 03

    How the certification register holds history

    Why a renewal appends rather than overwrites, how a gap between cards is recorded honestly, and the after-the-fact question the register is really built to answer.

  4. 04

    How a renewal gets chased

    Working backwards from the expiry by a lead time that fits the certification, the four-step escalation ladder, and what happens on the day a ticket actually lapses.

  5. 05

    How the compliance view answers

    The two questions a compliance view has to answer fast, the honesty line it does not cross, and the one statistic that says whether the lead times are set right.

  6. 06

    What the certification expiry tracker costs

    About $2 a month. One Bedrock read per card is the only line that grows; the queue, the table, the mail and the storage are rounding errors. Plus the three ways the bill could surprise you.

  7. 07

    Engineering reference: the certification expiry tracker architecture

    Same system, drawn purely for engineers. Service names, region, Lambda inventory, IAM scopes, the schemas and the exact model id.

What is a certification expiry tracker?
A small serverless system that records every certificate, licence and ticket your staff hold, extracts the expiry date from a photograph of the card, and chases renewal at a lead time appropriate to that certification. It records what it was shown; it never asserts that somebody is qualified.
Why not just a spreadsheet with dates?
A spreadsheet is exactly the right data model and it is the reminder side that fails. Nobody opens it on the right Tuesday, and a certificate that expires quietly is found out at a site gate. This adds the chasing, and the reading, to the spreadsheet you already should have.
Why different lead times?
Because renewals take wildly different amounts of time. A first-aid certificate is a one-day course you can book next week; a medical for a vocational licence can take three months. A single thirty-day reminder is useless for one and premature for the other.
Does it prove somebody is qualified?
No, and it says so. It records a photograph of a card and a date read from it. Verifying a certification against the awarding body is a different job with a different level of assurance, and pretending otherwise would be worse than not tracking at all.
What does it cost to run?
A couple of dollars a month for a workforce of any size a small business has. See part six.
All posts