The Scenario
You are a volunteer coordinator at a community nonprofit. Last weekend's festival drew a huge crowd. 150 new supporters filled out paper sign-up forms at your booth. A data entry volunteer spent Sunday afternoon putting all 150 into a Google Sheet: first name, last name, email, phone.
Now you need every one of those people in Raisely. But you cannot just bulk-create all 150 — some of them have almost certainly given to your organization before, and creating a duplicate record in your donor database is worse than a missing one.
You need to check each email against Raisely, create accounts only for the ones that do not exist yet, and log the result for every row so you know what landed.
The slow version:
- Open the Raisely admin, go to People, search for the first email address
- Note "already exists" or "not found," go back to the sheet, mark the row
- Repeat 149 more times
- When you find a new supporter, also click through to create their account manually
- An hour in. Forty rows processed. You have to give a team briefing at 2 PM and you are nowhere near done.
The fast version is one prompt.
The Easy Way: One Prompt in SheetXAI
SheetXAI checks each email against Raisely and creates accounts only for new supporters, logging the result per row as it goes.
Open the SheetXAI sidebar and type:
For each row in this sheet, check if the email in column C already exists in Raisely. If it does not exist, create the user with the name from columns A and B and the phone from column D. Mark column E 'Created' or 'Already Exists' for each row.
SheetXAI iterates through all 150 rows, checks each email against the Raisely API, creates accounts only where needed, and writes the result to column E. When it is done, you have a full log of what happened on every row.
What You Get
A processed sign-up sheet with a complete audit trail:
- "Created" in column E for every new supporter added to Raisely
- "Already Exists" for every email that matched an existing record
- No duplicates created, because SheetXAI checks before it acts
- All 150 rows processed — no one dropped because you ran out of time
The log is also the handoff document. Pass the sheet to the donor relations team and they can see immediately which new supporters need a welcome call.
Want to also tag every newly created supporter with a "Community Festival 2025" tag? Add it to the prompt.
What If the Data Is Not Quite Ready
Paper sign-up forms have quality issues. Misspelled emails, missing phone numbers, and names written in all caps are standard.
When emails have typos or invalid formats
Some volunteers collected email addresses by hand and a few are clearly malformed ("gmial.com", missing "@", trailing spaces).
Before checking Raisely, validate the email format in column C. Flag any row with an invalid email format as 'Invalid Email' in column E and skip those rows. For valid emails, check Raisely and create accounts or mark 'Already Exists' as normal.
When you want to tag new supporters with their event source
Each new supporter should be tagged "Community Festival 2025" in Raisely so future campaigns can target them as a cohort.
For each row in this sheet, check if the email already exists in Raisely. If it does not, create the user and apply the tag 'Community Festival 2025'. Mark column E 'Created + Tagged' or 'Already Exists'. If any row fails, log the error in column F.
When first and last name are in a single column
The volunteer used a single "Full Name" column instead of separate first and last name fields.
The full name is in column A as "FirstName LastName". Before checking Raisely, split column A into a first name and last name. Then check each email, create new accounts with the split name fields, and log the result in column D.
When you need to run the upsert across multiple event sheets
The festival had two booths. Each volunteer used a separate sheet. You want to merge both, deduplicate by email, and then do the Raisely upsert once.
Combine the sign-up data from the 'Booth A' tab and the 'Booth B' tab into one list. Remove rows where the same email appears more than once, keeping the first occurrence. Then check each unique email against Raisely: create accounts for new supporters and mark 'Already Exists' for known ones. Log results in the 'Merged' tab, column E.
The pattern: validate, deduplicate, and upsert in one prompt. The result is a clean Raisely database and a row-level log you can hand to the next person without a briefing.
Try It
Get the 7-day free trial of SheetXAI and ask it to process your next event sign-up sheet into Raisely without creating duplicates. The Raisely integration is included in every plan. See also how to deduplicate your existing donor database or the Raisely in Google Sheets overview.
