AWS Consumer Complaint Intelligence Dashboard
North Carolina Credit Card Fees & Interest Analysis
An undergraduate data analytics portfolio project by ChieNwosu — demonstrating AWS cloud architecture design, SQL analysis, Python data pipelines, and stakeholder reporting using real CFPB consumer complaint data.
AWS Status: The pipeline (S3 → Glue → Athena → QuickSight) is a designed architecture and has not been deployed. All analysis results are from the local Python implementation.
Project Overview
This project analyzes 542 CFPB consumer complaints from North Carolina related to credit card fees and interest charges (January 2024 – April 2026). The analysis identifies complaint concentration patterns, company response behavior, and consumer friction themes — and validates AI-generated insights against the actual data.
Architecture Summary
complaints.csv → Amazon S3 → AWS Glue Data Catalog → Amazon Athena → QuickSight
↓
GitHub Pages
| Stage | Service | Purpose | Status |
|---|---|---|---|
| Storage | Amazon S3 | Raw CSV storage | Designed |
| Catalog | AWS Glue | Schema registration | Designed |
| Query | Amazon Athena | SQL analysis | Designed |
| Dashboard | Amazon QuickSight | Interactive visuals | Designed |
| Docs | GitHub Pages | This site | ✅ Live |
| Local analysis | Python + pandas | All results shown here | ✅ Implemented |
Full architecture documentation →
Key KPIs
| Metric | Value |
|---|---|
| Total complaints | 542 |
| Companies involved | 42 |
| Top company | Synchrony Financial — 123 complaints (22.7%) |
| Top sub-issue | Problem with fees — 355 complaints (65.5%) |
| Monetary relief rate | 31.2% (169 complaints) |
| Timely response rate | 99.6% (540 of 542) |
| Narrative availability | 62.2% (337 of 542) |
| Peak complaint month | March 2026 — 38 complaints |
Dashboard Preview
Complaint Volume by Company (Top 10)

Sub-Issue Distribution

Monthly Complaint Trend

Company Response Outcomes

Key Insights
- Synchrony Financial dominates — 123 complaints, 1.7× more than the next company
- Fee disputes are primary — 65.5% of complaints are about specific fee problems
- Monetary relief is meaningful — 31.2% of consumers received financial compensation
- Near-perfect compliance — 99.6% timely response rate across all companies
- Plain language prevails — “fee” (229) and “interest” (197) dominate narratives; “APR” appears only 14 times
- March 2026 spike — 38 complaints in one month, nearly double the average of 19.4
AI Validation Summary
AI-generated insights from a prior analysis were tested against the actual dataset. 3 of 8 insights were rejected.
| Insight | Status |
|---|---|
| Synchrony Financial is the top source | ✅ Accepted |
| “Problem with fees” dominates | ✅ Accepted |
| 99%+ timely response rate | ✅ Accepted |
| Most complaints closed without monetary relief | ✅ Accepted |
| Complaint spikes in early calendar year | ⚠️ Partially Accepted |
| “Promotional rate” is a common narrative theme | ❌ Rejected — 0 occurrences |
| Consumers frequently mention “APR” | ❌ Rejected — only 14 occurrences |
| Monetary relief is rare (under 10%) | ❌ Rejected — actual rate is 31.2% |
Documentation
| Section | Description |
|---|---|
| Project Overview | Component status and key findings |
| Business Problem | Why this analysis matters |
| Data Dictionary | All 18 columns defined |
| AWS Architecture | Designed cloud pipeline with cost estimates |
| Dashboard Requirements | QuickSight design specs |
| Insights | Chart-by-chart business interpretations |
| AI Validation Log | 8 insights validated against real data |
| Limitations | Dataset and methodology limitations |
| Stakeholder Summary | Non-technical findings and recommendations |
SQL Files
| File | Purpose |
|---|---|
| 01 — Create Athena Table | External table from S3 CSV |
| 02 — Data Quality Checks | Row count, nulls, date range, ZIP masking |
| 03 — KPI Queries | All core KPIs |
| 04 — Company Response Analysis | Per-company response and relief rates |
| 05 — Sub-Issue Trend Analysis | Trends by month, company, and year |
| 06 — Semantic Views | 4 dashboard-ready CREATE VIEW statements |
How to Run Locally
git clone https://github.com/ChieNwosu/aws-consumer-complaint-intelligence.git
cd aws-consumer-complaint-intelligence
pip install -r requirements.txt
# Run from project root:
python src/data_cleaning.py
python src/analysis.py
python src/visualization.py
All findings derived from the CFPB public complaint database. Dataset: 542 North Carolina credit card fee and interest complaints, January 2024 – April 2026.