Mobile Family Bill Splitter Automation
Turning a monthly 30-minute chore into a 30-second email forward

What I Built
I got tired of manually parsing our 10-person family plan bill every month (mostly friends sharing costs), so
I built a fully automated system that does it for me. Now I just email the bill to a specific address, and
boom - I get the breakdown of what they owe, ready for Splitwise or Venmo.
Every month I'd spend 30 minutes going through T-Mobile's 6-page PDF bill, manually extracting each person's
charges, calculating splits, and sending everyone their portion. It was frustrating why T-Mobile would
not automatically do it in the bill when others do, but now I don't mind since I learned a lot during this
build. It wasn't a huge time sink honestly, but the motivation to do it was basically zero. Classic "I'll
spend 10 hours automating a 30-minute task" situation.

How It Works
Email-Triggered Workflow: Forward the T-Mobile bill to my automation email with a specific subject
line, then wait for the magic to happen.
Smart PDF Parsing: This was the trickiest part. I tried OCR and ML approaches first, but T-Mobile's
PDFs are messy. Ended up using keyword-based text extraction to grab exactly what I needed from the bill
summary.
GitHub Actions Automation: Runs on a daily cron job using GitHub Actions for free cloud
hosting. Checks for new bills, processes them, and emails everyone's total split.
Complete Pipeline: Email retrieval → PDF parsing → bill analysis → automated summary emails.
Technical Challenges
First time working with email automation (IMAP/SMTP) and GitHub Actions, so lots of learning on the fly. The PDF parsing was brutal - tried multiple approaches before settling on reliable keyword-based extraction. Had to handle Gmail app passwords, environment variables, and making the whole thing generic enough that others could use it.
Impact
Been running rock-solid since September 2024 with just minor hiccups. Added more features over time and made it generic so other families can adapt it. Saves me 30 minutes monthly, but more importantly, I never have to think about bill splitting again.
Technologies Used: Python, GitHub Actions, IMAP/SMTP, pandas, PDF parsing, YAML configs
Personal automation project, 2024