Beginner~8 min setupCRM & EmailVerified April 2026
HubSpot logo
Gmail logo

How to Auto-Create HubSpot Contacts from Gmail with Zapier

Automatically create HubSpot contacts when you receive emails from new senders not already in your CRM database.

Steps and UI details are based on platform versions at time of writing — check each platform for the latest interface.

HubSpot Gmail extension exists as a native integration, but it requires manual setup per user and doesn't create contacts automatically. This guide uses an automation platform for full control. View native option →

Best for

Small sales teams getting under 100 prospect emails daily who want automatic lead capture without coding

Not ideal for

High-volume inboxes, teams needing complex lead scoring, or accounts that get mostly internal/spam emails

Sync type

polling

Use case type

import

Real-World Example

💡

A 12-person B2B SaaS startup uses this to capture leads from their info@ inbox. Before automation, sales reps manually copied email addresses into HubSpot 2-3 times daily and frequently missed prospects during busy periods. Now every potential customer email becomes a contact within 10 minutes, and they've increased lead capture by 40%.

What Will This Cost?

Drag the slider to your expected monthly volume.

/mo
505005K50K

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.

Gmail account with emails you want to monitor
HubSpot account with contact creation permissions
Zapier account (free tier works for low volume)
Recent emails in Gmail to test the trigger

Field Mapping

Map these fields between your apps.

FieldAPI Name
Required
Email Addressproperties.email
Lifecycle Stageproperties.lifecyclestage
4 optional fields▸ show
First Nameproperties.firstname
Last Nameproperties.lastname
Companyproperties.company
Lead Sourceproperties.hs_lead_source

Step-by-Step Setup

1

Dashboard > Create > Zaps

Create New Zap

Start building your automation by creating a new Zap in Zapier. This establishes the foundation for connecting Gmail to HubSpot.

  1. 1Log into Zapier and click the orange 'Create' button in the top navigation
  2. 2Select 'Zaps' from the dropdown menu
  3. 3Click 'Start from scratch' on the new Zap page
What you should see: You should see a blank Zap builder with 'Choose App & Event' as the first step.
2

Zap Builder > Trigger > Choose App & Event

Set Gmail as Trigger

Configure Gmail as your trigger app to monitor incoming emails. This will watch your Gmail inbox for new messages from unknown senders.

  1. 1Click 'Choose App & Event' in the trigger section
  2. 2Type 'Gmail' in the search box and select it
  3. 3Choose 'New Email' as the trigger event
  4. 4Click 'Continue' to proceed
What you should see: Gmail should appear as your trigger with 'New Email' selected as the event type.
Common mistake — Don't select 'New Email Matching Search' unless you want to filter by specific criteria upfront.
Zapier
+
click +
search apps
HubSpot
HU
HubSpot
Set Gmail as Trigger
HubSpot
HU
module added
3

Zap Builder > Trigger > Choose Account

Connect Gmail Account

Authenticate your Gmail account so Zapier can access your inbox. This creates a secure connection between Gmail and Zapier.

  1. 1Click 'Sign in to Gmail' button
  2. 2Enter your Google account credentials in the popup
  3. 3Grant Zapier permission to read your Gmail
  4. 4Click 'Yes, Continue to Gmail' to confirm the connection
What you should see: You should see a green 'Connected' status with your Gmail address displayed.
Common mistake — Make sure you're connecting the Gmail account where you want to monitor incoming emails.
Zapier settings
Connection
Choose a connection…Add
click Add
HubSpot
Log in to authorize
Authorize Zapier
popup window
Connected
green checkmark
4

Zap Builder > Trigger > Test

Test Gmail Trigger

Pull a sample email from your Gmail to verify the connection works. This ensures Zapier can access your email data properly.

  1. 1Click 'Test trigger' button
  2. 2Wait for Zapier to fetch recent emails from your inbox
  3. 3Select one of the sample emails from the list
  4. 4Click 'Continue with selected record'
What you should see: You should see email details like sender, subject, and body text in the test data panel.
Common mistake — The test will only show recent emails from the past few days, not your entire inbox history.
Zapier
▶ Turn on & test
executed
HubSpot
Gmail
Gmail
🔔 notification
received
5

Zap Builder > Action > Choose App & Event

Add HubSpot Action

Set up HubSpot as your action app to create new contacts. This defines what happens when Gmail triggers the automation.

  1. 1Click the '+' button below your Gmail trigger
  2. 2Search for 'HubSpot' and select it from the app list
  3. 3Choose 'Create Contact' as the action event
  4. 4Click 'Continue' to move forward
What you should see: HubSpot should appear as your action step with 'Create Contact' selected.
Common mistake — Don't select 'Create or Update Contact' if you only want to create new ones, not modify existing contacts.
6

Zap Builder > Action > Choose Account

Connect HubSpot Account

Authenticate your HubSpot account to enable contact creation. This establishes the secure connection needed to write data to your CRM.

  1. 1Click 'Sign in to HubSpot' button
  2. 2Log in with your HubSpot credentials
  3. 3Select your HubSpot account from the dropdown if you have multiple
  4. 4Click 'Connect' to authorize Zapier access
What you should see: You should see 'Connected' status with your HubSpot account name displayed.
Common mistake — Ensure you're connecting to the correct HubSpot portal if you manage multiple accounts.
7

Zap Builder > + > Filter

Add Contact Lookup Filter

Insert a filter step to check if the email sender already exists in HubSpot. This prevents duplicate contacts from being created for existing people.

  1. 1Click the '+' icon between Gmail trigger and HubSpot action
  2. 2Select 'Filter by Zapier' from the built-in apps
  3. 3Choose 'Only continue if...' as the filter type
  4. 4Set the condition to continue only if contact doesn't exist
What you should see: A filter step should appear between your Gmail trigger and HubSpot action.
Common mistake — This requires a HubSpot lookup step before the filter, which adds complexity but prevents duplicates.
HubSpot
HU
trigger
filter
Condition
matches criteria?
yes — passes through
no — skipped
Gmail
GM
notified
8

Zap Builder > Action > Set up Action

Map Contact Fields

Configure which Gmail data goes into which HubSpot contact fields. This determines how the email information becomes contact details in your CRM.

  1. 1Click in the 'Email' field and select 'From Email' from Gmail data
  2. 2Click in the 'First Name' field and map it to the sender's first name
  3. 3Click in the 'Last Name' field and map it to the sender's last name
  4. 4Add any additional fields like Company if available
What you should see: You should see Gmail field mappings populated in the HubSpot contact form fields.
Common mistake — Gmail doesn't always parse names correctly from email addresses, so you might get incomplete name data.
HubSpot fields
firstname
lastname
email
company
hs_lead_status
available as variables:
1.props.firstname
1.props.lastname
1.props.email
1.props.company
1.props.hs_lead_status
9

Zap Builder > Action > Set up Action

Set Contact Properties

Configure additional HubSpot properties to tag these auto-created contacts. This helps you identify contacts created through automation versus manual entry.

  1. 1Scroll down to 'Lead Source' and set it to 'Email'
  2. 2Set 'Lifecycle Stage' to 'Lead' or your preferred stage
  3. 3Add a custom property like 'Created by Zapier' with value 'true'
  4. 4Leave optional fields blank unless you have specific data to map
What you should see: Additional contact properties should be configured with appropriate default values.
Common mistake — Don't set lifecycle stage to 'Customer' for unknown email senders - start with 'Lead' or 'Subscriber'.
10

Zap Builder > Action > Test

Test HubSpot Action

Run a test to verify the contact creation works properly. This confirms your field mapping and HubSpot connection are functioning correctly.

  1. 1Click 'Test action' button at the bottom
  2. 2Wait for Zapier to attempt creating a contact in HubSpot
  3. 3Review the success message and contact ID returned
  4. 4Check your HubSpot contacts list to verify the test contact appeared
What you should see: You should see a success message with the new HubSpot contact ID and confirmation details.
Common mistake — The test will create a real contact in HubSpot, so you might want to delete the test record afterward.
11

Zap Builder > Action > Settings > Error Handling

Configure Error Handling

Set up error handling to manage failures gracefully. This prevents the Zap from breaking when it encounters issues like invalid email formats or HubSpot API errors.

  1. 1Click on the gear icon next to the HubSpot action
  2. 2Select 'Error Handling' from the menu
  3. 3Choose 'Stop Task' instead of 'Skip and Continue'
  4. 4Enable email notifications for errors
What you should see: Error handling should be configured to stop on errors and notify you when issues occur.
Common mistake — 'Skip and Continue' will silently fail and you won't know contacts weren't created.
12

Zap Builder > Publish

Turn On Your Zap

Activate your automation to start monitoring Gmail and creating HubSpot contacts. This puts your workflow into production mode.

  1. 1Click the 'Publish' button in the top right corner
  2. 2Review your Zap configuration on the summary screen
  3. 3Click 'Turn on Zap' to activate it
  4. 4Verify the status shows 'On' in your Zaps dashboard
What you should see: Your Zap should show as 'On' status and begin monitoring your Gmail inbox for new emails.
Common mistake — Once live, every new email will trigger the automation, so make sure your filters are working correctly.

Drop this into a Zapier Code step.

JavaScript — Code Step{{email | extract_domain}} to get company domain from email address, or use Formatter 'Extract Email Address' to clean 'Name <[email protected]>' format into just '[email protected]'
▸ Show code
{{email | extract_domain}} to get company domain from email address, or use Formatter 'Extract Email Address' to clean 'Name <[email protected]>' format into just '[email protected]'

... expand to see full code

{{email | extract_domain}} to get company domain from email address, or use Formatter 'Extract Email Address' to clean 'Name <[email protected]>' format into just '[email protected]'

Scaling Beyond 100+ emails/day+ Records

If your volume exceeds 100+ emails/day records, apply these adjustments.

1

Add Smart Filters

Filter out automated emails using sender patterns like noreply@, no-reply@, and mailer-daemon@. This can reduce task usage by 60-80% on high-volume inboxes.

2

Use HubSpot Lookup First

Add a 'Find Contact in HubSpot' action before creating contacts. This prevents duplicates and only consumes tasks for genuinely new prospects.

3

Consider Gmail Labels

Switch to 'New Email Matching Search' trigger with a specific Gmail label. This gives you manual control over which emails create contacts instead of processing everything.

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

VerdictWhy Zapier for this workflow

Use Zapier for this if you receive fewer than 100 new prospect emails per day and your team doesn't have developer resources. The setup takes 15 minutes and works reliably for small sales teams. Skip Zapier if you need complex lead scoring or custom field logic - HubSpot workflows handle that better natively.

Cost

This workflow uses 1 task per email processed. At 50 prospect emails per month, that's 50 tasks total. That fits Zapier's free tier (100 tasks/month). At 300 emails monthly, you'll need the Starter plan at $20/month. Make would cost $9/month for the same volume, making it 55% cheaper for higher volumes.

Tradeoffs

Make offers better duplicate detection with its built-in HubSpot search modules and costs less at scale. N8n provides more flexible email parsing and can extract names from signatures more reliably than Zapier's basic field mapping. But Zapier wins on setup speed and reliability - Make requires understanding array operations for duplicate checking, and N8n needs technical knowledge to parse email headers properly.

You'll hit Gmail's polling delay first - new emails take 5-15 minutes to trigger the automation. HubSpot's API occasionally returns validation errors for email addresses that look valid, especially with international domains. Zapier's name parsing from email addresses is basic, so contacts created from [email protected] addresses will have incomplete names that need manual cleanup.

Ideas for what to build next

  • Set Up Lead ScoringAdd HubSpot workflow rules to automatically score new contacts based on email domain, company size, or other enrichment data.
  • Create Follow-up SequencesBuild HubSpot sequences to automatically send welcome emails or schedule follow-up tasks for sales reps when new contacts are created.
  • Add Slack NotificationsCreate a second Zap to notify your sales team in Slack whenever a high-value prospect (based on domain or other criteria) gets added to HubSpot.

Related guides

Was this guide helpful?
HubSpot + Gmail overviewZapier profile →