The Scenario
You are a marketing ops manager at an agency. A cold email campaign wrapped and the vendor sent you an Excel workbook with 500 leads on the Leads tab — name, email, phone, company, and source.
Before anyone starts creating contacts in HighLevel, you need to know which of these 500 already exist in the system. Your HighLevel location has 4,000 contacts. Pushing blindly would create duplicates, confuse pipeline ownership, and trigger nurture sequences for people who are already mid-funnel.
The slow version:
- Open HighLevel's contact search
- Type each email one at a time
- Note the result in the workbook
- Move to the next row
- Repeat 500 times
- You finish Wednesday. The campaign team needed the flagged list Monday.
The fast version is one prompt before you hand the workbook off.
The Easy Way: One Prompt in SheetXAI
SheetXAI reads the workbook, searches HighLevel for each email, and writes the verdict back before any contact gets created.
Open the SheetXAI sidebar and type:
For each email in column B of the Leads tab, search HighLevel for a duplicate contact and write "EXISTS" or "NEW" to column E. If a match is found, write the existing contact ID to column F.
SheetXAI runs through all 500 rows, queries HighLevel per email, and writes the deduplication result directly into the workbook.
What You Get
A pre-import audit in two new columns on the Leads tab:
- Column E — "EXISTS" or "NEW" for every row
- Column F — the HighLevel contact ID for any row marked EXISTS
The campaign team sorts by column E and works the two groups separately. NEW rows go to creation. EXISTS rows go to whoever manages active pipeline, to confirm whether they should be included in this campaign.
No contacts were created. No duplicates were introduced. The data quality work happened before anything touched HighLevel.
What If the Data Is Not Quite Ready
Cold email vendor lists surface edge cases that your own list would not.
When the workbook has internal duplicates
The vendor sent a list with the same email appearing in rows 17 and 204.
Before checking HighLevel, scan column B of the Leads tab for emails that appear more than once and write "SHEET DUPLICATE" to column E for any repeat. For the remaining unique emails, search HighLevel and write "EXISTS" or "NEW" to column E, with the matched contact ID in column F.
When some rows have only a phone number and no email
Some leads came from a different capture form that did not ask for email. You need to catch duplicates on phone.
For each row in the Leads tab, check HighLevel for a duplicate contact using email from column B if it is not empty, or phone from column C if email is blank. Write "EXISTS" or "NEW" to column E and the matched contact ID to column F.
When you want the results split into two separate tabs automatically
You want the NEW leads ready to hand off on one tab and the EXISTS leads on another.
Search HighLevel for a duplicate contact for every email in column B of the Leads tab. Write the verdict to column E. Then copy all NEW rows to a tab called "To Create" and all EXISTS rows to a tab called "Already in CRM."
When you want the full dedup check plus contact creation in one pass
You have been given the green light to create new contacts immediately after the check.
For each email in column B of the Leads tab, search HighLevel for a duplicate. If it exists, write "EXISTS" and the contact ID to columns E and F. If it is new, create a HighLevel contact using name in column A, email in column B, phone in column C, and company in column D under the location in cell H1. Write "CREATED" to column E.
The pattern: describe both the check and the conditional creation in one instruction. SheetXAI handles the branching per row.
Try It
Get the 7-day free trial of SheetXAI and run a duplicate check on any lead workbook before your next HighLevel import. The HighLevel integration is included in every SheetXAI plan. For the next step, see how to bulk-create contacts from an Excel workbook or the HighLevel in Excel overview.
