Most finance leads discover their SaaS spend is 25–35% waste the first time they run a real audit. The number is always higher than they expect because SaaS purchasing is distributed — product buys tools on a credit card, sales buys tools on a PO, three engineers expense tools on personal cards and get reimbursed in expense reports. Nobody has the full picture. This 7-step playbook walks through the exact process we ran at three portfolio companies in Q1 2026 that freed a combined $840,000 in annual SaaS spend. One company had 180 tools. Another had 47. Both had significant waste.
Step 1: Pull the ground truth from every source
The most common audit mistake is starting with your software inventory list or a vendor management platform. They are both incomplete. Pull from four sources and reconcile afterward:
- Corporate card processor (Brex, Ramp, Stripe Issuing, Amex): Export 12 months of transactions. Filter by MCC code 7372 (software) and 7379 (computer services) plus any recurring charges above $50 that do not map to a known vendor.
- Accounts Payable / ERP: Pull invoices by vendor category. Catch annual contracts paid via wire or ACH that do not show on cards.
- SSO provider (Okta, JumpCloud, Google Workspace): Export every SAML/OIDC application. This is your canonical list of tools that IT knows about. Compare against the card export — the delta is shadow IT.
- Expense reimbursements: Query your expense tool (Expensify, Concur, Ramp) for recurring individual charges above $20/month in the software category. This is where the personal-card shadow stack hides.
Do not trust vendor management dashboards (Vendr, Zluri, Productiv) as your starting point. They are useful for step 3 onward but they miss anything that has not been loaded into them. The card export is the only source that cannot lie.
Step 2: De-duplicate and normalize to a single vendor list
Merge the four exports into a single spreadsheet. Normalize vendor names — "GOOGLE CLOUD" and "Google LLC" and "Google Workspace" and "GCP" are the same vendor line. Pivot by vendor to see total annual spend. Then pivot by department/cost center to see which teams are the heaviest buyers.
What you will consistently find: at least two teams paying for the same observability or security tool on separate annual cycles with no awareness of each other. At the three companies we audited: one had both DataDog and New Relic ($140k combined annual), one had Notion and Confluence ($44k combined), one had four separate video hosting tools across four product lines ($67k combined). These are easy wins — consolidate to one and recover the full cost of the duplicate.
Tag every line with: vendor name, annual cost, department, renewal date, and contract type (month-to-month, annual, multi-year). You are building the source of truth you should have had from day one.
Step 3: Map every tool to its contract terms and renewal window
Pull the actual contracts (from DocuSign, your legal drive, or the vendor portal) and log the auto-renewal clauses. Most enterprise SaaS auto-renews with a 30–60 day cancellation notice window. If you miss that window, you are paying for another year.
Flag anything renewing within 45 days — those negotiations start today, not when the renewal notice arrives. Build a shared calendar with renewal dates for every contract above $500/month and assign an owner. The renewal date is your leverage date; after it passes you have zero. The best negotiation conversations happen 60–90 days before renewal when the vendor still believes you might leave.
Step 4: Quantify actual usage — the number that ends the argument
For every tool costing more than $500/month, pull weekly active users from the admin panel. Most enterprise SaaS tools expose this: Slack has workspace analytics, Google Workspace has Admin Reports, Notion has analytics under Settings → Analytics, ClickUp has Workload view usage. If a tool does not expose usage data and the vendor will not provide it, that is itself a data point.
Our rule of thumb: anything under 30% weekly active seat utilization is on the chopping block. At one company, we found a $36,000/year design tool with 12 licensed seats and 2 weekly active users. The tool was bought for a project 18 months earlier and never cancelled. That is a common story, not an edge case.
For per-seat tools, calculate the actual cost-per-active-user: ($annual_contract / active_seats_used). When that number hits 3x the list price per seat, you have a problem worth acting on immediately.
Step 5: Stack-rank by BATNA — negotiate from leverage, not goodwill
BATNA (Best Alternative To a Negotiated Agreement) determines how much leverage you have in every renewal conversation. Build a simple two-column assessment for each tool:
- Switch cost: How painful is migration? High (years of data, deep integrations, retraining) vs. Low (CSV export, two-week migration, equivalent free tier exists).
- Alternative quality: Is there a credible free or cheaper alternative? High (PostHog replaces Amplitude, Cal.com replaces Calendly) vs. Low (Salesforce has no credible cheap replacement for enterprise CRM at scale).
Tools with low switch cost and high alternative quality are your strongest negotiating positions. Tools with high switch cost and low alternative quality are where you accept the vendor's terms and focus energy elsewhere. Prioritize the former — that is where you can credibly walk away and the vendor knows it.
The four tactics that consistently cut 15–30% on renewals: (1) multi-year commit for an upfront discount, (2) consolidation (move two tools onto one vendor's platform in exchange for a bundle price), (3) downgrade-and-reactivate (cancel the premium tier, move to free, use the savings to justify reactivating at a lower cost six months later — works on month-to-month tools), and (4) the exit email.
The exit email is the highest-leverage single action in SaaS negotiations. Send it to your account manager 60 days before renewal: "We have completed our vendor review and we are planning not to renew [TOOL] due to [price / usage / alternative]. We will begin migration on [DATE]." You do not need to be certain you will leave — you need to give the vendor a reason to offer you a real deal. Most account managers have 20–30% discount authority they will not use until they receive this message. We have seen this letter recover $15,000–$80,000 in a single renewal cycle.
Step 6: Execute the negotiation — scripts and timing
The negotiation call follows a consistent structure once you have done steps 1–5. Open with data, not emotion: "We have 14 active users on a 35-seat contract. We are paying $X effective cost per active user. We need to right-size this." Most vendors will respond by moving you to a usage-based or seat-reduction option. If they will not, you move to the exit conversation.
Specific tactics by tool type:
- Over-seated annual contracts: Request a mid-term seat reduction. Most vendors will resist but will offer a credit toward the next renewal. Accept the credit.
- Month-to-month tools: Offer to commit annual in exchange for 20–30% off. Month-to-month pricing is the rack rate; every vendor discounts for commitment.
- Multi-year contracts: Counter-offer a two-year at a 15% discount with a price cap on year two. The price cap matters more than the discount — it protects you from 20% renewal increases.
Step 7: Institutionalise the 90-day review cycle
A one-time audit recovers waste that has already accumulated. A recurring audit prevents accumulation. Build a simple quarterly process: update the vendor list, re-pull usage data for anything above $500/month, flag renewals in the next 90 days, and review any new shadow IT that appeared since the last cycle.
Tools that help maintain this: Ramp and Brex both have vendor management features that flag new recurring charges automatically. Zluri and Torii are purpose-built SaaS management platforms that pull from SSO and card data and alert on unusual spending. If you are above $500k in annual SaaS spend, a dedicated SaaS management platform at $15–25k/year pays for itself in the first quarter.
Run this audit once properly and you will free 20–30% of your SaaS budget. Keep the 90-day cycle and the waste does not come back. The typical portfolio company we work with recovers $150–400k in the first audit and then holds the line at 5–8% waste on a running basis. That is the difference between a finance function and a finance strategy. See the SaaSTweaks Stack Builder to model your consolidated stack, and browse current deals for better pricing on tools you have already decided to keep.