← All posts
Jun 18, 2026

Never Miss a Warranty or License Expiry Again: Expiration Tracking for MSPs

Weavestream's expiration dashboard surfaces warranty deadlines, software license renewals, and password expirations across all your clients in one colour-coded view — without spreadsheets.

Most MSPs have a spreadsheet somewhere. It’s called something like “Client Warranty Tracker.xlsx” or “Renewals 2024.xlsx” — possibly both, with slightly different data in each. It gets updated when someone remembers, which is usually shortly before or shortly after something important expires. The server warranty that lapsed eight months ago that nobody noticed until the vendor refused to cover a failed drive. The software license that auto-renewed for three seats nobody uses. The firewall whose support contract expired and whose firmware has been frozen ever since.

Expiration tracking is one of those problems that sounds boring until something expensive slips through.

Weavestream has a built-in answer: a unified Expirations dashboard that pulls every deadline from across your client base into one colour-coded view. No spreadsheets. No separate renewal calendar. No chasing technicians to update a shared document.


How It Works: Expiry Tracking on Asset Fields

The foundation is the asset layout system. When you define a field in an asset layout — say, a DATE field called “Warranty Expiry” on your Server layout — you can toggle expiry tracking on that field. Once enabled, any asset record with a date in that field is automatically enrolled in the expiration system.

That’s it. No additional configuration, no webhook to wire up, no separate tool to populate. Every tenant’s assets with an expiry-tracked date field feed into the same dashboard automatically.

Practically, this means you can track whatever matters to your clients:

  • Warranty expiry on servers and workstations
  • Software license renewal dates on per-seat or subscription licenses
  • Hardware refresh cycles for lease-based equipment
  • Support contract deadlines for firewalls, storage arrays, and switches
  • Certificate expiry for anything you’re not already tracking via domain monitoring
  • Purchase anniversary dates you want to review annually

The field types that support expiry tracking are DATE and DATETIME. Both work the same way — once the expiry flag is on, the value surfaces in the dashboard.


The Expirations Dashboard

The Expirations dashboard (/admin/expirations) aggregates every expiry-tracked asset field across all of your tenants into a single table. Each row shows the company name, the asset name, the field name, and the date — and each cell is colour-coded by status:

  • Green — healthy window remaining
  • Amber — approaching expiry
  • Red — already expired

The colour coding means you can triage at a glance. Everything red needs attention now. Everything amber needs to be scheduled. Everything green can wait.

Because the dashboard spans all tenants, you can see cross-client expiration pressure without running separate per-client reports. For an MSP managing 30 clients, this changes the workflow considerably: instead of reviewing each client’s assets individually or maintaining a consolidated spreadsheet, the platform does the aggregation automatically.


Password Expirations Too

Asset fields aren’t the only thing that surfaces in the dashboard. Password records in Weavestream also have an optional expiry date field. When a credential has a date set, it appears alongside your asset expirations in the same view.

This is useful for client accounts that have rotation policies — service accounts set to expire every 90 days, vendor portal credentials with mandatory annual changes, or admin accounts tied to compliance obligations. Setting an expiry date on the credential means the rotation deadline doesn’t live in someone’s head or a reminder on a phone. It lives in the same dashboard where you’re reviewing asset renewals.


The Asset Layout Connection

The expiration tracking feature is only as useful as the layouts you build around it. A few layout configurations worth setting up:

Server layout — Warranty Expiry (DATE, expiry tracking on), Support Contract End (DATE, expiry tracking on), OS Extended Support End (DATE, expiry tracking on). Servers are the highest-stakes renewals: an out-of-warranty server failure with no coverage is an emergency call at 2am.

Workstation layout — Warranty Expiry (DATE), Lease End (DATE). For clients on device leases, a lease-end tracking field means refresh conversations happen before the client calls you to say their laptop won’t turn on.

Software License layout — Renewal Date (DATE, expiry tracking on), Seat Count (NUMBER). For MSPs managing per-seat licenses, a dedicated layout for tracking renewals is a significant upgrade over a shared spreadsheet that lives in someone’s OneDrive.

Network Device layout — Support Contract End (DATE, expiry tracking on), Firmware EOL Date (DATE). Network hardware support contracts are easy to miss and expensive to renew retroactively. Putting this in the expiration system means it gets reviewed.


Why This Beats a Spreadsheet

The honest answer is that a spreadsheet fails in a specific, predictable way: it’s maintained inconsistently, and the maintenance burden scales with the size of your client base in the worst possible way.

With a spreadsheet, adding a new client means updating the spreadsheet. Removing a client means cleaning up the spreadsheet. A technician who sets up a new server has to remember to add it. None of these steps happen reliably under operational pressure, which means the spreadsheet is always somewhat stale.

With Weavestream’s expiration tracking, the discipline is front-loaded into the layout definition. You define once that your Server layout tracks warranty expiry. Every server asset created after that point, by any technician, in any client’s workspace, automatically participates in expiration tracking. The spreadsheet maintains itself.

For MSPs who sync asset data from NinjaOne or Action1, this compounds further: warranty dates from your RMM can be mapped to expiry-tracked fields in Weavestream during integration setup, so your expiration dashboard stays current as devices are discovered and refreshed — without manual data entry.


A Practical Starting Point

If you’re deploying Weavestream or reviewing your current layouts, the minimum viable expiration setup is straightforward:

  1. Open the asset layout editor (Admin → Asset Layouts)
  2. Find your Server (or equivalent) layout
  3. Add or locate the warranty expiry DATE field and toggle Expiry tracking on
  4. Repeat for any other layouts and fields that have renewal implications
  5. Open Admin → Expirations and confirm the entries appear

For existing asset records with populated date fields, the dashboard reflects them immediately. For new assets created after the toggle, they appear as soon as the date is set.

No spreadsheets required.


Weavestream is a free, self-hosted, open-source IT documentation platform for MSPs and IT teams. It runs on Docker and Postgres, and includes asset management, a credential vault, IPAM, domain and SSL monitoring, a client portal, audit logging, and more. Find out more at weavestream.io.

← All posts