All posts

Software license management: a guide for small IT teams

· 11 min read

Quick answer

Software license management keeps one current record of every piece of software an organization pays for: what it is, who uses it, what it costs, who owns the relationship, and when it renews. It becomes a real process the moment renewal dates and seat counts stop being remembered reliably.

Most software license management starts the same way. Someone opens a spreadsheet, lists the twelve tools everyone knows about, adds a column for cost, and saves it somewhere shared. It is genuinely useful for about four months.

Then a renewal lands that nobody expected, at a price nobody agreed to, for a seat count nobody has checked since the year it was bought. The spreadsheet is still there. It just stopped being true, and nothing about it announced that it had.

This guide covers what a license record needs to hold, who has to own each part of it, and the specific point at which a shared file stops being the right tool.

What software license management actually means

The term carries two quite different meanings, and conflating them is why so much of the advice available feels oversized.

License compliance is the enterprise discipline: proving to a vendor during an audit that your deployed installations match your entitlements, reconciling complex metrics like processor cores or named users, and managing true-up exposure across thousands of seats. This is the world of formal software asset management, and it is a real job at real scale.

License administration is the far more common one: knowing what you pay for, who uses it, what it costs, when it renews, and who owns the relationship with the vendor. Most organizations under a few hundred people never face a vendor audit. They face a renewal they forgot about.

Almost every guide on this subject is written for the first problem and sold to people who have the second. If nobody has ever asked you to produce an entitlement position, you are managing a register and a calendar, not a compliance program.

That is not a lesser task. Software is now a recurring operating cost that renews automatically whether or not anyone is paying attention, which makes it structurally different from the hardware sitting on desks.

The four questions a license record has to answer

A register earns its place by answering these reliably, months after anyone remembers the details:

  1. What is it, and what does it do for us? Enough that someone can decide whether it is still needed without opening the vendor's website.
  2. Who uses it, and how many seats did we buy? The gap between those two numbers is where most wasted spend lives.
  3. What does it cost, on what cycle? Per seat or as a lump sum, monthly or annually, and what it has actually cost since you started paying.
  4. When does it renew, and who owns that conversation? A renewal date with no named owner is a date nobody acts on.

Notice that only the second question is about licenses in the technical sense. The other three are ordinary record keeping, which is why this so often ends up unowned: it is nobody's specialty and everybody's problem.

The four ways money leaks

Working backwards from what goes wrong is a faster way to design the record than starting from a template.

Renewal by surprise. An annual contract renews at a date nobody tracked, often with a price increase, and the cancellation window has already closed. This is the single most expensive failure, because the money is gone before anyone knows there was a decision to make.

Paying for people who left. Someone departs, their accounts get closed, and the seat they occupied stays on the invoice. Identity offboarding is usually automated; the billing consequence usually is not. We covered why that gap persists in how to automate employee offboarding without losing the equipment.

Duplicate tools. Two departments buy overlapping products eighteen months apart because there was no list to check first. Nobody is at fault, and it is only visible when the charges sit next to each other.

Orphaned subscriptions. The person who signed up has left, the card on file belongs to a former manager, and no one knows the login. These are usually small and remarkably persistent — a cheap tool nobody questions for four years can quietly cost more than an expensive one bought last quarter.

Each of these is a record-keeping failure rather than a negotiation failure. None of them requires a compliance program to fix.

The two kinds of software, and why the split matters

Before building a register, it helps to know that a good portion of your software probably manages itself already.

Directory-managed licenses. Where licenses are assigned through directory groups, the platform handles assignment and reclamation for you. Microsoft's group-based licensing works this way: a license attaches when someone joins the group and is removed when they leave it. Google Workspace and comparable platforms behave similarly. For these, the directory is authoritative, and duplicating seat-by-seat assignment into a spreadsheet creates a second copy that will disagree with the first.

Vendor-invoiced subscriptions. Everything else. The design tool one team uses, the transcription service, the monitoring product, the niche thing that arrived with a contractor and stayed. These live in a vendor's own billing system, are known only to whoever set them up, and appear on a card statement once a year.

The second category is where the register earns its money. What you need for the first is the total cost and the renewal date; what you need for the second is everything, because nothing else knows.

Treating both identically is the most common design mistake. It produces a document that is laborious to maintain in the places where it is redundant, and thin in the places where it is the only record that exists.

What the record should hold

Keep the fields tied to a decision someone will actually make:

Field Why it earns its place
Name and vendor Identity, and who to contact
Category Lets you group spend and answer "what do we pay for security?"
Internal owner The person who decides at renewal. Without this, nothing else works
Billing type Recurring, one-time purchase, or free — free tools still matter at audit
Cost and interval Monthly, quarterly, or annually, per seat or lump sum
Seat count Purchased quantity, to compare against actual use
Contract term and end date The date that drives the renewal decision
Who or what it is assigned to People, a location, or a specific asset
Change history What was paid before the last two price rises

That last row is the one most spreadsheets lose. When a price changes, the natural action is to overwrite the old number, which destroys the history that would have let you see a pattern of increases. The current price is a fact; the sequence of prices is an argument at renewal.

The renewal calendar is the actual product

If you build only one thing, build this.

A renewal calendar is a forward-looking list of every contract end date, with a named owner and a decision deadline set before the cancellation window closes. Not the renewal date — the date by which someone must decide, which for an annual contract with a thirty-day notice period is a month earlier than the date on the invoice.

This is the part a spreadsheet handles worst. A date in a cell does not do anything. It does not surface itself sixty days out, it does not notify the person responsible, and it does not distinguish a renewal that is three weeks away from one that is three quarters away. Someone has to remember to open the file and read it, which means the control depends on the memory it was supposed to replace.

A minimum viable version: every subscription over a threshold you choose has a contract end date, a named owner, and a task assigned to that owner with a due date ahead of the notice deadline. That is the whole mechanism. Everything else in license management is refinement.

When a spreadsheet is genuinely enough

For fifteen subscriptions, one person who signs off on all of them, and no seat-based pricing, a shared file is a reasonable answer and switching costs more than it saves.

The signals that it has stopped working are specific rather than aesthetic:

  • More than one person adds software, so the file is no longer authoritative.
  • A renewal has already been missed, or renewed at a price nobody reviewed.
  • You cannot answer "what did we pay for this two years ago?" without finding old invoices.
  • Seats are bought per user and nobody knows the current utilization.
  • The people who own subscriptions change more often than the subscriptions do.

Those are the same signals that apply to any register that has outgrown a file — we set out the general version in signs you've outgrown an asset spreadsheet. Software just reaches them faster, because it renews on its own.

How AssetCenter fits

AssetCenter records subscriptions alongside the assets, people, and locations they relate to, in the same system of record described in what IT asset management is.

A subscription is created under a category you define — there are none out of the box, so you set up the ones that match how you buy, whether that is Software, ISPs, and Security or something specific to your industry. Each subscription takes a billing type of Subscription, Lifetime Purchase, or Free. A recurring subscription records the bill start date, payment interval of monthly, quarterly, yearly, or an up-front lump sum, the cost as either a lump sum or calculated per license, and the license quantity. Contract details hold a term of one to five years with start and end dates. The adding subscriptions page covers the fields in order.

Three things follow from that record:

Change history is preserved rather than overwritten. Recording a price rise or a seat increase through Update Billing writes it to the subscription's timeline instead of replacing the old figure. The Recurring Subscription Cost report then shows total cost to date built from those events, so a subscription whose price rose in July reflects what you actually paid across each period, not today's price applied backwards.

Renewals surface before they arrive. The dashboard carries an expiring contracts card with a look-ahead you choose, and a to-do created on a subscription can be assigned to a named person with a due date, which raises a notification for them and appears on their own to-do list. That is the renewal calendar described above, with the reminder attached to the record rather than to somebody's memory.

Utilization has a number. Because subscriptions are assigned to people, locations, or assets, the dashboard's deployed versus available subscriptions card shows active licenses against unused ones for the categories you select.

What it does not do is worth stating plainly, because the SaaS management category is full of products that do. AssetCenter does not discover shadow IT, connect to SSO or expense systems to find software you did not tell it about, monitor login activity to identify unused seats, reclaim licenses automatically, or run procurement approvals. It is a maintained register with a renewal calendar and a cost history — accurate because someone records changes, not because it watches your network. If your problem is that you do not know what you are paying for, a discovery platform is the right category. If your problem is that you know and cannot keep it straight, this is.

Where to start

Do not begin by building the complete register. Begin with one billing cycle.

  1. Pull twelve months of card and bank statements and mark every recurring software charge. This is the only step that reliably finds the orphaned subscriptions, because they exist nowhere else.
  2. Sort what you find by annual cost and take the top ten.
  3. For each, record the vendor, the real cost, the renewal date, and a named internal owner. Four fields.
  4. Set a decision task for each owner, dated ahead of the notice period rather than on the renewal date.
  5. Only then work down the list, and add the fields from the table above as they become useful.

The ordering matters. Teams that start by designing the perfect schema usually stall before the first renewal is caught, and the whole point is to catch that renewal. A register with four fields and real owners beats a comprehensive one nobody maintains.

For where subscriptions sit alongside hardware, people, and locations in a single operational record, AssetCenter for IT teams covers the scope. IT asset lifecycle management sets out the same ownership and evidence question across the hardware lifecycle, where the stages are longer but the failure is identical: a handoff nobody recorded.

Jeremy Francis, Founder & CEO, AssetCenter

By Jeremy Francis

Founder & CEO, AssetCenter

Keep reading