Back to projects

Project ยท 2026

Restaurant Stats

A personal data pipeline that consolidates restaurant spending across Bank of America, Chase, Capital One, and Venmo from PDF statements, then computes per-restaurant stats: visits, total spend, average ticket, first and last visit, and cards used.

  • Python
  • pandas
  • PDF parsing

Problem

My dining spending was scattered across four financial sources (Bank of America, Chase, Capital One, and Venmo), each with its own PDF statement format. I wanted a single view of where I actually eat: how often, how much, and on which card, without uploading years of financial statements to some third party.

Approach

A three-stage Python pipeline (extract to build to dashboard):

  • Extract ingests raw credit-card and Venmo PDF statements.
  • Build detects and canonicalizes dining transactions across the four different statement formats.
  • Dashboard produces per-restaurant analytics.

Financial input data stays fully local and git-ignored.

Highlights

  • Handles four distinct statement formats and reconciles them into one canonical set of dining transactions.
  • Computes per-restaurant stats: number of visits, total spend, average ticket size, first and last visit dates, and which cards were used where.
  • Keeps all financial input local and out of version control.