Why tracking setups fail

Almost everyone who sets up release tracking abandons it, and the failures are remarkably consistent. Too many sources, so the volume exceeds what anyone will read. Notifications for everything, so alerts stop meaning anything. And no defined action, so even the items that do get read produce nothing.

These compound. Volume causes alert fatigue, alert fatigue causes muting, muting causes the setup to become invisible, and an invisible setup is indistinguishable from no setup — except that it produces a false sense of coverage, which is worse.

The fix is unglamorous: watch fewer things, route them by urgency rather than by source, and decide in advance what each kind of item makes you do.

Start from consequences, not from interest

The instinct is to subscribe to everything interesting. This is the root error, because interest is unbounded and attention is not. The better starting question is: what would it cost me to find out about this late?

Run that question over your actual dependencies and a short list emerges quickly. A security fix for an internet-facing service: expensive to miss, measured in hours. A framework major version: mildly expensive, measured in months. A new release from a project you admire but do not use: costs nothing, ever.

Most people's honest list has fewer than twenty entries, and the majority of those need weekly attention rather than immediate alerting. That is a far smaller problem than the one they were trying to solve.

  • Immediate — actively exploited vulnerabilities in software you expose. Interrupt-worthy.
  • Daily — security releases for your operating systems, browsers and primary runtime.
  • Weekly — version updates for direct dependencies, platform changelogs, deprecation notices.
  • Quarterly — end-of-life dates, support windows, certification and compliance deadlines.
  • Never — releases from projects you do not use. Interesting is not a tier.

Route by urgency, not by source

The standard mistake is one channel per source: a feed for this project, an email for that vendor, a notification for a third. It scales badly and it puts a critical patch and a minor point release in the same visual weight because they came from the same place.

Route by tier instead. Everything in the immediate tier goes to a channel that interrupts you, and nothing else is ever allowed in it — the value of that channel is entirely in its emptiness. Daily items go to something you check once, at a fixed time. Weekly items go to a list you read in one sitting. Quarterly items go on a calendar with a reminder.

This means a single source can feed several channels, which is correct: a browser vendor publishes both routine releases and emergency patches, and those belong in different tiers regardless of sharing an origin.

Define the action before you subscribe

For every source you add, write down what you will do when something arrives. If the answer is 'read it', that is not an action and the source belongs in a weekly digest at best.

Real actions are specific: apply the patch within a day, open a ticket, check whether the deprecated parameter is used anywhere, add the date to the migration plan. The point of writing it down is that it exposes the sources where there is no action — and those are usually the majority of what people subscribe to.

A source with no defined action is not necessarily worthless, but it is entertainment rather than infrastructure, and it should be filed accordingly. The mistake is letting entertainment share a channel with things that have deadlines.

Prune on a schedule

Watchlists decay. Dependencies get removed, projects get abandoned, priorities move, and the list quietly fills with things that mattered two years ago. Volume creeps up, signal drops, and the setup degrades without any single decision causing it.

A quarterly prune fixes this and takes about ten minutes. For each entry, ask whether you still use the thing and whether anything you received about it in the last quarter led to an action. Two consecutive quarters of nothing is a strong signal to demote or remove.

Removing sources feels like losing coverage. It is the opposite: a list you read is worth more than a longer list you skim, and the entries you remove are by definition the ones that were producing nothing.

Watch the item, not the announcement

A final structural point. Most tracking is set up around announcement channels — a blog, a newsletter, a social account — and those are the least durable part of any project. Blogs get migrated, newsletters get discontinued, accounts get abandoned while the project continues shipping perfectly well.

Watching the artefact rather than the announcement is more robust. Repository release tags, package registry versions, official version endpoints and published lifecycle pages all keep working when the communications channel goes quiet, and they are the sources of truth that the announcements were derived from anyway.

This also solves the silence problem. If you watch an announcement channel, a project that stops posting looks identical to a project that stopped releasing. If you watch the releases themselves, you can tell the difference — and a dependency that has genuinely stopped releasing is something you want to notice.

Categories this guide applies to

More guides