SpotifyPay

SpotifyPay Link to heading

Automated Cost Splitting for Spotify Family Subscriptions

Overview Link to heading

SpotifyPay automates the calculation of how much each member of a Spotify Family plan owes. It handles price changes over time and sends email notifications to family members, eliminating the awkwardness of manually tracking and requesting payments.

Key Features Link to heading

  • Automatic Cost Calculation - Accounts for subscription price changes
  • Email Notifications - Reminds members of outstanding balances
  • Secure Architecture - Separates sensitive data from public data
  • Auto-sync - Commits data changes automatically to GitHub

Technical Implementation Link to heading

Architecture Link to heading

The project uses a split-data architecture for security:

Data TypeStorageAccess
EmailsPrivate Google SheetScript only
Names, AmountsPublic GitHub JSONReact app

This ensures email addresses remain private while allowing the React frontend to display balances.

Data Flow Link to heading

  1. Google Sheet - Master data entry (prices, members)
  2. Google Apps Script - Processes data, sends emails
  3. GitHub API - Commits sanitized JSON
  4. React App - Displays current balances

Technologies Link to heading

ComponentTechnology
FrontendReact
BackendGoogle Apps Script
StorageGoogle Sheets + GitHub JSON
AutomationApps Script Triggers

How It Works Link to heading

  1. When Spotify changes prices, I update the Google Sheet
  2. The script calculates each member’s new balance
  3. Data is committed to GitHub as JSON (without emails)
  4. Members can view their balance on the React app
  5. Email reminders are sent periodically

Use Case Link to heading

Managing a Spotify Family plan among friends can be awkward. Who paid how much? When did the price change? This project automates all the tracking, making it painless to split costs fairly.