Every few years somebody in finance gets curious, and that curiosity lands on engineering’s desk. Ours landed in March, as a spreadsheet with 84 rows and one shared company card number at the top of every one. The request was simple: confirm these are all real, all needed, and all still ours to pay for.
We gave ourselves two weeks. It took four, and the findings said more about how we worked than about how we spent.
What 84 subscriptions actually looked like

The list had the usual shape at first glance: cloud hosting, observability, a CI plan, design tools, the on-call pager. Underneath that sat a long tail of one-seat tools bought by one engineer for one project in one quarter, most with annual renewals nobody had circled. Three of them charged twice a month. One had not charged at all in a year and then billed for fourteen months in a single week when its billing system recovered from what their status page called an incident.
The duplicates were the expensive lesson. Two monitoring tools ran side by side for eleven months because one team moved to the newer one and forgot to cancel the old one. Four licenses of a design tool sat assigned to people who had left the company. A staging database plan had quietly grown to production size because someone ran load tests against it and nobody owned its budget line.
None of this was fraud. It was the natural sediment of a team that ships fast and trusts its people to buy what they need. The total was just bigger than anyone expected, and every line had a name behind it that nobody could check without asking around. We also found the quiet renewals, the ones nobody remembers approving because the same card has paid them since the team was six people.
Why shared cards make the problem worse

One card number across a team means every charge arrives without context. The statement says an amount and a vendor name, and the vendor name is often a holding company three steps removed from the tool you actually use. Reconciliation becomes archaeology. You are not managing spend at that point; you are investigating it after the fact.
The fix we landed on was boring and structural. Every subscription gets its own virtual card, issued to one named owner, with a monthly ceiling and a category label that matches the budget line. When a project ends, the card dies with it, and the charge either stops or screams immediately because the card is closed. The audit stops being a yearly event and becomes a monthly glance.
The part that surprised us

Here is the piece I did not expect. We had moved most of the company’s treasury into stablecoins a year earlier, so every card charge came with a conversion step behind it, and the spread was invisible until we measured it. When we rebuilt the card setup we also moved to a stablecoin corporate card with per-seat limits, which made the funding side as explicit as the spending side. Charges settle against balances we can see, and the monthly close went from a negotiation with three spreadsheets to one export.
I went into the project thinking it was a cost exercise. The cost win was real, somewhere around eighteen percent of the annual total. The bigger win was that every tool now has an owner and a ceiling, and asking “do we still need this” has a one-minute answer instead of a two-week one.
The rule that stuck
Our rule now: a tool without an owner and a card does not get bought. The purchase path runs through one place, the card is issued with the project, and the card expires when the project does. New hires learn it in their first week because it is easier than explaining the spreadsheet.
If your statement is currently a pile of names and amounts, the audit is worth a sprint. Not for the money, though the money is there. Do it because the list tells you how your team actually works, and the gaps in it are usually the first visible sign of projects nobody owns anymore. Ours took four weeks and paid for itself before the first canceled renewal landed.