spend-optimizer
Complete spend optimization: subscription auditing + credit card rewards maximization.
What This Does
- •Subscription Audit - Find recurring charges, categorize (keep/cancel/investigate), calculate savings
- •Card Optimization - Map charges to optimal credit cards based on reward categories
- •Credit Optimization - Flag services you're paying for that should be FREE via card credits
- •Interactive Reports - HTML dashboards with dispute tracking, notes, and actionable insights
Workflow
Step 1: Get Transaction CSVs
Ask user for bank/card CSV exports. Support multiple cards for full optimization.
Common export sources:
- •Apple Card: Wallet → Card Balance → Export
- •Amex: Account → Statements & Activity → Download
- •Chase: Accounts → Download activity → CSV
- •Mint/Copilot: Transactions → Export all
Important: Request exports from ALL cards for accurate optimization. Note the last 4 digits of each card number.
Step 2: Gather Card Information
Ask user about their credit cards:
What credit cards do you have? For each, I need: - Last 4 digits (for matching to transactions) - Card name (e.g., "Amex Gold", "Chase Sapphire") - Annual fee (if known)
Check credit-cards.md for common card reward structures.
Step 3: Analyze Transactions
Read all CSVs and identify:
Recurring charges:
- •Same merchant, similar amounts, monthly/annual frequency
- •Flag subscription-like charges (streaming, SaaS, memberships)
- •Note charge frequency and total annual cost
Card optimization opportunities:
- •Which card each charge is currently on
- •Which card it SHOULD be on for max rewards
- •Calculate potential rewards gain from moving charges
Credit/perk opportunities:
- •Check credit-cards.md Statement Credits section
- •Flag any service the user is paying for that's covered by a card credit they have
- •Examples:
- •Paying for Disney+ on Chase → Should be on Amex Platinum (free $7/mo credit)
- •Paying for Uber on random card → Should be on Amex Platinum ($15/mo) or Amex Gold ($10/mo)
- •Paying for DoorDash → Should be on Chase Sapphire Reserve (free DashPass + $5/mo)
- •Paying for Adobe → Should be on Amex Business Platinum ($150/yr credit)
- •Paying for cell phone bill → Should be on Amex Business Platinum ($10/mo wireless credit)
Step 4: Categorize with User
For each subscription, ask user to set status:
- •Keep - Intentional, continue paying
- •Cancel - Stop immediately
- •Investigate - Needs decision (unsure, contract trap)
- •Dispute - Never got access, want refund
Ask in batches of 5-10 to avoid overwhelming. Include card optimization recommendation with each.
Step 5: Generate HTML Report
Use template.html to create interactive report:
Header section:
- •Subscription count and total monthly spend
- •Potential annual rewards with optimized card usage
- •Savings from cancelled subscriptions
- •Dispute count and value
Card legend:
- •List all user's cards with color coding
- •Show reward categories for each card
Subscription rows include:
- •Service name and monthly amount
- •Current card (color-coded badge)
- •Optimal card with "OK" or "MOVE" indicator
- •Status dropdown (Keep/Cancel/Investigate/Dispute)
- •Notes field for user comments
- •Frequency (monthly/annual/etc.)
Features:
- •Auto-save to localStorage
- •Export disputes button
- •Privacy toggle (blur names)
- •Collapsible sections
- •Dark mode support
Step 6: Generate Card Optimization Plan
If significant optimization opportunities exist, create card-optimization.html:
- •Card arsenal overview (all cards, fees, reward structures)
- •Spend routing strategy table
- •Action items for card migration
- •Quick reference cheat sheet
- •Monthly checklist
- •ROI summary (fees vs rewards)
Step 7: Help Cancel & Dispute
When user is ready to act:
Cancellations:
- •Check common-services.md for cancel URLs
- •Use browser automation to navigate and cancel if requested
- •Update HTML row status when done
Disputes:
- •Export disputes from HTML report
- •Provide guidance on disputing with card issuer
- •Note: Most cards allow disputes within 60-120 days
Card Optimization Logic
Common Reward Categories
Advertising/Marketing:
- •Facebook, Google, TikTok, Pinterest, LinkedIn ads
- •Best cards: Amex Business Gold (4x), Chase Ink (3x)
Software/SaaS:
- •Shopify, Notion, Adobe, cloud services
- •Best cards: Amex Business Gold (4x), Amex Business Platinum (1.5x on $5K+)
Shipping:
- •ShipBob, UPS, FedEx, USPS
- •Best cards: Amex Business Gold (4x), Chase Ink (3x)
Travel:
- •Flights, hotels, car rentals
- •Best cards: Chase Sapphire Reserve (3-10x), Amex Platinum (5x)
Dining:
- •Restaurants, food delivery
- •Best cards: Chase Sapphire Reserve (3x), Amex Gold (4x)
Internet/Phone:
- •ISP, cell phone, cable
- •Best cards: Chase Ink Preferred (3x)
Category Caps
Many cards have annual caps on bonus categories:
- •Amex Business Gold: $150K per category at 4x
- •Chase Ink: $150K combined at 3x
Track spending against caps and recommend overflow cards.
File Structure
spend-optimizer/
├── SKILL.md # This file
├── assets/
│ ├── template.html # Subscription audit template
│ └── card-optimization-template.html # Card strategy template
└── references/
├── common-services.md # Cancel URLs and tips
└── credit-cards.md # Card reward structures
Privacy
All data stays local:
- •Transaction CSVs analyzed in-session only
- •HTML reports stored on user's machine
- •localStorage for user preferences
- •No data sent anywhere
Tips
For maximum value:
- •Get CSVs from ALL cards (not just one)
- •Look at 6+ months of data for pattern detection
- •Track category cap progress quarterly
- •Update card payment methods for "MOVE" items
- •Set calendar reminders for annual subscriptions
Red flags to surface:
- •Duplicate subscriptions (same service, multiple charges)
- •Price increases - Compare same merchant across months (see Price Increase Detection below)
- •Zombie charges (services no longer used)
- •Trial conversions (free trial → paid)
- •Annual charges - Flag yearly subscriptions with renewal estimates (see Annual Tracker below)
- •Missed credits - Paying for something covered by a card credit (see below)
- •Category cap warnings - Alert when approaching $150K limits (see Cap Tracker below)
Credit opportunities to flag:
Always check if user is paying for any of these on the wrong card:
| If paying for... | Move to this card | Credit value |
|---|---|---|
| Disney+, Hulu, ESPN+ | Amex Platinum | $7/mo FREE |
| Peacock | Amex Platinum | $7/mo FREE |
| Audible | Amex Platinum | $7/mo FREE |
| NYTimes | Amex Platinum | $7/mo FREE |
| Apple TV+ | Amex Platinum | $6.99/mo FREE |
| Walmart+ | Amex Platinum | $12.95/mo FREE |
| Uber/Uber Eats | Amex Platinum | $15/mo FREE |
| Uber/Uber Eats | Amex Gold | $10/mo FREE |
| Grubhub/Seamless | Amex Gold | $10/mo FREE |
| DoorDash | Chase Sapphire Reserve | $5/mo + DashPass FREE |
| DoorDash | Capital One Venture X | $10/mo FREE |
| Instacart | Chase Sapphire Reserve | Instacart+ FREE |
| Adobe Creative Cloud | Amex Business Platinum | $150/yr credit |
| Dell purchases | Amex Business Platinum | $400/yr credit |
| Indeed job posts | Amex Business Platinum | $360/yr credit |
| Cell phone bill | Amex Business Platinum | $10/mo credit |
| Clear | Amex Platinum | $199/yr FREE |
| Equinox/SoulCycle | Amex Platinum | $25/mo credit |
| Global Entry/PreCheck | Multiple cards | $100 credit |
Report format for missed credits:
When flagging a missed credit, show:
⚠️ MISSED CREDIT: You're paying $X.XX/mo for [Service] on [Current Card] → Move to [Credit Card] to get it FREE ($XX/yr savings)
Price Increase Detection
Compare the same merchant across multiple months to catch silent price increases.
How to detect:
- •Group transactions by merchant name (normalize: lowercase, remove extra spaces)
- •For recurring charges, compare amounts month-over-month
- •Flag if current amount > previous amount
Report format:
⚠️ PRICE INCREASE: [Service] went from $X.XX to $Y.YY (+Z%) First seen at new price: [Date] Consider: Is this still worth it at the new price?
Common patterns:
- •Streaming services: Often increase $1-2/mo annually
- •SaaS tools: May increase 10-20% at renewal
- •Annual subscriptions: Harder to notice since you only see once/year
Thresholds:
- •Flag any increase > $1 or > 5%
- •Highlight increases > 20% as significant
Annual Subscription Tracker
Annual charges are easy to forget. Flag them and estimate renewal dates.
How to detect:
- •Look for charges that appear only once in 6-12 months of data
- •Check if amount suggests annual billing ($100+ single charge vs $10 monthly)
- •Look for merchant names containing: "annual", "yearly", or known annual services
Known annual services to watch for:
- •Domain registrations (GoDaddy, Namecheap, Google Domains)
- •Annual software licenses (Adobe, Microsoft 365)
- •Memberships (Costco, Amazon Prime, warehouse clubs)
- •Professional subscriptions (industry associations)
- •Insurance premiums
- •Accounting software (QuickBooks, FreshBooks)
Report format:
📅 ANNUAL SUBSCRIPTION: [Service] - $XXX/year Last charged: [Date] Estimated renewal: [Date + 1 year] ⏰ Set reminder for [2 weeks before renewal]
In HTML report:
- •Add "Annual" badge to these subscriptions
- •Show estimated renewal date
- •Sort annual subscriptions by upcoming renewal date
Category Cap Tracker
Track spending against bonus category caps to maximize rewards.
Key caps to track:
| Card | Category | Cap | Multiplier After |
|---|---|---|---|
| Amex Business Gold | Each bonus category | $150,000/yr | 1x |
| Amex Blue Business Plus | All purchases | $50,000/yr | 1x |
| Chase Ink Preferred | Combined bonus categories | $150,000/yr | 1x |
| Chase Ink Cash | Office supplies | $25,000/yr | 1% |
| Chase Ink Cash | Internet/phone | $25,000/yr | 1% |
| Chase Ink Cash | Gas/dining | $25,000/yr | 1% |
| BofA Customized Cash | Choice category | $50,000/yr | 1% |
How to track:
- •Categorize each transaction by reward category
- •Sum spending per category per card
- •Calculate percentage of cap used
- •Project when cap will be hit based on monthly average
Report format:
📊 CATEGORY CAP STATUS: [Card Name] Advertising: $87,500 / $150,000 (58%) ████████░░░░ Software: $42,000 / $150,000 (28%) ████░░░░░░░░ Shipping: $12,000 / $150,000 (8%) █░░░░░░░░░░░ ⚠️ At current pace, you'll hit Advertising cap in ~2.5 months → Consider moving overflow to Chase Ink Preferred (3x)
Alerts:
- •🟡 Warning at 75% of cap
- •🔴 Alert at 90% of cap
- •Suggest overflow card when approaching limit
Quarterly review:
- •Q1: Check if on pace to hit caps
- •Q2: Mid-year adjustment if needed
- •Q3: Start planning overflow strategy
- •Q4: Final push to maximize before reset
Cap reset dates:
- •Amex: Calendar year (Jan 1)
- •Chase: Cardmember year (anniversary date)
- •Check card terms for specific reset timing