

How to Import Leads from Google Sheets to Salesforce with Make
Automatically create or update Salesforce leads whenever new rows are added to your Google Sheets prospecting list.
Steps and UI details are based on platform versions at time of writing β check each platform for the latest interface.
Best for
Sales teams importing 50-500 leads monthly from Google Sheets with specific field mapping requirements.
Not ideal for
One-time bulk imports over 1000 records or teams needing instant lead sync faster than 15 minutes.
Sync type
pollingUse case type
importReal-World Example
A 20-person B2B software company downloads 300 prospect lists monthly from trade shows and LinkedIn campaigns into Google Sheets. Before automation, their sales ops person manually imported leads into Salesforce every few days, often missing hot prospects for 48+ hours. Now leads appear in Salesforce within 15 minutes of being added to the sheet, and duplicate checking prevents the same prospect from being contacted by multiple reps.
What Will This Cost?
Drag the slider to your expected monthly volume.
Each platform counts differently β Zapier: 1 task per trigger. Make: 1 operation per module per record. n8n: 1 execution per run.





Prices shown for annual billing. Based on published pricing as of April 2026.
Estimated ROI
1000
min saved/mo
$583
labor value/mo
Free
no platform cost
Based on ~2 min manual effort per operation at $35/hr fully loaded labor cost.
Implementation
Import this workflow directly into Make
Copy the pre-built Make blueprint and paste it straight into Make. All modules, filters, and field mappings are already configured β you just need to connect your accounts.
Before You Start
Make sure you have everything ready.
Field Mapping
Map these fields between your apps.
| Field | API Name | |
|---|---|---|
| Required | ||
| Company Name | Company | |
| Last Name | LastName | |
5 optional fieldsβΈ show
| First Name | FirstName |
| Email Address | Email |
| Phone Number | Phone |
| Job Title | Title |
| Lead Source | LeadSource |
Step-by-Step Setup
Scenarios > Create new > Google Sheets > Watch Rows
Create a new scenario
Start a fresh scenario in Make and select Google Sheets as your trigger app. This will monitor your spreadsheet for new lead data.
- 1Click the orange 'Create a new scenario' button from your dashboard
- 2Click the center circle with the '+' icon
- 3Search for 'Google Sheets' and select it from the app list
- 4Choose 'Watch Rows' as your trigger module
Module settings > Connection > Add
Connect your Google account
Authorize Make to access your Google Sheets. You'll need edit permissions on the spreadsheet containing your leads.
- 1Click 'Add' next to the Connection field
- 2Select 'Google (restricted)' for better security
- 3Click 'Continue' and sign in with your Google account
- 4Grant Make permission to access your Google Sheets
Module settings > Spreadsheet selection
Select your leads spreadsheet
Point Make to the specific Google Sheet containing your lead data. Make sure the first row contains column headers.
- 1Click the Spreadsheet dropdown and select your leads sheet
- 2Choose the specific sheet tab from the Sheet dropdown
- 3Set 'Table contains headers' to Yes
- 4Leave 'Row with headers' as 1 unless your headers are elsewhere
Module testing > Run once
Test the Google Sheets trigger
Run a test to verify Make can read your spreadsheet data. This populates the field mapping options for Salesforce.
- 1Click 'OK' to save the Google Sheets configuration
- 2Click 'Run once' at the bottom of the screen
- 3Wait for Make to process (usually 3-5 seconds)
- 4Click on the Google Sheets module to view the sample data
Scenario > Add module > Salesforce > Create a Record
Add Salesforce module
Insert a Salesforce module to create leads from your sheet data. Position it after the Google Sheets trigger.
- 1Click the white circle with '+' to the right of Google Sheets
- 2Search for 'Salesforce' in the app selector
- 3Select 'Salesforce' from the results
- 4Choose 'Create a Record' as your action
Salesforce module > Connection > Add
Connect to Salesforce
Link your Salesforce org to Make using either username/password or OAuth. OAuth is more secure for production use.
- 1Click 'Add' next to Connection in the Salesforce module
- 2Choose 'Salesforce (OAuth)' for production or 'Salesforce' for testing
- 3Enter your Salesforce login URL (login.salesforce.com or custom domain)
- 4Sign in with your Salesforce credentials and grant access
Salesforce module > Record configuration
Configure lead record type
Set Salesforce to create Lead records from your sheet data. Select the record type if your org uses multiple lead types.
- 1Set 'Record Type' dropdown to 'Lead'
- 2If you see 'Select Record Type', choose your default lead type
- 3Leave 'Upsert' unchecked for now - we'll handle duplicates separately
Salesforce module > Field mapping
Map required lead fields
Connect your spreadsheet columns to required Salesforce lead fields. Company and LastName are mandatory in most Salesforce orgs.
- 1Click in the 'Company' field and select your company column from Google Sheets
- 2Map 'LastName' to your last name or full name column
- 3Map 'FirstName' if you have a separate first name column
- 4Set 'Email' field to your email column from the sheet
Salesforce module > Additional field mapping
Map additional lead fields
Connect remaining spreadsheet columns to relevant Salesforce fields like phone, lead source, and status for complete lead records.
- 1Scroll down to find 'Phone' and map it to your phone column
- 2Set 'LeadSource' to a static value like 'Spreadsheet Import' or map to a sheet column
- 3Map 'Title' field if your sheet includes job titles
- 4Add any custom fields your sales team requires
Complete scenario > Run once
Test the complete workflow
Run the full scenario to verify leads are created correctly in Salesforce. Check that all mapped fields contain the expected data.
- 1Click 'OK' to save the Salesforce module settings
- 2Click 'Run once' to execute the complete scenario
- 3Wait for both modules to process (green checkmarks)
- 4Check your Salesforce org for the new lead record
Salesforce module > Tools > Error handling
Enable duplicate handling
Add logic to prevent creating duplicate leads when the same email appears multiple times in your sheet or across imports.
- 1Click the wrench icon on the Salesforce module
- 2Select 'Add error handling'
- 3Choose 'Resume' as the error handling type
- 4Set it to continue processing even if duplicates are found
Scenario controls > Scheduling
Activate the scenario
Turn on automatic monitoring so new spreadsheet rows trigger lead creation immediately. Set the schedule based on how quickly you need leads processed.
- 1Click the toggle switch at the bottom left to turn scenario ON
- 2Click the clock icon to set scheduling
- 3Choose 'Every 15 minutes' for regular imports or 'Every 5 minutes' for urgent leads
- 4Click 'OK' to save and activate
Drop this into a Make custom function.
JavaScript β Custom Function{{if(contains(lower(2.Email); "gmail"); "Personal"; "Business")}}βΈ Show code
{{if(contains(lower(2.Email); "gmail"); "Personal"; "Business")}}... expand to see full code
{{if(contains(lower(2.Email); "gmail"); "Personal"; "Business")}}Scaling Beyond 500+ leads/month+ Records
If your volume exceeds 500+ leads/month records, apply these adjustments.
Add batch processing
Use Make's Array Aggregator to group multiple sheet rows and process them together. This reduces API calls and prevents hitting Salesforce's daily API limits.
Implement lead scoring
Add a Router module to send high-value leads (based on company size or title) to different Salesforce campaigns or assignment rules. This prevents hot prospects from getting lost in bulk imports.
Going live
Production Checklist
Before you turn this on for real, confirm each item.
Troubleshooting
Common errors and how to fix them.
Frequently Asked Questions
Common questions about this workflow.
Analysis
Use Make for this if you need reliable lead imports with complex field mapping or data transformation. Make handles Salesforce's required fields better than most platforms and gives you granular control over duplicate handling. The visual editor makes it easy to add validation rules or route leads to different Salesforce objects based on criteria. Skip Make if you just need basic one-to-one field mapping - Zapier's interface is simpler for straightforward imports.
This workflow uses 2 operations per row: one to detect the new Google Sheets row and one to create the Salesforce lead. At 200 leads per month, that's 400 operations total. Make's Core plan ($9/month) includes 10,000 operations, so you're well within limits. Zapier would cost $20/month for the same volume since their Starter plan only covers 100 Salesforce tasks. Make saves you $132 yearly on this workflow alone.
Zapier handles Salesforce duplicate detection more elegantly - their built-in 'Find or Create' action checks for existing leads automatically without requiring error handling setup. N8n offers better customization for lead scoring or complex data validation since you can write custom JavaScript functions. But Make strikes the right balance for most teams: more powerful than Zapier's simple field mapping, less complex than N8n's coding requirements.
Google Sheets API paginates at 100 rows, so bulk imports of 500+ leads require Make's iterator module to process in batches. Salesforce enforces strict email validation that many spreadsheets violate - expect 5-10% of rows to fail on malformed email addresses. Make's scheduling runs every 15 minutes minimum, so urgent leads from your sheet won't appear in Salesforce instantly. Phone number formatting is another gotcha - Salesforce expects (555) 123-4567 format but most sheets contain inconsistent formats that need cleaning.
Ideas for what to build next
- βAdd lead assignment automation β Create a second scenario that assigns imported leads to sales reps based on territory, company size, or industry using Salesforce's assignment rules.
- βSet up Slack notifications for hot leads β Add a filter for high-value prospects (enterprise companies, C-level titles) and send immediate Slack alerts to your sales team when these leads are imported.
- βCreate a lead import log β Build a tracking sheet that logs successful imports, failed records, and duplicate attempts to help your sales ops team monitor data quality and import success rates.
Related guides
How to Share Notion Meeting Notes to Slack with Pipedream
~15 min setup
How to Share Notion Meeting Notes to Slack with Power Automate
~15 min setup
How to Share Notion Meeting Notes to Slack with n8n
~20 min setup
How to Send Notion Meeting Notes to Slack with Zapier
~8 min setup
How to Share Notion Meeting Notes to Slack with Make
~12 min setup
How to Create Notion Tasks from Slack with Pipedream
~15 min setup