How-to guide · You set it up
Send open house leads to HubSpot
HubSpot is not a real estate CRM, so nothing in it knows what a buying timeframe is until you make it. Here is the setup, including the custom properties you have to create first and the reason a phone-only sign-in will not save.
Who is actually doing the connecting
You are. Open House Console does not plug into HubSpot, and this page is not an announcement that it does. We post every new sign-in to whatever URL you give us. You catch it in your own Zapier account, with your own HubSpot login, and you decide where each field lands. Nobody has to approve anything, which is exactly why this works with a CRM that has never heard of us.
Why Create or Update Contact
HubSpot's Zapier app has more than sixty actions, and Create or Update Contact is the one that does this job in a single step: it creates a new contact or updates an existing one, keyed on the email address. The key is also the catch, and it is the reason this page has a step nobody else needs.
The HubSpot app on Zapier (opens in a new tab). Checked on 2026-08-29. Action names and fields on this page come from that listing, not from us.
Step by step
Setting it up, start to finish
The first 3 are the same for every CRM. The rest are specific to this one.
1Start a Zap with Webhooks by Zapier
In your own Zapier account, create a Zap and choose Webhooks by Zapier as the trigger, then the Catch Hook event. Zapier gives you a URL that is yours alone. Nothing here runs through us, and your CRM login never leaves your Zapier account.
2Paste that URL into your profile
Open your Open House Console dashboard, go to Profile, and paste the URL into the CRM / Zapier field. Save. From that moment, every visitor who signs in at any of your open houses is posted to that address as JSON, in the background, without slowing down the screen in front of them.
3Do one test sign-in so Zapier learns the shape
Open your own sign-in page and fill it in as if you were a visitor, answering every question you have turned on. Zapier catches that first lead and uses it to build the list of fields you can map. Skipping a question here means Zapier never sees that field and you cannot select it later, so answer them all, then delete the test lead from your dashboard.
4Create the custom properties before you build the Zap
HubSpot has no idea what financing status or a buying timeframe is, because it was not built for this. In HubSpot settings, under Properties, create contact properties for the answers you collect: open house address as single line text, financing status and buying timeframe as dropdowns with the exact values we send, has an agent and home to sell as checkboxes. Check what your HubSpot plan allows before you plan on five of them. Do this first, because a property that does not exist yet will not appear in Zapier's field list, and you will build the whole Zap wondering where it went.
5Add a filter for the sign-ins with no email address
Create or Update Contact matches on email, so a sign-in with no email has nothing to match on and the step fails. Our email field is empty whenever you have turned that question off or a visitor left it blank. Add a Zapier filter before the HubSpot step so the Zap only continues when an email is present, and route the rest somewhere you will see them rather than letting them pile up as failed runs.
6Split the name into HubSpot's two properties
HubSpot keeps first name and last name as separate contact properties. Add Formatter by Zapier, Text, Split Text on a space, and map the segments. Neither is required by this action, so a one-word name still saves.
7Map the answers into the properties you just made
Now the custom properties from step one appear in Zapier's field list and you can map our fields onto them one by one. If you chose dropdowns, the values have to match exactly, so either type our wording into HubSpot when you create the options or put a Formatter lookup table in between. A dropdown that silently rejects a value is a field that stays empty forever without telling you.
Field mapping
What goes where in HubSpot
Left is what we send. Right is the field on that action, named the way it names itself.
| We send | Put it in | Watch for |
|---|---|---|
lead.email | Contact Email | Required. This is what the upsert keys on. |
lead.name | First Name | After a Formatter split; segment two goes to Last Name. |
lead.phone | Phone Number | Arrives as (512) 555-0148; convert if you dial from HubSpot. |
open_house.address | Open house address | A custom property you create in step one. |
lead.financing_status | Financing status | Custom property. Match the dropdown values exactly. |
lead.buying_timeframe | Buying timeframe | Custom property, same treatment. |
lead.has_agent | Has an agent | Custom checkbox property. Arrives as true or false. |
lead.home_to_sell | Home to sell | Custom checkbox property. |
lead.custom_answers | Note | Readable text. Do not build a custom property per question. |
Every field except the name, the open house and the timestamp can be empty, because you choose which questions your sign-in form asks.
Before you turn it on
What goes wrong with HubSpot
A phone-only sign-in cannot reach HubSpot through this action at all. That is not a limitation you can configure away, so if you regularly turn the email question off at the door, decide whether HubSpot is the right destination for that traffic before an event rather than during one.
Do not build a custom property for every custom sign-in question. Questions change from listing to listing, and a HubSpot account eventually full of one-off properties is harder to work than a note you can read.
HubSpot's app also lists Create Form Submission, which some people prefer because the lead appears on the timeline as a submission rather than as a bare contact. It is more setup for a difference in presentation. Create or Update Contact is the simpler of the two and the one these steps use.
Reference
Exactly what we post
One of these arrives the moment a visitor finishes signing in, in the background, once per sign-in.
{
"event": "lead.created",
"lead": {
"name": "Dana Whitfield",
"email": "dana.whitfield@example.com",
"phone": "(512) 555-0148",
"has_agent": false,
"financing_status": "Pre-approved",
"buying_timeframe": "0-3 months",
"home_to_sell": true,
"home_to_sell_address": "1140 Cedar Bend Dr",
"custom_answers": [
{
"question": "How did you hear about this open house?",
"answer": "The sign on the corner"
}
]
},
"open_house": {
"id": "6f0a1c8e-2b77-4c1e-9a0b-3d5e7f911c24",
"address": "482 Maple Ridge Ln, Austin, TX 78704"
},
"captured_at": "2026-08-29T21:04:11.302Z"
}Two details catch people out. The name is one string, exactly as the visitor typed it, so a CRM that wants a first and a last name needs a Formatter step in between. And the phone arrives formatted the way we store it, as (512) 555-0148, so anything that expects the plus-one form needs converting too.
Your CRM is the destination, not the system of record. Every lead is still in your Open House Console dashboard with its notes and follow-up status, so a Zapier task that fails at midnight cannot lose you a visitor.
FAQ
Common questions
Does Open House Console plug into HubSpot?+
No, and nothing on this page says it does. Open House Console posts every new sign-in to whatever URL you put in your profile. You are the one who catches it in your own Zapier account and points it at HubSpot, using your own HubSpot login. Neither company has to agree to anything, which is precisely why this works today rather than waiting for two software companies to find time to talk.
Why do I have to build properties by hand?+
Because HubSpot is a general purpose CRM. A real estate CRM ships with a timeframe field; HubSpot ships with the ability for you to make one. That is a one-time twenty minute job and it is why HubSpot ends up more flexible than the specialised ones once it is set up.
What happens to a visitor who leaves the email blank?+
The HubSpot step fails, because the upsert keys on email. The filter in these steps stops that from happening. That visitor is still saved in your Open House Console dashboard with their phone number, so you have not lost them, you just have to call rather than route.
HubSpot changed something and this page is now wrong? Tell us and we will fix it or take the page down. support@openhouseconsole.com
Other CRMs
Using something else?
Same webhook, different fields at the far end.
Back to every CRM walkthrough →
Keep reading
Free open house guides
Written by working agents. No signup, no email, nothing to download.
Or read the open house blog →
Capture the lead first. Routing it is the easy part.
Open House Console runs the sign-in on a laptop at the door, or on a phone the visitor already has in their hand, then hands the lead to your dashboard and to whatever URL you point us at. Free for 7 days.
Nothing charged today · or log in