This Zapier workflow runs whenever a row is added or updated in Google Sheets. It enriches the contact with Lusha and creates a Salesforce lead with clean, consistent fields. It’s built for teams that collect leads in Sheets first, like event lists, partner lists, or manual imports.
Enrich contacts from Google Sheets and create Salesforce leads with Zapier
Why enrich Google Sheets leads before they reach Salesforce?
Google Sheets is often a temporary home for leads. Moving them into Salesforce usually takes manual work and ends with fields that don’t match.
This workflow enriches each lead before it reaches Salesforce, so every record arrives complete and in the same format, ready for routing, scoring, and outreach.
What this workflow does
- Starts when a row is added or updated in Google Sheets
- Enriches the contact with Lusha, adding job title, seniority, department, company, LinkedIn URL, and phone where available
- Adds company details based on the email domain
- Filters rows with Filter by Zapier, for example skipping rows without an email or with personal email addresses
- Creates a Salesforce lead with the enriched fields mapped in
How to set it up
Start from the Zapier template
Copy the Google Sheets → Lusha → Salesforce template in Zapier.

Configure the Google Sheets trigger
Use the Google Sheets New or Updated Spreadsheet Row trigger and connect the Google account that owns the spreadsheet. Select:
- The spreadsheet
- The worksheet
Confirm each row includes:
- Email address (required)
- First name and last name
- Company (optional)
- Any custom fields you want passed into Salesforce
Configure Lusha enrichment
Add the Lusha Connect Search and Enrich Contacts action and connect Lusha with your API key. Map identifiers from the sheet:
- Work email (preferred)
- Full name and company name (fallback)
Common enrichment fields:
- Job title
- Seniority
- Department
- Company name
- LinkedIn URL
- Phone (where available)
Set your filter conditions
Add Filter by Zapier before the Salesforce step, so only the rows you want become leads. For example:
- Continue only if an email exists
- Skip personal email domains (e.g., gmail.com, yahoo.com)
- Continue only if Lusha found a match
Check the conditions against the template and adjust them to your needs.
Configure Salesforce lead creation
Add the Salesforce Create Lead action and connect the Salesforce org where leads should be created. Then map:
- Name
- Company
- Title
- Phone
- LinkedIn URL
- Any custom Salesforce fields used for routing or scoring
Test end-to-end
Add a row in Google Sheets and confirm that:
- The trigger fires
- Lusha returns enrichment data
- Rows that don’t meet your conditions stop at the filter
- The Salesforce lead is created with clean, populated fields
What to do next
- Add lead assignment rules: Route enriched leads to the right owner based on region, role, or company size.
- Score leads automatically: Use enriched seniority and firmographics to prioritize follow-up.
- Control enrichment usage: Skip rows already processed or enriched recently to save credits.
- Expand intake sources: Use the same pattern for event lists, webinar exports, or partner uploads.
- Measure impact: Compare conversion rates and time-to-first-touch for enriched vs. non-enriched sheet leads.
The goal: Sheets are a great intake tool, but Salesforce should stay clean. This workflow makes sure every row becomes an enriched, standardized Salesforce lead automatically, so your team can move fast without manual cleanup.
FAQ
Use this Zapier workflow. It watches your sheet for new or updated rows, enriches each contact with Lusha, and creates a lead in Salesforce.
An email address. First name, last name, and company help, but they’re optional.
Yes. Set the Filter by Zapier step to skip domains like gmail.com and yahoo.com before the lead is created.
No. The workflow creates a new lead in Salesforce and doesn’t change existing records.
It can. The trigger also runs when a row is updated, and the Create Lead step creates a new lead each time. To avoid duplicates, add new rows instead of editing existing ones.
Ready to run this?
One data connection. Works in Claude, ChatGPT, your CRM, or any agent you build.