

How to Import Event Leads from Google Sheets to HubSpot with Zapier
Automatically create HubSpot contacts with event tags whenever you add leads to a Google Sheet.
Steps and UI details are based on platform versions at time of writing β check each platform for the latest interface.
Best for
Teams importing under 200 event leads monthly who want reliable automation without coding
Not ideal for
High-volume events with 500+ leads or teams needing complex data transformation before import
Sync type
pollingUse case type
importReal-World Example
A 12-person B2B software company uses this after trade shows and webinars. Their sales team previously spent 30+ minutes manually entering leads from business cards and signup sheets into HubSpot. Now they paste leads into a Google Sheet on-site and contacts appear in HubSpot tagged with the event name within minutes. This lets reps start follow-up calls the same day instead of waiting for manual data entry.
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
Before You Start
Make sure you have everything ready.
Field Mapping
Map these fields between your apps.
| Field | API Name | |
|---|---|---|
| Required | ||
email | ||
| First Name | firstname | |
| Event Source | lead_source | |
4 optional fieldsβΈ show
| Last Name | lastname |
| Company | company |
| Phone Number | phone |
| Job Title | jobtitle |
Step-by-Step Setup
Dashboard > Create Zap > Google Sheets
Create your trigger in Zapier
Set up the Google Sheets trigger to watch for new leads. This will fire whenever you add a row to your event spreadsheet.
- 1Click 'Create Zap' from your Zapier dashboard
- 2Search for 'Google Sheets' and select it as your trigger app
- 3Choose 'New Spreadsheet Row' as the trigger event
- 4Click 'Continue' to proceed to authentication
Trigger > Google Sheets > Account
Connect your Google account
Authenticate your Google account so Zapier can access your spreadsheets. You'll need edit permissions on the target sheet.
- 1Click 'Sign in to Google Sheets'
- 2Select your Google account from the popup
- 3Click 'Allow' to grant Zapier spreadsheet permissions
- 4Verify the green 'Connected' status appears
Trigger > Google Sheets > Spreadsheet
Select your event leads spreadsheet
Choose the specific Google Sheet where you'll paste event leads. This must be an existing spreadsheet with column headers.
- 1Click the 'Spreadsheet' dropdown menu
- 2Select your event leads Google Sheet from the list
- 3Choose the specific worksheet tab (usually 'Sheet1')
- 4Click 'Continue' to move to the test step
Trigger > Google Sheets > Test
Test the Google Sheets trigger
Zapier will pull a sample row from your spreadsheet to use for mapping. Add a test lead first if your sheet is empty.
- 1Click 'Test trigger' to fetch sample data
- 2Review the sample row data that appears
- 3Verify all your column headers are captured correctly
- 4Click 'Continue with selected record' if the data looks right
Action > HubSpot > Create Contact
Add HubSpot as your action app
Set up HubSpot to receive the lead data. You'll create new contacts with an event tag for each row.
- 1Click the '+' button to add an action step
- 2Search for 'HubSpot' in the app directory
- 3Select HubSpot from the results
- 4Choose 'Create Contact' as your action event
Action > HubSpot > Account
Connect your HubSpot account
Authenticate with HubSpot to allow contact creation. You need write permissions on contacts and custom properties.
- 1Click 'Sign in to HubSpot'
- 2Enter your HubSpot login credentials
- 3Select your HubSpot portal if you have multiple
- 4Click 'Allow access' to grant permissions
Action > HubSpot > Contact Fields
Map lead fields to HubSpot properties
Connect your spreadsheet columns to HubSpot contact fields. This determines what data gets imported for each lead.
- 1Click in the 'Email' field and select your email column from Google Sheets
- 2Map 'First Name' and 'Last Name' to their respective spreadsheet columns
- 3Set 'Company' to your company column if you have one
- 4Add your phone number column to the 'Phone Number' field
Action > HubSpot > Custom Properties
Add the event tag to contacts
Tag all imported leads with your event name for easy segmentation. Create a custom property if you don't have one.
- 1Scroll down to find 'Lead Source' or create a custom 'Event' property
- 2Click 'Use a Custom Value' instead of mapping from sheets
- 3Type your event name like 'Trade Show 2024' or 'Webinar Jan 2024'
- 4Verify the tag appears in the field
Action > HubSpot > Test
Test the HubSpot contact creation
Run a test to verify the lead imports correctly with all fields mapped. This creates a real contact in HubSpot.
- 1Click 'Test action' to send sample data to HubSpot
- 2Wait for the success message to appear
- 3Review the contact details that were created
- 4Check that your event tag was applied correctly
Zap Settings > Name & Status
Turn on your Zap
Activate the automation so it runs whenever you add leads to your spreadsheet. Give it a descriptive name first.
- 1Click the pencil icon to edit the Zap name
- 2Name it something like 'Event Leads to HubSpot - [Event Name]'
- 3Click the toggle switch to turn the Zap on
- 4Confirm activation when prompted
Drop this into a Zapier Code step.
Copy this template{{trim(firstname)}} {{trim(lastname)}}βΈ Show code
{{trim(firstname)}} {{trim(lastname)}}... expand to see full code
{{trim(firstname)}} {{trim(lastname)}}Scaling Beyond 200+ leads per event+ Records
If your volume exceeds 200+ leads per event records, apply these adjustments.
Switch to Make for batch processing
Make can process multiple rows in a single execution, avoiding Zapier's per-task charges. At 500+ leads, Make's $9/month unlimited plan beats Zapier's $50+ monthly cost.
Use Google Sheets' import functions
Instead of manual pasting, use IMPORTDATA or Google Forms to populate your sheet. This spreads row creation over time and avoids API rate limits from bulk additions.
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 Zapier for this if you're importing under 200 leads per event and your team doesn't code. The guided setup takes 15 minutes and handles duplicate detection through HubSpot's email matching. The trigger fires within 2-3 minutes of adding a row to your sheet. Skip Zapier if you're importing 500+ leads regularly β Make's unlimited operations plan at $9/month handles high volume better than Zapier's task-based pricing.
This workflow uses 1 task per lead imported. At 100 leads per event with 2 events monthly, that's 200 tasks β well within Zapier's free 100 tasks plus a $20/month Starter plan. Make would cost $9/month for unlimited operations on the same volume. N8n is free but requires hosting. For occasional events under 200 leads, Zapier's $20/month is simpler than managing N8n infrastructure.
Make handles batch operations better β you can import 100 leads in one execution instead of 100 separate runs. N8n offers better data transformation if your sheet format doesn't match HubSpot's requirements exactly. But Zapier wins on reliability β Google Sheets integration rarely breaks and HubSpot's webhook delivery is rock solid. Make's Google Sheets module occasionally misses new rows during high-frequency additions.
Google Sheets API has a 100 requests per 100 seconds rate limit that can cause delays when importing large batches quickly. If you paste 50+ leads at once, Zapier may throttle and process them over 10-15 minutes instead of immediately. HubSpot's contact creation API returns cryptic error messages for malformed phone numbers β clean your data format before import. The automation won't catch leads added above existing rows, only new rows at the bottom of your sheet.
Ideas for what to build next
- βAdd Slack notifications for new event leads β Create a second Zap that posts to #sales when HubSpot contacts are created with your event tag.
- βSet up automated follow-up sequences β Use HubSpot workflows to enroll event-tagged contacts in email nurture campaigns based on their lead source.
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