The Scenario
You are an HR coordinator. Every Monday at 7 AM you receive an HRIS export: a Google Sheet with 500 employee records, columns for Employee ID, First Name, Last Name, Department, Title, and Manager.
Your Airtable Employees base is the system other tools read. Some of these 500 employees are already in Airtable from last week's sync. New hires need to be created. Existing employees need their Department or Title updated if anything changed.
The naive approach:
- You export from the HRIS, open the sheet
- You try to figure out which records are new versus existing
- You export the current Airtable base to cross-reference
- You paste them side by side and use VLOOKUP to find differences
- You manually create the new ones, manually update the changed ones
- An hour later, three records are wrong because the VLOOKUP pulled a stale value.
The correct version is one prompt.
The Easy Way: One Prompt in SheetXAI
SheetXAI reads the sheet and calls Airtable's upsert API, matching on the Employee ID, so new records are created and existing ones are updated without you having to sort out which is which.
Open the SheetXAI sidebar and type:
For every row in my 'Employee Export' sheet, upsert a record in my Airtable 'Employees' table matching on the Employee ID field in column A. Update the First Name, Last Name, Department, Title, and Manager fields for existing records. Create new records for any Employee ID not already in the table.
SheetXAI runs the upsert across all 500 rows, using Airtable's upsert endpoint to handle the create-or-update logic on your behalf. It reports back how many records were created and how many were updated so you have an audit trail.
What You Get
One clean sync across 500 rows:
- New hires created — any Employee ID not in Airtable becomes a new record
- Existing employees updated — Department, Title, and Manager fields overwritten with current values
- No duplicates — the match on Employee ID ensures one record per employee
- A run summary — how many created, how many updated, how many skipped due to errors
You do not have to diff the sheet against Airtable. SheetXAI handles the comparison internally through the upsert operation.
What If the Data Is Not Quite Ready
HRIS exports are rarely clean. SheetXAI validates and upserts in the same prompt.
When the Department names have changed format since last week
Last week the HRIS said "Eng" and this week it says "Engineering." Airtable has "Engineering" but the upsert would create a mismatch.
Before upserting, normalize the Department column: map "Eng" to "Engineering," "Mktg" to "Marketing," and "Ops" to "Operations." Then upsert to the Airtable 'Employees' table matching on Employee ID.
When some rows have blank Manager fields for new hires still being assigned
You do not want blank Manager fields to overwrite a correctly-set value for existing employees.
Upsert all rows to the Airtable 'Employees' table matching on Employee ID. For existing records, only update the Manager field if column F is not blank — skip the Manager update for rows where column F is empty.
When you only want to sync employees in a specific department this run
Payroll is only asking about the Finance team this week.
Filter to rows where column D equals 'Finance.' Upsert those rows only into the Airtable 'Employees' table, matching on Employee ID in column A, updating all other fields.
When you need the full upsert plus a post-run audit in one go
You need to sync, then pull back the Airtable data to confirm everything matches the sheet.
Upsert all 500 rows to the Airtable 'Employees' table matching on Employee ID. After the upsert, pull every record back from Airtable and compare the Department and Title fields to the values in this sheet. Write any discrepancies into a new tab called 'Audit' with columns: Employee ID, Expected Department, Airtable Department, Expected Title, Airtable Title.
The pattern: upsert handles the create-or-update decision for you, and the audit step catches anything that did not land correctly.
Try It
Get the 7-day free trial of SheetXAI and open any recurring export sheet you sync into Airtable, then ask SheetXAI to upsert on your key field. The Airtable integration is included in every SheetXAI plan. See also how to bulk-update records from a sheet or the Airtable in Google Sheets overview.
