The Scenario
You are a revenue ops analyst. An enrichment script ran overnight and added two new data points to 150 contacts in an Excel sheet: ICP Score and Company Size. Both are custom fields in Salesflare, but the CRM records still have the old values.
You need to push the new values from the sheet into Salesflare before the sales team's morning standup at 9 AM, so the reps are prioritizing the right accounts.
The bad version of this morning:
- Open Salesflare, search for contact 1
- Click the record, find the custom fields section, update ICP Score, update Company Size, save
- Search for contact 2, repeat
- One hundred and fifty times
- The standup happens at 9 AM and you are still on contact 60
- Reps spend the morning working from stale scores.
The fast version is one prompt before you sit down.
The Easy Way: One Prompt in SheetXAI
SheetXAI reads the sheet and pushes the custom field updates to Salesflare row by row, so you do not have to open a single contact record.
Open the SheetXAI sidebar and type:
For each row in this sheet with contact_id in column A, ICP_score in column B, and company_size in column C, update the corresponding Salesflare contact's custom fields and write "updated" or the error message to column D.
SheetXAI updates each contact's ICP Score and Company Size custom fields, and writes the result to column D. One hundred and fifty contacts updated before standup.
What You Get
A completed sheet with column D filled:
- "updated" for every row that went through
- The error message for any row that failed, so you know exactly which contacts to fix
Every contact in the sheet gets the new values. The failures in column D are your to-do list, not a mystery.
What If the Data Is Not Quite Ready
Enrichment script outputs are rarely CRM-ready straight out of the pipeline.
When ICP Score values are out of the valid range
The enrichment script sometimes outputs values outside the 0-10 scale Salesflare expects. Those rows should be skipped and flagged.
For each row, if the ICP_score in column B is not between 0 and 10, write "INVALID SCORE" to column D and skip the update. For valid rows, update the Salesflare contact's custom fields and write "updated" to column D.
When company size came back as a text string instead of a number
The enrichment tool returns "201-500 employees" instead of an integer. Salesflare expects a numeric value.
For each row, extract the lower bound of the company size range in column C (e.g. "201" from "201-500 employees") and use that as the numeric value for the Company Size custom field. Update the Salesflare contact and write "updated" or error to column D.
When some contact IDs in the sheet no longer exist in Salesflare
Contacts deleted or merged since the enrichment ran will return an error. You want to surface those separately.
For each row, attempt to update the Salesflare contact. If the contact is not found, write "CONTACT NOT FOUND" to column D. For all other errors, write the error text. For successful updates, write "updated."
When you want to update the fields and add an audit note to each contact in one prompt
The ops team wants a record of every enrichment run in the contact timeline.
For each row in this sheet, update the Salesflare contact's ICP Score and Company Size custom fields using columns B and C. Then add an internal note: "Enrichment update [today's date]: ICP Score set to [column B], Company Size set to [column C]." Write "done" or error to column D.
The pattern: the enrichment sheet drives the update, the status comes back to the sheet, and the CRM reflects the new data before anyone needs it.
Try It
Get the 7-day free trial of SheetXAI and open any enrichment output sheet, then ask it to push the values into Salesflare custom fields. The Salesflare integration is included in every SheetXAI plan. See also how to export contacts with tags and custom fields or the Salesflare in Google Sheets overview.
