f↗fitmysaasBook a call →

Blog · Costs · Updated · By the FitMySaaS team

Software license tracking spreadsheet: free template (2026)

Short answer: A software license tracking spreadsheet needs one row per tool and 16 columns; the core ones are owner, seats paid, seats used, price, renewal date and notice date. Add a "days to renewal" formula and a calendar reminder for each notice date. For a team of 10 to 40 people that covers the basics; it only falls short when you need automatic usage data.

What columns should a software license tracker have?

Copy this header row into Google Sheets or Excel. Each column answers a question you will be asked at renewal time.

Tool,Job,Plan,Owner,Billing cycle,Seats paid,Seats used,Price per seat (month),Monthly cost,Annual cost,Renewal date,Notice date,Days to renewal,Status,Admin login,Notes
Column Example Why it matters
Tool Asana One row per subscription, not per vendor
Job Tasks Shows overlap: two rows with the same job is a flag
Plan Advanced Plans decide limits and price
Owner Ops lead One named person who answers for it
Billing cycle Yearly Yearly plans are harder to shrink mid-term
Seats paid / Seats used 25 / 21 The gap is your unused licenses
Price per seat (month) $24.99 From the vendor pricing page
Monthly cost / Annual cost Formula Seats paid x price, then x 12
Renewal date 2027-03-01 From the vendor's billing page
Notice date Formula The last day to cancel or shrink
Days to renewal Formula Sort by this every month
Status Keep / Shrink / Merge / Cancel The decision from your last review
Admin login Shared vault entry name Where the login lives, never the password itself
Notes "Seats sold in steps of 5" Billing quirks you would otherwise forget

Never put passwords in the sheet. Point to the entry in your password manager instead.

What does a filled-in tracker look like?

Here are sample rows for a 25-person team. Prices are list price, billed yearly, October 2026, from each vendor's pricing page.

Tool Job Plan Seats paid Seats used Per seat Annual cost
Slack Messages Pro 25 23 $7.25 $2,175
Asana Tasks Advanced 25 21 $24.99 $7,497
Notion Docs Plus 25 14 $10 $3,000
HubSpot Sales Hub CRM Professional 6 5 $90 $6,480
Calendly Scheduling Teams 8 8 $16 $1,536

The Slack row is a good example of why "seats used" matters. Under Slack's Fair Billing Policy, members who haven't used Slack in over 28 days are not billed, so the real cost can be below the sheet's figure. Note that in the Notes column.

How do you set up renewal reminders in the spreadsheet?

Use three formulas and one calendar habit. These work in both Google Sheets and Excel.

  1. Notice date. If the contract needs 30 days' notice, enter =K2-30 (where K is the renewal date). If there is no notice period, use 30 anyway; it gives you time to decide.
  2. Days to renewal. Enter =K2-TODAY(). Sort the sheet by this column at every monthly review.
  3. Next renewal for yearly plans. After a renewal passes, enter =EDATE(K2,12) to roll the date forward a year. Use =EDATE(K2,1) for monthly plans.
  4. Highlight. Add conditional formatting to turn the row red when days to renewal is below 60.
  5. Calendar. Create one event per notice date in a shared calendar, with the owner invited. The spreadsheet only works if someone opens it; the calendar comes to you.

Which renewal rules catch small teams out?

Write these into the Notes column. They change how much a cut actually saves.

Vendor Rule Source
Google Workspace On the Annual/Fixed-Term Plan, removing licenses does not lower your payment until the contract renews Google Workspace help
HubSpot Unassigned seats are still billed; removals apply from the next billing period HubSpot knowledge base
HubSpot Sales Hub and Service Hub Professional add a one-time $1,500 onboarding fee HubSpot pricing for Sales Hub and Service Hub
Asana Seats are sold in steps (2 to 5, then 5 at a time up to 30) Asana pricing
Jira Yearly billing uses flat user bands (1 to 10 users $950 a year, 11 to 15 $1,450, 16 to 25 $2,450) Jira pricing
monday.com Seats are sold in fixed buckets starting at 3 monday.com pricing

The Asana and Jira rules mean removing one or two people may not change the bill at all. Check which step or band you would land in before you count the saving.

When is a spreadsheet not enough?

A spreadsheet tracks what you enter. It does not pull usage data, spot new sign-ups or alert you on its own. That becomes a problem when you have more tools than one person can check in an hour, or when several people buy software on their own cards.

At that point, look at SaaS management software, or reduce the number of rows. Our guide on software consolidation explains how to decide which tools can share a job.

When one system makes more sense

If your tracker shows several rows doing parts of the same job, such as tasks in one tool, docs in another and client records in a third, the cheaper fix may be fewer rows rather than better tracking. The SaaS cost calculator totals your stack at list price in a few minutes. FitMySaaS replaces those rows with one system the team tries free for a week, then runs it for one fixed monthly fee.

Questions

Should we use Excel or Google Sheets?

Use whichever your team already shares files in. Google Sheets is easier when several owners need to update their own rows.

How many days before renewal should we review a subscription?

Sixty to 90 days gives you time to compare options, test an alternative and give notice. For a tool you are sure about, 30 days is enough.

Who should own the tracker?

One person, usually the ops lead or office manager. Each tool still has its own owner who keeps its row up to date.

Should free tools go in the tracker?

Yes, in a separate tab. Free tools can hold customer data and often have admin accounts tied to people who have left.

Add up your SaaS bill →More articles