I need help setting up an Airtable workspace for a fitness coaching company. The goal is to create sections for Customer Overview, Workout Records, Coach Schedule, Progress Reports, Billing Management, and Location Tracking.
The current data structure is messy and scattered:
- Customer information lives in a “Sessions” spreadsheet where every client gets their own sheet tab. Each tab stores data vertically (like “Full Name”, “Birth Date”, “Membership Type” listed down column A)
- Weekly progress data sits in a “Progress Reports” spreadsheet with tabs named by date ranges like “June 16-22”. These tabs have recurring headers: Full Name | Birth Date | Start Date | Completed Workouts | Remaining Workouts | Scheduled Sessions | Comments
- There’s no central database for customers, memberships, or workout history
I want to know the smartest way to bring all this information into one organized Airtable setup. My main questions are:
- How should I clean up this messy data before importing to Airtable?
- Is it better to build a main customer database by hand or write code to pull the newest details from all tabs?
- What’s your advice for handling spreadsheet data where headers keep changing and information gets repeated everywhere?
I’ve dealt with this exact mess migrating spreadsheets to Airtable. Here’s what actually works: Start with a clean Google Sheets template - same column headers for everything. Yeah, manually copying data from each client tab sucks, but you’ll catch all the garbage entries this way. Those progress reports with random date ranges? Dump them all into one master sheet and add a date column before you export. In Airtable, think relationships from day one. Customer table goes in the center, then link your Progress, Sessions, and Billing tables to it. Import customers first, grab those record IDs, then pull in everything else. Trust me - cleaning up during consolidation beats fixing broken relationships later. Run a test import with just a few records to spot field mapping problems early.
Did the same migration last year for my consulting business. That vertical data structure is a pain - use Google Sheets TRANSPOSE function to flip those vertical client tabs to horizontal rows first. Makes the CSV export way cleaner for Airtable. For scattered progress data, make one consolidated sheet with QUERY or FILTER functions to pull everything together with matching headers before you export. Set up your main Customer table in Airtable first, then import everything else as linked records. Trust me, spend the extra time cleaning data upfront instead of fixing relationships after import. Automated beats manual entry when you’re dealing with multiple tabs - just keep your field mapping consistent.
Been through this exact mess when we moved to Airtable. Everyone’s ignoring the real problem - duplicate customer records scattered across tabs.
Start with customer data and dedupe everything. I use Google Sheets UNIQUE function with VLOOKUP to merge duplicates. You’ll find “John Smith” vs “J. Smith” - fix these by hand.
For progress data spread across those date-named tabs, write an Apps Script that loops through all sheets and dumps everything into one export. Beats copying manually and you won’t miss anything.
The vertical layout in client tabs is awful. Skip transposing each one. Create a master template and use IMPORTRANGE with specific cell references to pull data horizontally.
This video nails the CSV export/import process:
In Airtable, build your Customer table first with unique IDs. Import workout records after and link them using email or name matching. Linking works automatically if field names match.
Watch out - changing headers in progress reports will kill your imports. Standardize field names before exporting.
definitely try exporting the sheets as CSVs. once in Airtable, make a master table for clients and link other tables to it. yeah, you’ll wanna clean up the headers a bit during import. it sounds complex but it’s manageable!