If you’re juggling leads or customer info between Typeform and HubSpot, you already know manual updates are a waste of time. You want your Typeform responses to show up in HubSpot — accurately and automatically. This guide is for you: marketers, salespeople, or anyone tired of copy-pasting between tools.
We’ll walk through connecting Typeform to HubSpot using Zapier, so every new form response updates your contact records. No code, no fluff, and no promises of “seamless automation” (because, let’s be real, there are always quirks).
What You’ll Need (and What to Skip)
Before we dive in, here’s what you really need:
- A Typeform account (with at least one live form)
- A HubSpot account (the free tier works, but you’ll need Contacts access)
- A Zapier account (free is fine for basics)
- Basic understanding of your HubSpot fields (so you know where you want data to go)
You don’t need:
- Any coding skills
- Paid plans, unless you’re doing lots of volume
- Fancy HubSpot workflows or extra Typeform integrations
Pro Tip:
If you’ve got a very custom setup or huge data volumes, this process might hit limits. Otherwise, it’s the fastest way to stop doing things twice.
Step 1: Map Out What You Want to Update
Don’t skip this. Before messing with Zapier, get clear on:
- Which Typeform fields should update which HubSpot fields?
- E.g., Email → Email, First Name → First Name, “What’s your main challenge?” → Notes
- What happens if a contact already exists?
- Do you want to update, overwrite, or add info?
- Are there any fields you don’t want to touch?
- Sometimes you want to write to a custom field, not overwrite the main one.
Jot this down somewhere. It’ll save you headaches in Zapier’s mapping step.
Step 2: Connect Typeform to Zapier
-
Log into Zapier.
If you don’t have an account, it’s quick to set up. -
Create a new Zap.
Hit “Create Zap”—no need for fancy names yet. -
Choose Typeform as the trigger app.
- Select the “New Entry” trigger.
- Connect your Typeform account (you’ll need to log in and authorize Zapier).
-
Pick the form you want to use.
-
Test the trigger.
- Zapier will pull in sample data. If your form’s new, submit a fake entry to give Zapier something to find.
Watch out for:
- If your form changes later (fields added/removed), your Zap can break or stop updating the right fields.
- Typeform’s free plan supports Zapier, but rate limits can slow things down if you’re doing high volume.
Step 3: Set Up Your HubSpot Action
Here’s where most people get tripped up — Zapier’s HubSpot integration isn’t magic, but it’s solid if you know what you want.
- Add an action step.
- Choose HubSpot as the app.
-
Pick “Create or Update Contact.”
-
Connect your HubSpot account.
- You’ll have to log in and authorize access.
-
If you’re in a big org, you may need admin rights.
-
Map your fields.
- For “Email,” map the email question from Typeform.
This is required—HubSpot uses email as the unique identifier. - Map other fields as needed (First Name, Last Name, custom properties, etc.).
-
If you want to add notes or non-standard info, map those to custom fields you’ve created in HubSpot.
-
Choose how to handle duplicates.
- “Create or Update Contact” will update existing contacts if the email matches.
-
It will overwrite existing info in mapped fields, so be careful. If you only want to update certain fields, don’t map the others.
-
Test your action.
- Zapier will try to send a test contact to HubSpot.
- Check HubSpot: did it update the right contact and fields?
What to ignore:
- Don’t bother with “Find Contact” + “Update Contact” steps unless you need weird logic. The built-in “Create or Update” does the job for 99% of cases.
Step 4: Turn on Your Zap and Test With Real Data
You’re not done until you see real data move.
-
Turn your Zap on.
-
Submit another real entry in Typeform.
-
Use a real email (test with your own).
-
Check HubSpot.
- Did the contact update? Did the right fields change?
- If something’s off, check your Zap’s field mapping.
Gotchas: - If the email address doesn’t match any existing contact, HubSpot will create a new one. - Zapier doesn’t retroactively sync old Typeform responses—only new ones after the Zap is live. - HubSpot free plans limit the number of custom properties. If you hit that wall, you’ll need to delete or consolidate fields.
Step 5: Clean Up and Tweak
Now, a few optional—but smart—things to do:
- Rename your Zap something clear (“Typeform to HubSpot Contact Update”).
- Add filters in Zapier if you only want to update contacts when a certain answer is given (e.g., “Only update if ‘Newsletter Opt-in’ is Yes”).
- Set up notifications (like an email or Slack alert) if you want to know when new contacts come in.
- Document your field mappings somewhere. Future-you (or your team) will thank you.
Honest advice:
Don’t overcomplicate your Zap. Start simple. You can always add branches, filters, or extra actions later if you find you need them.
What Works Well (and What Doesn’t)
Works great for: - Basic contact info updates (email, name, company, notes) - Adding new leads or updating existing ones on the fly - Keeping Typeform and HubSpot in sync for straightforward forms
Where it stumbles: - Complex multi-step logic (e.g., “If this, then update that, else skip”) - Large-scale data migrations (Zapier’s not built for massive bulk updates) - Updating multiple related HubSpot records (like deals or companies—not just contacts)
Not worth your time: - Chasing “perfect” automation from day one. Get the basics right, then refine.
Summary: Keep It Simple, Iterate as Needed
Connecting Typeform and HubSpot with Zapier isn’t rocket science, but it does take a bit of planning. Map your fields, test everything, and don’t try to automate every edge case up front. Start with the basics—updating contacts from new Typeform entries—then tweak as you see how it works in real life.
If something’s acting weird, check your field mappings and test with sample data. Most issues are fixable with a quick field tweak or a filter step.
Bottom line: Let Zapier handle the busywork so you can focus on actual conversations, not data entry. Keep it simple, and don’t be afraid to revisit your setup as your needs change.