Analyzes transaction history to identify recurring expenses, unused subscriptions, duplicates, and optimization opportunities like cancellations or downgrades with estimated annual savings.
How this skill is triggered — by the user, by Claude, or both
Slash command
/openaccountant-skills:expense-optimizerThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Analyze your transaction history to identify recurring expenses, unused subscriptions, duplicate services, and optimization opportunities. Surfaces actionable savings by detecting charges you may have forgotten about or services you could downgrade.
Analyze your transaction history to identify recurring expenses, unused subscriptions, duplicate services, and optimization opportunities. Surfaces actionable savings by detecting charges you may have forgotten about or services you could downgrade.
transaction_search — detect recurring charges by pattern and frequencyanomaly_detect — flag subscriptions with price increases or irregular chargesspending_summary — identify highest-spend recurring categoriestransaction_search to find all transactions from the last 6 months.| Service | Monthly Cost | Frequency | Last Charged | Category |
|---|
anomaly_detect to flag:
| Category | Description | Examples |
|---|---|---|
| Cancel | Services you likely don't use | Gym memberships with no related spending nearby, streaming services you haven't watched |
| Downgrade | Premium tiers you could reduce | Phone plan with unused data, cloud storage over 50% empty |
| Negotiate | Services with competitive alternatives | Internet, insurance, cell phone |
| Consolidate | Overlapping services | Multiple streaming, multiple cloud storage, multiple music services |
| Switch | Cheaper alternatives exist | Bank fees (switch to no-fee), high-interest debt (refinance) |
| Keep | Good value, actively used | No action needed |
To find recurring expenses manually:
SUBSCRIPTION, RECURRING, MONTHLY, ANNUAL, RENEWAL=SUMIFS(Amount, Description, "*NETFLIX*", Date, ">="&TODAY()-180) / 6
This gives the average monthly cost for Netflix over the last 6 months.Current: =INDEX(Amount, MATCH(1, (Description="*NETFLIX*")*(Date=MAX(IF(Description="*NETFLIX*",Date))), 0))
Original: =INDEX(Amount, MATCH(1, (Description="*NETFLIX*")*(Date=MIN(IF(Description="*NETFLIX*",Date))), 0))
=MonthlyCost * 12npx claudepluginhub openaccountant/skillsAudits transaction history for recurring subscriptions, calculates monthly/annual costs, flags unused ones, and recommends cancellations.
Generates detailed expense reports with category breakdowns, top vendors, trends, insights, and period comparisons from Norman Finance transactions.
Clusters transaction history by merchant and cadence to detect recurring charges, dormant subscriptions, and amount drift. Useful for subscription audits, bill calendars, or cash-flow forecasting.