Credit Card Benefits Organizer
Dashboard to track and maximize credit card benefits across 1000+ cards. Features usage tracking, benefit reminders, and personalized recommendations.
TL;DR: TL;DR: I built a dashboard that helps cardholders organize, track, and maximize benefits across multiple credit cards. Features 1000+ card database, usage tracking for annual credits, and benefit reminders. Built with Next.js 15 and Supabase.
The Problem
If you have multiple credit cards, you're probably leaving money on the table:
- Annual credits expire unused ($300 travel credit? Forgot about it.
- Rotating categories change quarterly but who remembers to switch?
- Each card has different perks scattered across dozens of PDFs
- No unified view of what benefits you actually have
I had 5 cards and was consistently forgetting to use perks worth $1,000+/year.
My Approach
I built a personal dashboard that:
- Aggregates all cards I own into a virtual wallet
- Lists every benefit with category, frequency, and reset dates
- Tracks usage of trackable benefits (annual credits, quarterly bonuses)
- Reminds me when benefits are about to reset
The database includes 1000+ cards with structured benefit data, so users just select which cards they own rather than manually entering perks.
Architecture
Credit Card Benefits Organizer - Architecture Diagram
Key Features
- 1000+ Card Database: Major issuers (Chase, AmEx, Citi, Capital One, Discover)
- Benefit Categories: Cashback, Travel, Protection, Credits & Perks
- Usage Tracking: Track consumption of annual credits and monthly bonuses
- Frequency Support: Monthly, quarterly, semi-annual, yearly, one-time benefits
- Reset Day Tracking: Know exactly when benefits refresh
- Favorites: Star your most important benefits for quick access
- Apply Links: Direct links to card applications
- Card Images: Official artwork from issuer CDNs
Results & Metrics
| Metric | Value |
|---|---|
| Cards in Database | 1,000+ |
| Benefit Categories | 4 main types |
| Tracking Periods | Monthly, Quarterly, Yearly |
| Issuers Covered | Chase, AmEx, Citi, Capital One, Discover, more |
| Data Fields per Card | 15+ |
| Benefits per Card | 5-20 average |
What I Learned
The hardest part was keeping card data fresh. Credit card issuers constantly update benefits, change fee structures, and launch new cards. My initial approach of manual data entry didn't scale.
I built a scraping pipeline with multiple scripts:
comprehensive-chase-scraper.js- Detailed benefit extractionbatch-sync-cards.mjs- Bulk import from JSONupdate-chase-images.js- Keep card images current
The database schema was also tricky. Benefits have different reset schedules (monthly vs yearly), and tracking usage requires understanding which "period" a benefit applies to:
-- Usage period formats:
-- Monthly: 'YYYY-MM' (e.g., '2025-12')
-- Quarterly: 'YYYY-Q1' through 'YYYY-Q4'
-- Yearly: 'YYYY' (e.g., '2025')
If I were to expand this, I'd add automated benefit verification by scraping issuer pages periodically and flagging changes.
Frequently Asked Questions
What problem does Credit Card Organizer solve?
It prevents you from leaving money on the table. Most people with multiple credit cards forget to use annual credits, miss rotating category bonuses, or don't know what perks their cards even offer. This dashboard consolidates everything in one place.
What technologies power this project?
Next.js 15 for the frontend, Supabase PostgreSQL for the database with Row-Level Security, react-hook-form with Zod for form validation, and PostHog for analytics.
How is the card data collected?
A combination of manual curation and automated scraping. I built Python and JavaScript scripts that extract benefit data from issuer websites, normalize it into a consistent schema, and batch-import into Supabase.
Frequently Asked Questions
More Projects
View allBuilt by Abhinav Sinha
AI-First Product Manager who builds production-grade tools. Passionate about turning complex problems into elegant solutions using AI, automation, and modern web technologies.