S

Subscription Auditor Agent

Finds all recurring charges across credit cards, bank statements, and app stores with ROI analysis and cancellation scripts

AgentClipticspersonal financev1.0.0MIT
0 views0 copies

Subscription Auditor Agent

A thorough subscription discovery and analysis agent that scans credit card statements, bank transactions, and app store receipts to build a complete inventory of your recurring charges. Provides ROI analysis for each subscription based on usage frequency, generates cancellation scripts, and tracks your total recurring spend with projected annual savings from cuts.

Supported Platforms & Integrations

PlatformSetup MethodAuth TypeNotes
Chase / BofA / CitiCSV or OFX exportLocal fileParses credit card and checking account statements
Apple App StoreReceipt exportLocal fileIdentifies iOS app subscriptions and renewals
Google PlayPurchase history exportLocal fileIdentifies Android app subscriptions
PayPalTransaction CSV exportLocal fileCatches subscriptions paid via PayPal
AmazonOrder history CSVLocal fileIdentifies Amazon Subscribe and Save and digital subs
Google SheetsService accountOAuth2Maintains a living subscription inventory spreadsheet

When to Use This Agent

  • Use this when your credit card bill has charges you do not recognize and suspect forgotten subscriptions
  • Use this when you want a complete picture of every recurring charge across all payment methods
  • Use this when you want to reduce monthly expenses by identifying subscriptions with low ROI
  • Use this when you signed up for free trials and lost track of which ones converted to paid
  • Use this when you share streaming or family plan subscriptions and want to audit who uses what
  • Use this quarterly to prevent subscription creep from gradually inflating your expenses
  • Consider alternatives when you need real-time transaction monitoring — use your bank's alert system
  • Consider alternatives when you need to dispute fraudulent charges — contact your bank directly

Agent Persona

You are a sharp-eyed financial analyst who specializes in finding hidden recurring charges. You are thorough, methodical, and candid about waste. You present every subscription with its cost, usage evidence, and a clear keep/cut recommendation — but always defer the final decision to the user. When you find significant potential savings, you highlight them prominently. Your tone is professional and direct: the numbers speak for themselves.

Quick Start

# ~/.claude/agents/subscription-auditor-agent.yaml statement_sources: - path: ~/Finance/chase_credit.csv type: credit_card name: "Chase Sapphire" - path: ~/Finance/bofa_checking.csv type: checking name: "BofA Checking" - path: ~/Finance/paypal_transactions.csv type: paypal name: "PayPal" lookback_months: 3 currency: USD app_store: apple usage_data_source: screen_time output: google_sheets spreadsheet_id: "your-spreadsheet-id" history_file: ~/.subscriptions/audit_history.json

First Run Example

claude agent subscription-auditor-agent --full-audit

Expected Output

Subscription Auditor — Full Audit Report
==========================================

Scanning 3 statement sources across 3 months...
Detecting recurring charge patterns...

FOUND: 19 active subscriptions across all payment methods

--- SUBSCRIPTION INVENTORY ---

| # | Service          | Monthly   | Annual    | Payment    | Last Used   | ROI    |
|---|------------------|-----------|-----------|------------|-------------|--------|
| 1 | Netflix          | $15.49    | $185.88   | Chase CC   | Yesterday   | HIGH   |
| 2 | Spotify Family   | $16.99    | $203.88   | Chase CC   | Yesterday   | HIGH   |
| 3 | iCloud+ 200GB    | $2.99     | $35.88    | Apple      | Daily       | HIGH   |
| 4 | Adobe CC (All)   | $54.99    | $659.88   | Chase CC   | 3 days ago  | MEDIUM |
| 5 | ChatGPT Plus     | $20.00    | $240.00   | Chase CC   | Yesterday   | HIGH   |
| 6 | GitHub Copilot   | $10.00    | $120.00   | BofA       | Daily       | HIGH   |
| 7 | Gym Membership   | $49.99    | $599.88   | BofA       | 12 days ago | MEDIUM |
| 8 | NY Times Digital | $17.00    | $204.00   | Chase CC   | 2 weeks ago | LOW    |
| 9 | Headspace        | $12.99    | $155.88   | Chase CC   | 68 days ago | LOW    |
|10 | Coursera Plus    | $49.00    | $588.00   | PayPal     | 45 days ago | LOW    |
|11 | Dropbox Plus     | $11.99    | $143.88   | PayPal     | 90+ days    | LOW    |
|12 | LinkedIn Premium | $29.99    | $359.88   | Chase CC   | 30 days ago | LOW    |
|13 | Grammarly Pro    | $12.00    | $144.00   | Chase CC   | 5 days ago  | MEDIUM |
|14 | Amazon Prime     | $14.99    | $179.88   | BofA       | Weekly      | HIGH   |
|15 | Hulu             | $7.99     | $95.88    | Chase CC   | 3 weeks ago | LOW    |
|16 | Disney+          | $7.99     | $95.88    | Chase CC   | 6 weeks ago | LOW    |
|17 | YouTube Premium  | $13.99    | $167.88   | BofA       | Daily       | HIGH   |
|18 | 1Password Family | $4.99     | $59.88    | Chase CC   | Daily       | HIGH   |
|19 | Domain Renewal   | $1.50     | $18.00    | BofA       | N/A (auto)  | KEEP   |

--- FINANCIAL SUMMARY ---

  Total monthly spend: $355.85
  Total annual spend: $4,270.20

  By ROI category:
    HIGH (keep):    $101.44/mo — 8 subscriptions
    MEDIUM (review): $116.98/mo — 3 subscriptions
    LOW (cut):      $137.43/mo — 7 subscriptions

--- RECOMMENDATIONS ---

  Immediate cancellation candidates (LOW ROI, unused 30+ days):
    Headspace:       $12.99/mo (not opened in 68 days)
    Coursera Plus:   $49.00/mo (no activity in 45 days)
    Dropbox Plus:    $11.99/mo (not accessed in 90+ days)
    LinkedIn Premium: $29.99/mo (no logins in 30 days)

  Potential monthly savings: $103.97
  Potential annual savings: $1,247.64

  Downgrade candidates:
    Adobe CC: You use Photoshop and Illustrator only. Switch to
    Photography Plan ($9.99/mo) — saves $45/mo ($540/year)

  Review candidates:
    Hulu + Disney+: You watch both infrequently. Consider rotating:
    subscribe to one for 2 months, cancel, switch to the other.
    Savings: ~$96/year

  TOTAL POTENTIAL ANNUAL SAVINGS: $1,883.64

Shall I generate cancellation links and scripts for the flagged
subscriptions?

Conversation Flow

Audit Start
    |
    v
Statement Scanning -----> Parse all CSV/OFX sources
    |
    v
Recurring Detection ----> Pattern match for monthly/annual charges
    |
    v
App Store Cross-ref ----> Match with app store subscriptions
    |
    v
Usage Analysis ---------> Cross-reference with Screen Time / last login
    |
    v
ROI Classification -----> HIGH / MEDIUM / LOW for each subscription
    |
    v
Recommendations --------> Cancel / Downgrade / Keep with reasoning
    |     (user reviews each recommendation)
    v
Cancellation Scripts ---> Links, steps, and retention counter-offers
    |
    v
Savings Report + Export -> Google Sheets or local markdown

Advanced Configuration

Platform-Specific Setup

Multi-Card Statement Parsing

statement_parsing: date_formats: chase: "MM/DD/YYYY" bofa: "MM/DD/YYYY" amex: "DD MMM YYYY" amount_handling: chase: negative_is_charge bofa: positive_is_charge amex: positive_is_charge description_column: chase: 2 bofa: 1 amex: 3

Screen Time Usage Cross-Reference

usage_analysis: source: ios_screen_time export_path: ~/ScreenTime/export.json match_subscriptions_to_apps: Netflix: "Netflix" Spotify: "Spotify" Headspace: "Headspace" Coursera: "Coursera" inactivity_threshold_days: 30 low_usage_threshold_minutes_weekly: 15

Full Options Reference

ParameterTypeDefaultDescription
statement_sourceslist[]Paths and types for bank/card statement files
lookback_monthsint3Months of statements to analyze
currencystringUSDCurrency for cost calculations
app_storestringnoneapple or google for app subscription detection
usage_data_sourcestringnonescreen_time, manual, or none
outputstringterminalterminal, markdown, google_sheets, or csv
spreadsheet_idstringnoneGoogle Sheets ID for inventory export
history_filestring~/.subscriptions/audit_history.jsonPath for audit history
include_annual_chargesbooltrueDetect yearly subscriptions in addition to monthly
include_cancellation_linksbooltrueGenerate direct cancellation URLs when known
retention_offer_tipsbooltrueInclude tips for getting retention discounts
family_plan_analysisboolfalseBreak down per-person cost for shared plans
free_trial_trackingbooltrueFlag subscriptions that converted from free trials
price_increase_detectionbooltrueAlert when a subscription price increased

Core Concepts

ConceptPurposeHow It Works
Pattern DetectionFinds recurring charges automaticallyScans 3 months of transactions for same-merchant charges at regular intervals
ROI ClassificationPrioritizes what to cutCombines cost with usage frequency: high cost + low usage = low ROI
Cross-Platform MatchingCatches all subscriptionsMatches charges across credit cards, bank accounts, PayPal, and app stores
Retention ScriptsSaves money without cancelingProvides talking points and scripts for negotiating lower prices with providers
Savings ProjectionMotivates action with real numbersCalculates monthly and annual savings if all recommended cuts are executed

Architecture

Statement Files (CSV/OFX from multiple sources)
                    |
                    v
          +--------------------+
          | Transaction Parser |----> Normalizes all formats
          +--------------------+
                    |
                    v
          +--------------------+
          | Recurring Detector |----> Pattern matches monthly/annual charges
          +--------------------+
                    |
                    v
          +--------------------+     +------------------+
          | Usage Analyzer     |---->| ROI Classifier   |
          | (Screen Time/login)|     | (cost vs usage)  |
          +--------------------+     +------------------+
                    |                        |
                    v                        v
          +--------------------------------------+
          | Recommendation Engine                |
          | (cancel / downgrade / keep / rotate) |
          +--------------------------------------+
                    |
                    v
          +--------------------+     +------------------+
          | Cancellation Guide |     | Savings Report   |
          | (links + scripts)  |     | + History Log    |
          +--------------------+     +------------------+

Workflow Examples

Scenario 1: Free Trial Conversion Detection

Input: Credit card statement shows new $14.99 charge from a service

Conversation:
  Agent: "I found a new recurring charge: MasterClass at $14.99/mo.
  This first appeared on Feb 15. Did you sign up for a free trial?"
  User: "Yes, I forgot to cancel before it converted."
  Agent: "You have been charged once. Many services offer a refund
  within the first billing cycle. Want me to generate the cancellation
  request including a refund ask?"

Output:
  Cancellation email template generated with refund request
  Direct cancellation URL: masterclass.com/account/subscription
  Note: Set a calendar reminder for future free trials
  Added MasterClass to watch list for the next statement

Scenario 2: Streaming Service Rotation Strategy

Input: 4 streaming services totaling $45.46/month, usage data shows
       only 1-2 are actively used per month

Conversation:
  Agent: "You are paying for Netflix ($15.49), Hulu ($7.99),
  Disney+ ($7.99), and HBO Max ($13.99) simultaneously. Screen Time
  shows you averaged 6 hours on Netflix and 2 hours on HBO Max this
  month. Hulu and Disney+ had zero usage."

Output:
  Rotation Strategy Proposal:
  Month 1-2: Keep Netflix + HBO Max (your most-used)
  Month 3-4: Cancel HBO, subscribe to Disney+ (catch up on backlog)
  Month 5-6: Cancel Disney+, subscribe to Hulu
  Annual cost with rotation: $357 vs $545 (saving $188/year)
  Setup: Cancel Hulu and Disney+ today, set calendar reminders
  to rotate every 2 months

Scenario 3: Corporate vs Personal Audit

Input: User has work-reimbursable subscriptions mixed with personal

Conversation:
  Agent: "I see subscriptions that might be work-related. Let me
  help you separate them for expense reimbursement."
  Walks through each subscription to classify as personal or work

Output:
  Personal subscriptions: 12 totaling $187/mo
  Work-reimbursable: 5 totaling $128/mo
    - GitHub Copilot ($10), Grammarly ($12), LinkedIn Premium ($30),
      Zoom Pro ($13.99), Notion Team ($8/seat)
  Action: Submit $128/mo for reimbursement
  Annual money recovered: $1,536 (if not already reimbursed)
  Generated expense report template with subscription details

Best Practices

  1. Scan all payment methods, not just one card — Subscriptions spread across credit cards, debit cards, PayPal, and app stores. A partial audit misses the charges hiding on your secondary payment methods.

  2. Run the audit quarterly, not just once — New subscriptions creep in through free trials, impulse sign-ups, and price increases. A quarterly audit catches them before they accumulate into significant waste.

  3. Try the retention call before canceling — Many services (especially cable, gym, and premium software) offer discounts to keep you. The agent generates retention scripts with specific discount requests to try before fully canceling.

  4. Track price increases proactively — Netflix, Spotify, and others raise prices annually. The agent flags when a subscription costs more than the previous period so you can decide if the increase is worth it.

  5. Separate essential from aspirational — Be honest about which subscriptions you use regularly versus which ones represent the person you wish you were. Headspace at $13/month is only worth it if you actually meditate.

Common Issues

  1. Some charges appear with cryptic merchant names — Banks sometimes show payment processors instead of service names. The agent maintains a mapping of common processor names to actual services, but unknown ones are flagged for manual identification.

  2. Annual subscriptions are missed in 3-month scans — Extend lookback_months to 12 for the first audit to catch annual charges. After that, quarterly scans with 3-month windows will catch most recurring patterns.

  3. App store subscriptions not visible in bank statements — Apple and Google bundle multiple subscriptions into single charges. Use the app store export integration to identify individual app subscriptions within those bundled charges.

Privacy & Data Handling

All financial data is processed entirely on your local machine. Bank and credit card statements are read from your specified file paths and parsed in memory only — no copies are made or cached. Subscription inventory and savings projections are stored in ~/.subscriptions/audit_history.json on your local filesystem. No banking credentials are stored or used by this agent — it works exclusively with downloaded statement files. Google Sheets export writes only to your own spreadsheet using your own service account. Screen Time usage data is read locally and not retained beyond the current session. You can delete all audit history by removing the ~/.subscriptions/ directory at any time.

Community

Reviews

Write a review

No reviews yet. Be the first to review this template!

Similar Templates