Best way to organize linked customers in spreadsheets when they share billing but need individual records

I’m setting up a customer database for my fitness coaching business. Right now I’m using Google Sheets but might switch to Airtable later. Here’s my challenge - I have customers who come as pairs or families. They each have different contact details but they pay together and get the same service package.

Currently I put both names in one row like “Sarah & Mike” with both email addresses and phone numbers. This is causing issues because I can’t track them separately for appointments or messages, but if I split them apart I lose track of their shared billing.

I need to figure out how to keep each person as their own record while still connecting them to the same payment plan. Maybe I should add some kind of family ID number? What would work best for both Google Sheets and Airtable?

Anyone dealt with this kind of setup before? Looking for ideas that won’t be too complicated to maintain as I get more clients.

Had this exact problem managing memberships at a small gym. Here’s what worked: create a billing group ID - I used BG001, BG002, etc. Everyone gets their own row with individual details, but they share the same billing group code in a dedicated column. You can filter by billing group to see who pays together, but still sort and track each person separately for scheduling or communications. In Google Sheets, just use the filter function to pull up all members of a billing group. When you move to Airtable later, this setup translates perfectly - you can link records to a separate billing table. Pro tip: add a notes column for relationships like ‘spouse’ or ‘parent.’ Trust me, you’ll forget these connections after a few months, and it makes customer service way smoother when they call asking about their partner’s sessions.

I made this switch about two years ago when managing client accounts - best decision ever. Instead of cramming everything into one row, I treat billing and customer info as separate things. Each person gets their own row with full contact details. Then I add a “Primary Billing Contact” column where I mark who pays and reference their row number for everyone else. So Sarah’s in row 15 marked as primary billing, Mike’s in row 16 with “See Row 15” in his billing column. I throw in a “Household Name” column too - like “Johnson Family” - so I can spot related accounts fast. This fixed my scheduling nightmares since everyone has their own record, but billing stays in one place. Works the same in Google Sheets and Airtable, though Airtable’s linked records make it cleaner once you switch over.