← Back to Portfolio

Offer Tracking Design System

Before this initiative, Chase credit card offers weren't visible to customers β€” no tracking UI existed. Building one required months of custom work per offer, and most offers never launched at all. This is the design system that changed that: a framework covering 1,000+ offers, four tracker categories, and a centralized hub that now makes every active offer discoverable in under two taps.

Role Product Designer
Company JPMorgan Chase
Scope 1,000+ Offers Tracked
Timeline 2026 · Ongoing
Design Systems Enterprise UX FinTech Web

This case study uses generalized offer amounts and anonymized account details. Design patterns, frameworks, and the Skim/Dip/Dive taxonomy are my own work.

Confidential Project
This project was completed during my time at JPMorgan Chase and is subject to a non-disclosure agreement. Specific details, metrics, and visuals have been generalized or omitted to protect proprietary information. The work presented represents my contributions and process while respecting confidentiality requirements.
1,000+
Offers tracked β€” from zero
4
Official tracker categories
3
Information tiers
12+
Teams now on one system
01 β€” Overview

From Invisible to Visible

Transforming how millions of customers discover and track their credit card benefits

Before this initiative, most Chase credit card offers simply weren't visible to customers. There was no tracking interface β€” no place to see your new account bonus progress, your annual travel credit balance, or your category spending toward a quarterly cap. If an offer did exist in the system, getting it in front of customers required months of custom design and engineering work, each time from scratch. Teams weren't slow β€” they were stuck. The result was a backlog of dormant offers that never launched, and millions of customers who didn't know what their card was doing for them.

What started as a request to design a few tracker screens revealed the real problem: every team that had attempted to build tracking experiences had done so independently, without coordination. No shared patterns, no shared language, no shared components. The ask wasn't just to design trackers. It was to build the system that would make offer tracking possible at all.

I transformed this tactical project into a strategic design system initiative. The result: a comprehensive tracking framework that established scalable patterns, flexible UI components, and clear interaction models. This system now supports 1,000+ offers across Chase-branded cards and partner platformsβ€”enabling rapid deployment while maintaining consistency.

02 β€” The Problem

Fragmentation at Scale

Why invisible benefits and inconsistent patterns were blocking growth

  • πŸ‘οΈ

    Invisible Value

    Many offers weren't being displayed because no applicable design pattern existed for them. Research showed a strong business case: increased visibility of trackable benefits would drive higher loyalty, engagement, and redemption rates. But without consistent tracking patterns, product teams couldn't launch new offers at scale.

  • 🧩

    Fragmented Ecosystem

    As I designed initial tracker concepts, the scope of the problem became clear. Teams across Chase had independently built tracking interfaces for their specific use casesβ€”welcome bonuses, category caps, statement credits, points balancesβ€”each with different visual treatments, information hierarchies, and interaction patterns. Customers experienced jarring inconsistency depending on which offer they viewed or which partner platform they used.

  • ⚠️

    No Systematic Approach

    Every new offer launch required custom design work. Teams lacked clear guidance on information density, progress visualization, urgency signaling, or when to show what level of detail. Some trackers were too minimal, leaving users confused about requirements. Others overwhelmed users with dense information blocks. There was no shared language or reusable components.

03 β€” The Approach

Building Systems, Not Screens

How I transformed tactical design requests into a strategic framework

Audit First, Design Second

Before designing anything, I mapped every existing tracking attempt across Chase platforms and co-branded partner sites. What I found was clarifying. Teams had built isolated solutions for their specific offers β€” a welcome bonus tracker buried in one part of the app, a statement credit meter in account details, a points balance with no context. Most had never been connected into a coherent user experience. Several had been abandoned mid-launch because the custom design work took too long to justify.

The key finding: teams weren't building different-looking versions of the same thing. They were solving fundamentally different problems β€” earning toward a goal, consuming a limited resource, checking a status β€” with the same undifferentiated component. That's why nothing scaled. Fixing visual inconsistency was secondary. The primary problem was the absence of a conceptual framework that told teams what kind of tracker they were building in the first place.

From Patterns to Framework

The audit exposed a deeper insightβ€”trackers weren't just inconsistent, they lacked conceptual structure. Teams were treating all trackers the same, whether they were progress-toward-a-goal (welcome bonus), consumption-of-a-resource (statement credit), or status-only-reference (points balance).

I created a four-category framework that brought clarity to this complexity, establishing distinct design principles for each tracker type.

The real bottleneck wasn't design quality β€” it was the absence of a shared model. Once teams had a framework to classify offers, the design decisions followed automatically.
β€” Audit insight

This framework became the connective tissue that allowed diverse tracker types to feel cohesive while serving different user needs.

04 β€” The Solution

Skim, Dip, Dive Framework

Layered information that adapts to user intent and context

The Information Layering Approach

A three-tiered framework that balances information density with usability. This approach gives teams a clear, reusable model for structuring tracking experiences based on user intentβ€”from quick status checks to comprehensive analytics.

To solve the information density problem, I created the Skim/Dip/Dive framework β€” a three-tiered system that gives teams clear guidance on what information to show at each engagement level.
β€” Framework insight

The three tiers map directly to surfaces: Skim is designed for overview pages like the card dashboard and Benefits tab β€” surfaces with many competing elements. Dip is for the Tracker Hub itself β€” a card-focused surface where offers are the primary content. Dive is the individual offer detail page, dedicated to a single tracker.

Skim: At-a-Glance Status

Minimal information for quick scansβ€”status indicators, key metrics, and progress bars. Optimized for users who just want to check if they're on track without diving into details.

Dip: Contextual Details

Mid-level information revealing offer terms, deadlines, and progress breakdowns. Designed for users who need clarity on specific requirements without overwhelming detail.

Dive: Comprehensive View

Full transaction history, detailed terms, eligibility criteria, and FAQs. Built for power users and complex scenarios requiring complete transparency.

The Framework in Practice
9:41
3 Sign out
CREDIT CARD (...5545)

$235.57

Current balance

Payment due date Nov 25, 2023
Available credit $3,000.00
Pay card More

New card bonus

Spend $3,000 by Feb 24, 2025 to earn 1 Free Night Award.

$2,000.00 spent $1,000.00 to go
Chase Offers 56

Add deals, shop and get cash back

Quick-scan status
9:41
3 Sign out
Track your progress

New cardmember bonus

32D LEFT

Spend by Feb. 28, 2026

Earn 60,000 bonus points after spending $4,000 in your first 3 months.

$1,680.00 spent $2,320.00 to go

Annual travel credit

Resets Dec. 31, 2025

$300 statement credit on eligible travel each cardmember year.

$145.00 used $155.00 left

5x dining bonus

Through Dec. 31, 2025

5x points on the first $1,500 in dining purchases this quarter.

$975.00 spent 4,875 pts earned
Essential details
9:41
New cardmember bonus

New cardmember bonus

32D LEFT

Spend by Feb. 28, 2026

$1,680 of $4,000 $2,320 to go
Spending goal $4,000.00
Bonus points 60,000 pts
Bonus value $900.00
Days remaining 32 days

WHOLE FOODS MARKET

Apr 22, 2026

$145.23

UNITED AIRLINES

Apr 18, 2026

$432.50

SWEETGREEN

Apr 16, 2026

$32.50

Full analytics & tracking
05 β€” Tracker Categories

Four Types That Scale

From one-size-fits-all to purpose-built patterns

The ecosystem audit revealed that teams were treating all trackers as functionally identical. But a welcome bonus tracker (progress toward earning) has fundamentally different needs than a statement credit tracker (consumption of limited resource) or a points balance tracker (status-only reference). Users needed different information, at different times, with different urgency.

I created a four-category framework that brought conceptual clarity to this complexity. Rather than one-size-fits-all patterns, each category has distinct design principles governing visual treatment, urgency signaling, information hierarchy, and interaction patterns. This framework became the foundation that allowed teams to quickly identify which pattern to use for any new offerβ€”turning an ambiguous design question into a straightforward classification decision.

Spend & Earn Trackers

Track user journey toward earning rewards or reaching spending thresholds. Show accumulation over time with clear finish line.

Use Cases
  • β†’Welcome bonus spend requirements
  • β†’Quarterly category spending caps
  • β†’Milestone/tiered bonus progress

New account bonus

Spend by May 1, 2026

$2,750 spent $2,250 to go

Usage Trackers

Monitor consumption of limited credits or resources. Emphasize what remains and create urgency around expiration to prevent waste.

Use Cases
  • β†’Annual statement credits ($200 airline)
  • β†’Monthly recurring credits ($25 digital)
  • β†’Quarterly partner credits ($75 retail)

Travel credit

$50

remaining

$250 of $300 used

Action Trackers

Track discrete steps or actions toward a benefit or goal. Emphasize what to do next and whether required actions have been completed. Used when earning a benefit depends on specific behaviors, not just spend.

Use Cases
  • β†’New cardholder setup tasks (add to wallet, set up autopay)
  • β†’Activation-required offers (click to enroll before earning)
  • β†’Multi-step account requirements

Set up your account

Add to digital wallet

Enroll in autopay

Make first purchase

Status Trackers

Display current state of benefits, balances, or eligibility without requiring action. Informational reference users check periodically.

Use Cases
  • β†’Points balance and cash value
  • β†’Permanent benefits (lounge access)
  • β†’Always-on category bonuses

Silver Elite Status

ACTIVE

Valid through Dec 31, 2026

06 β€” Pattern Showcase

Skim, Dip, Dive in Action

Production-ready patterns across all four tracker categories

The following examples demonstrate the framework in practice. Each pattern shows how the four tracker categories work across all three information tiersβ€”from quick-scan status checks (Skim) to comprehensive analytics (Dive). Toggle between tiers to see how the layered approach adapts to different user needs while maintaining consistency.

Production-Ready Patterns

These aren't just design conceptsβ€”they're production-ready patterns now deployed across Chase and partner platforms, enabling teams to launch new offers with confidence that the experience will be consistent, scalable, and familiar to customers.

Spend & Earn Trackers

Spend & Earn Tracker

New Account Bonus

Track spending progress toward earning a new account bonus. Customer needs to spend $5,000 by May 1, 2026 to earn the reward.

New account bonus
$2,000
of $5,000
New account bonus
Spend by: May 1, 2026
New account bonus
Spend by: May 1, 2026
Spend $5,000 by May 1, 2026 to earn bonus reward
Requirement $5,000
Days left 120 days
Spend & Earn Tracker

Quarterly Category Bonus

Track quarterly category spending caps. Customer has spent $1,200 toward the $1,500 dining category limit for Q1, earning 6,000 bonus points.

5% Dining bonus
$1,200
of $1,500 cap
5% Dining Category
Q1 2026 β€’ Resets Mar 31
5% Dining Category
Q1 2026 β€’ Resets Mar 31
Earn 5% back on dining purchases up to $1,500 per quarter
Points earned 6,000 pts
Max possible 7,500 pts
Spend & Earn Tracker

Quarterly Goals

Visualize progress across multiple discrete segments. Customer has completed 3 of 4 quarterly goals for Q4 2025.

Quarterly goals
3 of 4 complete
Quarterly goals
Q4 2025 progress
Quarterly goals
Q4 2025 progress
Complete all 4 quarterly goals to earn bonus reward
βœ“
Direct deposit set up
βœ“
Bill pay enrollment
βœ“
10+ debit card transactions
$500+ in qualifying deposits
Quarter ends Dec 31, 2025
Completion reward $50 bonus
Spend & Earn Tracker

Quarterly Cash Back Earnings

Track cash back earned toward quarterly spending cap. Customer has earned $60 of $75 maximum across dining, gas, and grocery categories.

Quarterly cash back
$60
Earned
$15 left to earn
Q4 Cash Back Earnings
5% on $1,500 cap β€’ Q4 2025
$28
$18
$14
Q4 Cash Back Earnings
5% on $1,500 cap β€’ Q4 2025
Earn 5% cash back on up to $1,500 in combined purchases across three categories
Dining
$560 spent
$28
Gas
$360 spent
$18
Grocery
$280 spent
$14
Total spending $1,200 of $1,500
Quarter ends Dec 31, 2025

While spend & earn trackers focus on building toward a goal, usage trackers address the opposite need β€” tracking what's being consumed.

Usage Trackers

Usage Tracker

Annual Travel Credit

Monitor remaining annual travel credit. Customer has used $250 of their $300 credit, with $50 remaining before the January reset.

Travel credit
$50
remaining
$250 of $300 used
Annual travel credit
Resets: Jan 1, 2026
Annual travel credit
Resets: Jan 1, 2026
Use your $300 annual travel credit on eligible purchases
Total credit $300
Days until reset 38 days
Usage Tracker

Monthly Streaming Credit

Track monthly use-it-or-lose-it credit with urgency. Customer has $10 of $20 streaming credit left with only 5 days before it resets.

Streaming credit
$10
remaining
Expires in 5 days
Monthly Streaming Credit
Resets: Jan 1, 2026
Monthly Streaming Credit
Resets: Jan 1, 2026
Use your $20 monthly streaming credit before it expires
Total credit $20
Days until reset 5 days

Not every benefit requires progress tracking. Some benefits are always-on and just need clear status visibility.

Status Trackers

Status Tracker

Premium Card Benefits

Display active card benefits and their current status. Customer has Platinum tier with 5 active perks including lounge access and travel credits.

Platinum
Premium tier
Active Benefits
5 active
Premium Card Benefits
Platinum tier β€’ Active
Lounge Access
Trip Insurance
Concierge
Hotel Status
Premium Card Benefits
Platinum tier β€’ Active since Jan 2024
Priority Pass Lounge Access
Unlimited visits Β· 1,300+ locations
Trip Cancellation Insurance
Up to $10,000 per trip
24/7 Concierge Service
Travel & lifestyle assistance
Elite Hotel Status
Gold tier at major chains
Member since Jan 2024
Annual fee $695
Status Tracker

Priority Pass Access

Display permanent benefit status with usage tracking. Customer has unlimited lounge access with 12 visits used year-to-date.

Priority Pass
UNLIMITED
12 visits this year
Priority Pass Membership
Active β€’ Unlimited access
UNLIMITED ACCESS
1,300+ lounges worldwide
12
Visits YTD
2
Guests included
Priority Pass Membership
Active β€’ Unlimited access
Access 1,300+ airport lounges worldwide with complimentary food, drinks, and Wi-Fi
UNLIMITED ACCESS
1,300+ lounges worldwide
Visits this year 12 visits
Last visit Dec 15, 2025
Most visited PS Premium Lounge - LAX
Status Tracker

Rotating Bonus Categories

Display which bonus categories are currently active. Categories rotate quarterly with new activations taking effect January 1st.

5% categories this quarter
Dining
Gas
Grocery
ACTIVE
Through Dec 31
5% Categories This Quarter
Rotates quarterly β€’ Earn 5% cash back
CURRENTLY ACTIVE
Through Dec 31, 2025
Dining
Gas
Grocery
5% Categories This Quarter
Rotates quarterly β€’ Jan 1 - Dec 31
You're earning 5% cash back in these categories through Dec 31, 2025.
βœ“ CURRENTLY ACTIVE
Earn 5% cash back through Dec 31, 2025
Dining
Restaurants & food delivery
βœ“
Gas stations
Fuel purchases at stations
βœ“
Grocery stores
Supermarkets & grocery
βœ“
Next rotation Jan 1, 2026
Categories refresh Quarterly
Status Tracker

Credit Utilization

Display circular progress for percentage-based metrics. Customer is using 28% of their $10,000 credit limitβ€”within the recommended 30% threshold.

Credit utilization
28%
Excellent β€’ $2,800 used
Credit utilization
As of Dec 26, 2025
28%
Excellent standing
Credit utilization
As of Dec 26, 2025
Keep utilization below 30% to maintain excellent credit health
28%
Excellent standing
Total credit limit $10,000
Recommended max $3,000 (30%)

Multi-tier is a sub-pattern of Spend & Earn: some benefits span multiple levels of achievement, requiring trackers that communicate both current status and what's ahead.

Spend & Earn Trackers: Multi-Tier

Spend & Earn Tracker

Elite Status Progress

Track progress across multiple status tiers with milestone markers. Customer has earned 35,000 points (Gold tier) and needs 15,000 more to reach Platinum.

Elite status
Silver Gold Plat. Diamond
Gold tier β€’ 15k to Platinum
Elite status
Current tier: Gold
Silver
Gold
Platinum
Diamond
Elite status
Current tier: Gold
Earn 50,000 points to reach Platinum tier and unlock exclusive benefits
Silver
Gold
Platinum
Diamond
Current benefits 5 active
Platinum threshold 50,000 points
Spend & Earn Tracker

Tiered Account Bonus

Track progress toward multiple bonus tiers with independent deadlines. Customer missed Tier 1 (May 1 deadline), but has spent $8,000 toward Tier 2 ($10k by Aug 1) and is still eligible for Tier 3 ($15k by Nov 1).

Account bonus
$8,000
of $10,000 Β· Tier 2
$2,000 to go Β· Aug 1
Tiered Account Bonus
$8,000 spent β€’ Next: Aug 1
$5k
10k pts
Missed
$10k
20k pts
Aug 1
Active
$15k
30k pts
Nov 1
Upcoming
Tiered Account Bonus
$8,000 spent β€’ Next tier: Aug 1
Spend $2,000 more by Aug 1 to earn 20,000 bonus points
$5k
10k pts
Missed
$10k
20k pts
Aug 1
Active
$15k
30k pts
Nov 1
Upcoming
Next deadline Aug 1 (45 days)
Max potential 50k pts

When earning a benefit depends on specific behaviors rather than spend, action trackers make the next step obvious and show which required actions are already done.

Action Trackers

Action Tracker

New Cardholder Setup

Track discrete setup steps toward a bonus. Customer has completed 1 of 3 required actions; enrolling in autopay is the next step to unlock 2,500 bonus points.

Account setup bonus

2 STEPS LEFT

Next: Enroll in autopay

Account setup bonus

Complete by Mar. 31, 2026

Earn 2,500 bonus points after completing all three steps.

Add to digital wallet

Enroll in autopay

Make first purchase

Account setup bonus

Bonus 2,500 pts
Steps complete 1 of 3
Complete by Mar. 31, 2026
Days remaining 47 days

Add to digital wallet

Completed Feb 12, 2026

Enroll in autopay

Set up automatic payments from any checking account

Make first purchase

Any purchase of $1 or more

Bonus points post to your account within 8 weeks of completing the final step.

07 β€” The Tracker Hub

One Place for Every Offer

Centralizing all of a customer's trackable benefits into a single, card-aware destination

The Skim/Dip/Dive framework and four tracker categories solved the design problem β€” how to present any individual offer consistently. But a bigger UX problem remained: customers had no single place to see ALL their available offers, bonuses, and benefits across their cards. Welcome bonuses, statement credits, category spending caps, and portfolio offers were scattered across different screens and features in the app. A customer with multiple Chase cards had no way to get a unified view of what was available to them.

The Tracker Hub is a dedicated destination within the Chase mobile app that aggregates every trackable offer across a customer's card portfolio into one view. At the top, an account selector lets users switch between their cards. Below, a tab system organizes offers by status β€” Active, Earned, and Expired β€” each rendered using the Skim/Dip/Dive patterns from the design system. The hub supports complex offer types including bundled offers (multiple requirements grouped under one reward), multi-tier bonuses (spend thresholds that unlock progressively larger rewards), and transaction + spend hurdle combinations.

The hub needed to handle significant complexity without overwhelming users. I designed it with progressive disclosure at its core: the default view shows Skim-level summaries for all offers (progress bars, key metrics, deadlines), with tap-to-expand into Dip and Dive detail. A tab-based navigation separates offer statuses so users can quickly orient to what matters most. The account selector was critical β€” many customers have 2-3 Chase cards, and the hub needed to feel like "your card's offers" rather than a generic offers page. Skeleton loaders handle async data fetching, and error states were designed per-offer-type so a single API failure doesn't collapse the entire view. This was the first time Chase had a single, card-aware destination for all trackable offers. Previously, that view simply didn't exist.

System Complexity

The Tracker Hub supports 6+ distinct offer types β€” from simple single-hurdle spend bonuses to complex bundled offers with multiple concurrent requirements. Each type uses the standardized tracker components from the design system, but the hub's architecture handles the orchestration: which offers to show, how to prioritize them, how to handle partial data, and how to surface urgency when deadlines approach.

Before / After

Drag to see what the system changed

The same three offers, rendered the way teams used to ship them β€” and the way the design system renders them now.

Before β€” fragmented patterns
9:41
3
β€Ή My Offers
WELCOME BONUS
60,000 pts
$1,680.00 OF $4,000.00 Β· 32 DAYS LEFT
Annual travel credit
$145.00 of $300.00 used
View ›
Travel category
Earn up to 6,000 bonus points on travel
40%
Accounts Pay & transfer Plan & track Benefits Explore
After β€” unified system
9:41
3 Sign out
Track your progress

Choose account

Chase Sapphire Reserve card CREDIT CARD (...4321)
Active Earned Expired

See the terms of your offer for details.

Spend bonus

Spend by: Dec. 31, 2025

Earn an Elite Status Level Up of one tier to 35K Status or higher when you spend $50,000 during a calendar year.

$8,100.30 spent $41,899.70 to go

Annual bonus offer

Spend by: Dec. 31, 2025

Spend $100,000.00 to earn a Aeroplan Priority Rewards Voucher.

$5,100.30 spent $94,899.70 to go

New card bonus

Spend by: Dec. 31, 2025

Earn 75,000 bonus points after you spend $4,000 in your first 3 months.

$5,100.30 spent $4,899.70 to go

Spend bonus

Earn 500 bonus points for every $2,000 spent.

1,500 points earned this year
$1,100.30 spent $899.70 to go
01
Unified type ramp
All-caps headers, serif promo type, and mismatched label styles collapsed into one consistent text hierarchy.
02
One progress pattern
Bars, rings, and "X of Y" strings all converge on a single Skim-level progress component.
03
Shared spacing scale
Card padding, radii, and rhythm align to system tokens β€” no more bespoke layouts per team.
04
Predictable urgency
Deadlines and "days left" pills follow a single rule, so urgency reads consistently across every offer.
From 6+ ad-hoc patterns across teams to 1 shared system powering 1,000+ offers.
9:41
3
β€Ή Track your progress
See the terms of your offer for full details.
Annual spend bonus
Earn by Dec. 31, 2025
Spend $50,000 in eligible purchases this cardmember year to qualify for a complimentary night certificate.
Annual travel credit
Resets Dec. 31, 2025
$300 statement credit on eligible travel purchases each cardmember year.
New cardmember bonus 32 days left
Spend by Feb. 28, 2026
Earn 60,000 bonus points after spending $4,000 on purchases in your first 3 months.
Offers are subject to change and may vary by account. See offer terms for full details. Deposit and credit products provided by JPMorgan Chase Bank, N.A.
Offers you've completed this year.
Statement credit bonus Earned
Earned Oct. 15, 2025
$200 statement credit after spending $500 in your first 3 months.
5x dining bonus Earned
Earned Sep. 30, 2025
5x points on the first $1,500 in dining purchases each quarter.
Offers that have passed their deadline.
Q2 travel bonus Expired
Expired Jun. 30, 2025
3x points on the first $2,000 in travel purchases this quarter.
Streaming credit Expired
Expired Aug. 31, 2025
$10/month statement credit on eligible streaming services for 6 months.

Card-Aware Architecture

The account selector gives each card its own offer context. Customers with multiple Chase cards see only the offers relevant to their selected card β€” reducing noise and building trust that the information is personalized.

Progressive Disclosure

Default view shows Skim-level summaries for all offers. Tap any offer to expand into Dip (terms, deadlines, requirements) or Dive (full transaction history, eligibility details). This keeps the hub scannable while making depth available on demand.

Priority & Urgency Signals

Offers approaching deadlines surface visual urgency cues β€” amber/red progress bars, "X days left" badges, and priority sorting. Completed tiers show green checkmarks. The system handles the hierarchy so users see what needs attention first.

Graceful Degradation

Each offer card loads independently. If one API call fails, only that card shows an error state β€” the rest of the hub remains functional. Skeleton loaders provide visual stability during data fetching, preventing layout shifts.

08 β€” Entry Points

Designing Discovery

How customers find and navigate to the Tracker Hub from across the Chase app

Building the Tracker Hub solved the destination problem β€” but a destination is useless if customers can't find it. The Chase mobile app has multiple surfaces where customers interact with their cards: the Card Overview Detail (OVD) page, the home feed, notification banners, and the EMOB (Early Month on Book) onboarding flow. Each surface represented an opportunity to surface tracker information and drive users into the hub. The design challenge was determining what information to show at each entry point, how much to reveal versus tease, and how to create a consistent "thread" that pulls users deeper.

I designed entry points across four key surfaces, each calibrated to its context. On the Card OVD (the primary card management screen), tracker tiles sit prominently below the card art β€” showing Skim-level summaries of the customer's most relevant offers with a "Track your progress" CTA that opens the full hub. For limited-time incentives, a banner pattern with urgency signaling (countdown, amber accent) surfaces above the fold to drive time-sensitive action. On the EMOB smart checklist (which new cardholders see in their first weeks), the tracker entry point is woven into the onboarding flow β€” encouraging customers to start tracking from Day 0. And for portfolio-wide offers, entry points surface on the home feed as awareness-building tiles.

Each entry point follows three rules: (1) Show just enough to create intent β€” a progress bar, a key metric, or a deadline β€” without duplicating the hub's full content; (2) Every entry point leads to the same Tracker Hub destination, building a consistent mental model of "where my offers live"; (3) Entry points are context-sensitive β€” a new cardholder sees their NABO progress prominently, while a tenured cardholder sees their portfolio offers and category spending. This ensures the right information reaches the right user at the right moment.

01 Card OVD
9:41
Chase Sapphire Reserve card
Current balance
$3,427.63
Available credit
$26,572.37
Pay card Statements
New cardmember bonus 42%
$1,680 of $4,000 spent
Track your progress ›
Tracker tiles sit beneath the card art on every card's overview screen β€” the highest-intent surface for active cardmembers.
All paths lead here
9:41
3
β€Ή Track your progress
Active Earned Expired
New cardmember bonus 32d left
Spend by Feb. 28, 2026
$1,680.00 spent $2,320.00 to go
Annual travel credit
Resets Dec. 31, 2025
$145.00 used $155.00 left
5x dining bonus
Through Dec. 31, 2025
$975.00 spent 4,875 pts earned
Accounts Pay & transfer Plan & track Benefits Explore
Tracker Hub
One destination, four ways in
02 EMOB onboarding
9:41
Get started with your card
2 of 4 complete
βœ“
Activate your card
βœ“
Add to digital wallet
Track your bonus progress β€Ί
Set up autopay β€Ί
Day-zero tracker entry sits inside the new-cardholder smart checklist alongside other setup tasks.
03 Limited-time banner
9:41
My offers
Earn 60,000 bonus points
Spend $4,000 by Feb. 28, 2026
32 days
Track your progress ›
Above-the-fold banner with countdown surfaces only when a deadline is within 30 days β€” graduated urgency without banner blindness.
04 Home feed
9:41
Good morning
For you
Across your cards
You have 4 active offers worth up to 67,500 points
3 ending soon Track all ›
Portfolio-wide awareness tiles appear in the home feed during routine app visits β€” passive discovery, no opt-in needed.
The entry point system turns the Chase app into a network of tracker touchpoints. No matter where a customer is in the app, their most relevant offer is never more than one tap away from the full Tracker Hub.
β€” Design principle

Card OVD Entry Point

The Card Overview Detail page is where customers go to manage their card β€” check balance, make payments, view transactions. By placing tracker tiles directly below the card art (the most prominent visual real estate), we ensure offer progress is visible during the most common card interaction. The tiles use Skim-level summaries: a progress bar, the offer title, and key metric. Tapping "Track your progress" navigates to the full hub pre-filtered to that card.

For limited-time offers, the OVD entry point escalates urgency: when a deadline is within 30 days, the tile switches from standard blue to amber, and a "X days left" badge appears. Within 7 days, it turns red. This graduated urgency system prevents banner blindness while ensuring time-sensitive offers get noticed.

EMOB Checklist Integration

For newly approved cardholders, the EMOB (Early Month on Book) smart checklist is their first guided experience in the app. I designed the tracker entry point as a checklist item β€” "Track your progress" β€” positioned alongside other setup tasks like adding to digital wallet and setting up autopay.

This integration serves two purposes: it introduces the Tracker Hub concept from the very first interaction, establishing it as the "home" for offer tracking; and it drives customers to check their new account bonus progress, which is the most motivating offer type for new cardholders. The EMOB entry point is aligned to the same design pattern used in the Core Card onboarding checklist, ensuring visual consistency across the full new-cardholder journey.

09 β€” Design System

Components & Infrastructure

Building reusable patterns that scale across teams and platforms

The component system was built around a single architectural decision: tracker type determines visual treatment, not the other way around. Rather than a library of custom components per offer, the system defines four tracker categories β€” Spend & Earn, Usage, Action, Status β€” each with its own MDS component pattern, content template, and urgency signaling rules. A new offer gets classified into one of four buckets, and the design decisions follow automatically.

This made the governance model simple: teams don't choose how to design a tracker. They choose which category their offer belongs to, then implement the pattern. The classification decision β€” previously a months-long negotiation between design, product, and engineering β€” became a documented decision tree that any team could apply in a sprint.

Documentation covered three layers: component usage (which MDS components to use at each Skim/Dip/Dive tier), content templates (what copy to write for each tracker type and state), and governance rules (when urgency signals fire, how to handle missing data, how to handle partial API responses). The goal was to make the right pattern the easy pattern β€” so teams launching on deadline would default to the system, not around it.

10 β€” Impact

Measurable Outcomes

How the framework transformed offer visibility and team velocity

  • πŸ’‘

    From Invisible to Visible

    The framework unblocked 15+ new offer types that previously had no applicable design pattern. Teams went from months-long custom design cycles to launching new trackable benefits in under two weeks β€” turning a backlog of dormant offers into active customer engagement drivers.

  • πŸ“ˆ

    Systematic Scalability

    12+ product teams across Chase and co-branded partners adopted the framework within the first two quarters. Time-to-launch for new tracker experiences dropped from 6–8 weeks of custom design to under 2 weeks using established patterns β€” a 75% reduction in design-to-deployment cycle time.

  • πŸ”—

    Cross-Platform Coherence

    The framework bridged Chase and partner platforms. Customers now experience consistent tracking interfaces whether they're on Chase.com or a co-branded partner site. The system respects individual brand requirements while maintaining recognizable interaction patternsβ€”solving a coordination problem that previously required case-by-case negotiation.

  • ⚑

    Design Efficiency

    By solving information density and tracker categorization systematically, the framework eliminated hundreds of hours of duplicated design work. Teams across the organization now share a common language for building tracking experiences, reducing ambiguity and accelerating delivery.

55% NABO call volume reduction Measured Β· Q1–Q2 2025 data
75% Time-to-launch reduction Measured Β· 6–8 weeks β†’ under 2 weeks
12+ Product teams aligned Measured Β· adopted across Chase & partners
Projected 22% Reduction in complaints & call volume Forecast based on Q1 pilot data
Projected +50bp Net Promoter Score (NPS) Forecast year-over-year increase
10.5 — Vision State

An AI-prioritized Tracker Hub

The system was designed to scale visually across 1,000+ offers. The next layer is to scale prioritization — letting a predictive model decide which 2–3 offers each customer should see first, while preserving the design system's visual structure as the substrate.

Predictive AI

Rank by completion × value

A model predicts each tracker's likelihood of completion and weighs it against dollar value. Outputs a personal "Worth Your Attention" feed of 2–3 trackers, surfaced before category browse.

Key design decision: The card context filter runs before the ranking model. You never see an offer from a card you're not viewing ranked above your current card's offers. Card-aware architecture is preserved.

Generative AI

Personalized framing per tracker

An LLM generates a one-line subtitle on each tracker card grounded in the customer's actual spending pace ("Most Sapphire holders complete this in 6 weeks — you're ahead of pace").

Key constraint: Copy is grounded in the customer's actual data, not general benchmarks. If the model can't generate a specific, falsifiable claim, the fallback is no AI copy — not a generic placeholder.

Design system fit

Skim/Dip/Dive preserved

AI ranks what surfaces in the Skim layer; the Skim/Dip/Dive visual hierarchy stays intact as the substrate. The system isn't replaced — it's enriched with intelligent prioritization on top.

Key constraint: AI never changes component structure, only surface order. MDS tile anatomy, gauge charts, and the two-blue token rule are untouched. The AI layer is strictly additive.

Vision mock · "Worth Your Attention" feed
9:41
3 Sign out
Track your progress

Choose account

CREDIT CARD (...8247)
Active Earned Expired

See the terms of your offer for details.

3 of 14
Account Bonus Ranked #1
$3,840 of $4,000
$3,840 spent $160 to go
2 weeks ahead of average Sapphire holder. At this pace, you'll complete this by Feb 14.
Travel Credit Ranked #2
$155 remaining
$145 used Expires Dec 31
Use on a Q4 trip β€” 18 days left. Most holders use remaining credit on holiday flights.
Dining 5× · Q4 Ranked #3
$1,200 of $1,500
$1,200 spent $300 to go
On track to complete before Dec 31. Your dining spend is 22% above your Q3 average.
All trackers
11 more active trackers View all →
Vision mock · Empty state — all caught up
9:41
3 Sign out
Track your progress

Choose account

CREDIT CARD (...8247)
Active Earned Expired

See the terms of your offer for details.

All caught up

You've completed every active offer on this card. Here's what's coming.

Coming up
Dining 5× Jan 1, 2026

$1,500 quarterly cap · Activates at start of Q1

Travel Credit Apr 15, 2026

$300 annual reset · Anniversary date

Failure state · Low-confidence fallback
9:41
3 Sign out
Track your progress

New card · less than 30 days old

CREDIT CARD (...4421)
Active Earned Expired

See the terms of your offer for details.

Personalized ranking isn't ready yet. We need a few weeks of spending history to surface your most relevant offers first. Showing all active trackers below.

New cardmember bonus

32D LEFT

Spend by Feb. 28, 2026

Earn 60,000 bonus points after spending $4,000 in your first 3 months.

$880 spent $3,120 to go

DashPass membership

First-year complimentary benefit

Active Valid through Jan 1, 2026
1
"Worth Your Attention" feed at the top

2–3 trackers ranked by completion-probability × dollar value. Surfaced before category browse and the existing All Trackers view — both of which remain available below.

2
Existing Skim/Dip/Dive treatment preserved

Each ranked card uses the system's existing Skim pattern: MDS tile container, MDS Gauge Chart Linear, status badges. AI ranks what surfaces; the visual hierarchy is the substrate, untouched.

3
LLM-generated framing per tracker

"2 weeks ahead of average Sapphire holder." Specific, comparative, falsifiable. Grounded in the customer's real spending data. If the model can't generate a specific claim, no copy is shown.

4
Trust + escape hatch

"All trackers" section always visible below the ranked feed. Failure state: when prediction confidence is low (new card, sparse data), the ranking feed is suppressed entirely — no degraded AI shown.

Failure state design

When confidence is low, don't show degraded AI

New cardholders and customers with sparse transaction history don't have enough signal for the ranking model to generate reliable predictions. Rather than surface uncertain rankings or generic AI copy, the system suppresses the "Worth Your Attention" feed entirely and falls back to standard chronological ordering with a plain-language explanation. This preserves trust — customers only see AI-driven content when the model is confident it's useful.

Empty state design

Empty isn't blank — surface what's coming

Customers who complete all active offers are the highest-value segment — they fully engaged with the system. Rather than showing a blank state, the hub surfaces upcoming offers with their activation dates and reset schedules. Dashed borders visually distinguish "not yet active" from "active" using the same MDS tile component — one component, different state. Cardholders learn one pattern and see it everywhere.

Precedent References
  • Spotify Discover Weekly — for the "ranked feed of personalized things" pattern, plus the "Made for You" attribution model that makes algorithmic curation legible. Applied here: the "Worth Your Attention" label plays the same role as "Made for You" — it signals curation without requiring the user to understand the model.
  • Notion AI's contextual suggestions — the LLM-generated short-text overlay pattern, where AI text feels like a helpful annotation rather than an intrusive dialog. Applied here: the AI annotation row sits below the gauge, distinct but integrated, never interrupting the primary tracker information.
  • Linear's "My Issues" default view — for the personalized-priority-with-escape-hatch pattern. Your personalized view is the default, but the full unfiltered view is one tap away. Applied here: the ranked feed is the default; "View all" keeps the full list of 14 trackers one tap away.
11 β€” Reflection

Key Learnings

What this project taught me about designing systems at enterprise scale

"Design systems aren't just about componentsβ€”they're about solving organizational problems. The Skim/Dip/Dive framework didn't just create UI consistency; it gave teams a shared mental model for thinking about information architecture at scale."

Working across 1,000+ offers and multiple partner platforms reinforced the importance of designing flexible systems rather than rigid templates. The most successful patterns were those that could adapt to diverse contexts while maintaining core consistency.

Perhaps most importantly, I learned that enterprise design impact isn't always measured in individual user flowsβ€”sometimes the biggest wins come from eliminating fragmentation and creating shared solutions that lift all experiences simultaneously.

The Tracker Hub taught me that components are only half the story. A design system gives you the building blocks, but without a coherent destination and clear discovery paths, those blocks remain scattered across the product. Designing the hub and entry points was really about designing the system of navigation β€” ensuring that no matter where a customer starts in the app, their most relevant offers are always within reach.

Previous Project Marriott Bonvoy Next Project Saveability
Back to home β†’