Overview
Credit Tracker automatically tracks “use it or lose it” statement credits from premium credit cards by scanning your Tiller transaction data.
The problem: Cards like the Amex Platinum and Chase Sapphire Reserve now come with a dizzying array of credits - monthly streaming credits, quarterly dining credits, semi-annual shopping credits, annual travel credits - each with different reset schedules. Missing even one $25/month credit means leaving $300/year on the table.
The solution: This tracker matches transaction descriptions to detect when credits post, tracks them against their reset periods, and shows you what’s been captured, what’s remaining, and what’s expiring soon.
Installation
Steps:
-
Open your Tiller spreadsheet
-
Go to Extensions > Apps Script
-
Delete any existing code in the editor
-
Copy the entire contents of
src/CreditTracker.gsfrom the GitHub repo and paste it -
Save the project (Ctrl+S / Cmd+S)
-
Close the Apps Script editor
-
Refresh your spreadsheet (the page, not the data)
-
Click Credit Tracker > Full Setup / Reset from the new menu
-
Authorize the script when prompted
Two new sheets will be created: Credits Config and Credits Tracker.
Setup
-
Add your cards: Click Credit Tracker > Add Card from Template… and select from the 9 included templates (Amex Platinum, Chase Sapphire Reserve, etc.) or use Add Custom Account for other cards.
-
Match accounts: In the Credits Config sheet, select the Tiller Account dropdown for each card and choose the account name exactly as it appears in your Transactions sheet.
-
Set anniversary dates: For cards with anniversary-based credits (like CSR Travel Credit), enter the date you opened the account in the Anniversary column.
-
Adjust detection patterns: If a credit isn’t being detected, check your transaction descriptions and update the Detection Pattern to match.
-
Refresh: Click Credit Tracker > Refresh Dashboard to populate the tracker.
Usage
Day-to-day, the tracker updates automatically when you refresh:
-
Check the dashboard to see which credits you’ve captured and what’s remaining
-
Watch the “Expiring Soon” section for credits approaching their reset date
-
Review the YTD summary to see total value captured across all accounts
-
Run Refresh Dashboard after adding new cards or changing configuration
The tracker handles Monthly, Quarterly, Semi-Annual, and Annual reset schedules, with support for both calendar-year and account-anniversary based resets.
Permissions
Yes - feel free to copy, use, and modify this workflow. The project is MIT licensed.
Notes
Included card templates: Amex Platinum, Amex Business Platinum, Amex Gold, Chase Sapphire Reserve, Chase United Club, Delta Reserve, Marriott Bonvoy Brilliant, Hilton Aspire, Citi Strata Elite.
Detection patterns: The templates include placeholder detection patterns based on common credit descriptions. You may need to adjust these to match exactly how credits appear in your transactions. Check your actual transaction descriptions after a credit posts and update the pattern accordingly.
What it tracks: This tracker is specifically for statement credits that appear as positive line items on your credit card statement. It does not track benefits that are applied elsewhere (like Uber Cash loaded to the Uber app, or hotel credits applied at checkout).
FAQ
Q: Why isn’t a credit being detected?
A: The Detection Pattern must match text that appears somewhere in your transaction description. Check your actual transactions to see the exact wording and update the pattern in Credits Config.
Q: Can I track credits from cards not in the templates?
A: Yes! Use Credit Tracker > Add Custom Account to add any card, then manually add credits in the Credits section of the config sheet.
Q: What if I have custom column positions in my Transactions sheet?
A: Update the Tiller Settings section in Credits Config to match your column layout (Date, Amount, Account, Description columns).
Q: Can I track the same credit type across multiple cards?
A: Yes, each credit is tied to a specific account, so you can have “Dining Credit” on multiple cards and they’ll be tracked separately.





