SaaS Spend Auditor
Finds the seats nobody uses and the renewal nobody is watching
- 8hard rules
- Things it must never do, enforced in every run
- 5handover rules
- Conditions where it stops and gives the work to a person
- 13output fields
- A structured result, not a paragraph you have to re-read
- ≤6steps per run
- Bounded work: at most 4 tool calls, enforced by the runtime
Read-only by design. This agent has no path to sending, spending, publishing or committing anything. Where that limit is the product, removing it would remove the reason to trust the output.
Overview
Software is one of the largest controllable costs in most companies and the one nobody owns. Tools were bought by individual teams on individual cards, each below the threshold that would have triggered a review, and the aggregate is enormous.
Three failures, all quiet. Licences billed for people who left or never logged in — a seat costs the same whether or not anyone opens it, and no vendor will mention it. Auto-renewal on a date nobody watches, so the decision point passes without anyone knowing it was a decision; by the time finance sees the charge, the next year is committed. And overlap: three tools doing the same job, bought by three teams, none of whom knew the other two existed.
A spreadsheet does not solve this because the spend is spread across card statements, invoices and an identity system, and the answer needs all three read together. That reading is the product.
What comes back is a renewal calendar with notice windows and the last date to act, a per-tool list of paid seats against active users, the overlaps, and the tools nobody has any record of approving. It cancels nothing — a cancelled tool someone depends on costs more than the licence.
Benefits
You stop paying for people who left
The most common finding, and the easiest to fix.
Renewals become decisions
Rather than charges you discover afterwards.
One tool instead of three
Consolidation you could not see before because nobody had the list.
What it does
Paid seats against actual logins
A seat is billed whether or not anyone opens it, and no vendor is going to raise it with you.
Every renewal, with its notice window
Not the renewal date — the last date you can still act. That is the number that decides whether you have a choice.
Finds overlapping tools
Three products doing one job, bought by three teams who did not know about each other.
Surfaces unapproved software
Spend with no owner and no approval record. Often also a data question, not only a cost one.
Ranks by what is actually recoverable
A seat you can drop at renewal is real. One locked in for eleven months is not, and it says so.
Cancels nothing
A tool cancelled out from under someone who depends on it costs far more than the licence saved.
What this changes
What this changes about your week
- It takes over
- Building the software inventory from card statements, invoices and an identity system.
- Done today by
- IT and finance separately, neither holding the whole picture.
- How often
- When somebody notices the total.
- Typical manual effort
- Days of reconciliation, out of date the week it is finished.
Why IT & Service Management in particular. Most contracts renew silently unless cancelled inside a notice window, so the decision point passes without anyone knowing it was a decision.
Runs unattended
Started by you or by an event, and it finishes on its own. Nothing waits for someone to be at a desk.
The same standard every time
The two-hundredth item is held to the bar the first one was. Consistency is the part people cannot sustain.
It cannot act on its own
SaaS Spend Auditor has no path to sending, spending or committing. That limit is why its output is safe to act on.
How it runs
This agent runs server-side through the PROMIVO runtime. Each run is logged step by step and every tool call is permission-checked before it executes.
- 1InputValidated against the agent input schema
- 2Modelclaude-sonnet-5 with automatic fallback
- 3Toolsextract_structured_data
- 4PermissionsRuns READ actions automatically; anything higher waits for approval
- 5OutputStructured result matching the output schema
- 6LoggingTokens, duration and every step recorded
Demo
Demo dataIllustrative sample output, abridged.
Input
{
"tools": [],
"asAtDate": "2026-09-02",
"currency": "USD",
"inactivityWindowDays": 90
}Output
{
"escalate": true,
"overlaps": [
"Three products cover project tracking at 61,000 combined, used by three teams. None of the teams knew the other two existed."
],
"disclaimer": "An analysis of your own records against the 90-day window you set. Nothing has been cancelled, renewed or changed, no vendor has been contacted, and spend locked into a current term is reported separately because it is not available to save.",
"noUsageData": [
"Two tools have no login export, so seat findings exclude them entirely rather than estimating."
],
"inactiveSeats": [
{
"seats": 22,
"vendor": "Design suite",
"annualValue": 18480
}
],
"recoverableNow": 14400,
"renewalCalendar": [
{
"vendor": "Design suite",
"renewsOn": "2026-11-01",
"actByDate": "2026-10-02",
"daysToAct": 30,
"annualCost": 42000
}
],
"escalationReason": "A 42,000 renewal closes its notice window in 30 days, and a tool holding customer call recordings has no owner or approval.",
"lockedInThisTerm": 61000,
"noOwnerOrApproval": [
"A transcription tool at 7,200 a year has no owner and no approval record, and it holds recordings of customer calls. That is a data question before it is a cost one."
],
"seatsHeldByLeavers": [
"9 seats across 4 tools are still billed for people who have left. 14,400 a year, and none of it needs a decision — only an action."
],
"inactivityWindowUsed": 90,
"recoverableAtRenewal": 18480
}Requirements
Integrations
No integrations required.
Before you start
- Software spend: vendor, amount, billing period, renewal date, notice period
- Paid seats per tool
- Last login per user, where you have it
- Current staff list
- Requires the All-Access plan or higher
Use cases
Quarterly software review
Seats, renewals and overlap in one pass.
A cost reduction target
Ranked by what can actually be cancelled this quarter.
After headcount changes
Every seat still billed for someone who has gone.
Security and data review
Which tools hold company data with no approval behind them.
Pricing
All-Access
Billed monthly through your PROMIVO subscription. Cancel at any time.
Runs consume your plan allowance for agent executions and tokens. See plan limits
FAQ
Will it cancel subscriptions?
No. Cancelling a tool someone quietly depends on costs far more than the licence. It produces the list, the deadline and the saving; a person decides.
What counts as an unused seat?
You set the window — commonly no login in 60 or 90 days. It reports against the window you chose and states it, rather than applying a rule of its own and calling it a finding.
What if we do not have login data?
Then it says so for those tools rather than guessing. Renewal windows, overlap and unapproved spend are still visible without it; seat usage is not, and pretending otherwise would produce a saving that does not exist.
Reviews
Reviews open once customers have run this agent.
Need this agent to work differently?
Tell us what to change and our team will scope a customised version for your business.
Customize this agent