The Scenario
Your email marketing manager drops a Google Sheet in Slack on a Monday morning. It's 2,000 rows — contacts scraped from a conference badge scan and a few LinkedIn lists — and the campaign goes out Thursday. Before any of it goes into the ESP, someone needs to remove the disposable addresses, the free-mail accounts, and anything with a typo in the domain.
That someone is you.
The bad version:
- Export the sheet to CSV, run it through a command-line script that calls RiteKit one address at a time, wait for 2,000 API responses to finish, then re-import the results and pray the row order didn't shift.
- Manually spot-check 50 rows at random in RiteKit's dashboard, flag anything suspicious by hand, and hope that sample is representative of the full list.
- Send the list to the ESP as-is, let the bounce rate tell you which addresses were bad, and spend Friday explaining the spike to the deliverability team.
You were hired to run campaigns, not to debug address hygiene one row at a time. The campaign has a fixed send date, and "we ran out of time to clean the list" is not a conversation you want to have with the brand team.
The Easy Way: One Prompt in SheetXAI
SheetXAI is an AI agent that lives inside your Google Sheet. It reads your data and, through its built-in RiteKit integration, calls the email validation API across every row and writes the results back into the columns you specify — in one prompt, without you touching the API directly.
For each email in column A, use RiteKit to check whether it is disposable, whether it is from a free email provider, and whether it contains a common typo — write TRUE/FALSE results into columns B, C, and D respectively. Then add a note in column E for any row where the typo field is TRUE, showing RiteKit's suggested correction.
What You Get
- Column B: TRUE for disposable addresses (temp-mail, throw-away inboxes), FALSE otherwise
- Column C: TRUE for free-mail domains (gmail.com, yahoo.com, hotmail.com, etc.), FALSE for business domains
- Column D: TRUE where RiteKit detects a common domain typo (gmal.com, outllook.com), FALSE otherwise
- Column E: The suggested corrected domain for typo rows — blank for clean rows
- Every row in column A gets a result — skipped cells get flagged as an error in column F so nothing falls through
What If the Data Is Not Quite Ready
The email column has leading and trailing spaces
RiteKit's API is strict about email formatting. Spaces in column A will cause validation calls to fail silently or return errors.
Before calling RiteKit, trim whitespace from every cell in column A and write the cleaned addresses back to column A. Then run the RiteKit disposable, free-mail, and typo checks and write results to columns B, C, and D.
Some rows are missing the @ sign entirely — they're not email addresses
The list was scraped and some rows have "Name" or "Title" in what should be the email column.
For each row in column A, skip the RiteKit call if the cell does not contain an @ character — write "INVALID FORMAT" in column B and leave C, D, and E blank. For valid-format emails, run the full RiteKit check and write disposable, free-mail, and typo results to columns B, C, and D.
The sheet has emails on two tabs — "Badge Scan" and "LinkedIn Import" — and I need results on both
On the "Badge Scan" tab, run the RiteKit email validation for each address in column A and write disposable, free-mail, and typo results to columns B, C, D. Repeat for the "LinkedIn Import" tab. Then on a third tab called "Merged Results" combine both validated lists, deduplicate on email address, and flag any email that appears in both sources with "DUPLICATE" in column F.
I want to clean the list and generate a summary in one shot
For each email in column A, call RiteKit to check disposable, free-mail, and typo status and write results to columns B, C, D. After processing all rows, add a summary section starting at row 1 of a new tab called "Validation Summary" showing: total emails processed, count of disposable addresses, count of free-mail addresses, count of typo-flagged addresses, and count of rows where any flag is TRUE. Format the summary as a small table with labels in column A and counts in column B.
Ask for the cleanup and the summary report at the same time — the results land in one pass.
Try It
Get the 7-day free trial of SheetXAI and open the Google Sheet with your raw contact list, then ask it to validate every address in column A against RiteKit before your next campaign send. For a related task, see how to enrich those same contacts with inferred names, or go back to the RiteKit + Google Sheets overview to see all available workflows.
