A new customer just signed up. Your customer success team needs to know their goals, tech stack, team structure, and timeline before the kickoff call. Right now, someone sends a Google Form, manually copies the responses into HubSpot, and pastes notes into the deal record. It works, but it doesn't scale, and data gets lost every time a human is the integration layer.
An onboarding intake form built with involve.me collects everything your CS team needs, maps it directly to HubSpot custom fields and default contact properties, and triggers the right onboarding workflow automatically. No copy-pasting. No data loss. The customer fills in the form, and those HubSpot custom fields update in real time.
This guide walks you through building a complete onboarding intake system in involve.me, integrating it with HubSpot, and tracking the data that drives faster time-to-value and higher retention.
Why Your Onboarding Intake Form Needs HubSpot Custom Fields
The intake form is the bridge between sales and customer success. Sales closed the deal based on promises. CS delivers on those promises. Without a structured handoff, CS starts every relationship from scratch, re-asking questions the customer already answered during the sales process, missing context that would make onboarding faster, and creating a poor first impression.
A well-designed intake form solves three problems at once:
For the customer: One form, 5–10 minutes, and they've told you everything you need. No redundant meetings. No repeated questions. They feel like your team is prepared and organised.
For CS: Structured data arrives in HubSpot custom fields before the kickoff call. The CSM knows the customer's goals, technical environment, team members who need access, and implementation timeline. They walk into the call with a draft onboarding plan.
For the business: Every customer's onboarding data is captured consistently. You can analyse patterns: which goals correlate with retention? Which tech stacks require more implementation support? Which team sizes need the most hand-holding?
Designing the Intake Form
Section 1: Company & Team Context
"Company name" (text input, pre-filled if possible via URL parameter)
"Your name and role" (text input)
"Who else on your team will use [Product]?" — collect additional team members using separate contact form fields or across multiple pages (Note: involve.me does not have a native "repeating field group" element. Collect team member details by adding individual sets of name, email and role fields, or spread them across pages using conditional logic.)
"What department is leading this implementation?" (Single choice: Marketing / Sales / Revenue Operations / Customer Success / Product / IT / Engineering / Other)
Section 2: Goals and Use Cases
"What are your top goals for using [Product]?" (Multiple choice)
"Describe your most important use case in one sentence." (Text area)
"What does success look like 90 days from now?" (Text area)
"Are there any specific projects or campaigns you need live by a certain date?" (Text area, optional)
Section 3: Technical Environment
"What CRM do you use?" (Single choice: HubSpot / Salesforce / ActiveCampaign / Pipedrive / Zoho CRM / Other / None)
"What email marketing platform do you use?" (Single choice: HubSpot Marketing Hub / Mailchimp / Klaviyo / ActiveCampaign / Brevo / Other / None)
"What other tools should we integrate with?" (Multiple choice: Google Sheets / Slack / Microsoft Teams / Zapier / Google Analytics / Stripe / Other)
"Do you have a developer available for custom integration work?" (Single choice)
Section 4: Content and Branding
"Do you have brand guidelines you'd like us to follow?" (Single choice + file upload)
"Do you have existing content you want to migrate or rebuild?" (Single choice — if Yes, show a text area via conditional logic)
"Do you need a custom domain for your content?" (Single choice)
Section 5: Onboarding Preferences
"How would you prefer to get onboarded?" (Single choice: Self-serve / Guided / Hands-on / Full implementation)
"What's your preferred meeting time?" (Text field)
"Is there anything else we should know before kickoff?" (Text area, optional)
Building the Intake Form in involve.me
Funnel Configuration
From your dashboard, click Create new funnel and choose either Start from scratch, Create with AI, or Choose a Template. For this intake form, select "Thank You Page", this is the simplest type and sends every respondent to the same confirmation screen.
Choose a clean, professional template (look for multi-page form templates) or build from scratch.
Organise your funnel into 5 pages matching the sections above.
Enable the progress bar and add page titles so customers can see they're moving through a structured process.
To protect email data quality, you can enable OTP Email Verification directly on the Contact Form element in the editor, click the Contact Form, select the email field, and toggle on "OTP Email Verification" in the right-hand settings panel.
Keep the form completable in under 15 minutes. If it runs longer, split it into an initial intake and a detailed follow-up after the kickoff call.
Thank You Page & Personalisation
Enable the AI Generated Text element on the thank you page to generate a unique onboarding summary for each customer, confirming their stated goals, team setup, and preferred onboarding track rather than showing a generic confirmation to everyone.
For example, instead of:
"Thank you for completing the intake form. Your CSM will contact you within 24 hours."
Use the AI Generated Text element with an answer-piping prompt to produce something like:
"Thanks [Name]! We've got everything we need. Your team wants to [Top Goal], and we'll set up [Integration 1] and [Integration 2] during your first week. Expect a kickoff calendar invite within 2 hours."
Configure the prompt to reference: customer name, top goals, primary integrations needed, onboarding track, and estimated start date. The AI Generated Text element uses answer piping to pull previous responses directly into the prompt, set this up in the element's settings panel in the editor. Note that AI features consume AI credits from your account.
Conditional Logic Strategy
Use involve.me's conditional logic to make the form adaptive — showing different fields based on what customers have already answered:
If CRM = "HubSpot" → show a note: "Great — we have a native HubSpot integration. We'll activate it during your kickoff call."
If onboarding preference = "Self-serve" → hide the meeting time question (they don't need scheduling)
If "existing content to migrate" = "Yes" → show a detailed text area asking for URLs and details
If "custom domain" = "Yes, need help" → show reassuring text: "No worries — our team will walk you through custom domain setup during onboarding."
If department = "IT / Engineering" → show a follow-up question about API or webhook support needs
If onboarding preference = "Full implementation" → show a question about expected launch volume
Important: conditional logic in involve.me is case-sensitive and must exactly match your dropdown option text — including spaces, capital letters and punctuation. If you type "marketing" but your dropdown option is "Marketing", the condition will not trigger. Always test every conditional path using the preview (eye) icon in the editor before publishing.
Hidden Fields & URL Parameter Pre-Filling
Use involve.me's hidden fields to pre-fill known information and reduce friction. When sending the intake form link, append URL parameters:
https://your-form.involve.me/onboarding-intake?company=AcmeCorp&email=jane@acme.com&name=Jane+Smith&deal_id=12345&sales_rep=John%20Smith
involve.me captures these as hidden fields and pre-fills visible form fields (company, email, name) while passing hidden values (deal_id, sales_rep) through to HubSpot without showing them to the customer. You can also add UTM parameters to track which source the form was sent from:
https://your-form.involve.me/onboarding-intake?...&utm_source=welcome_email&utm_campaign=post_close_intake
Form Abandonment Recovery
If a customer starts but doesn't finish, involve.me captures partial submissions automatically — there is no setting you need to enable. To access them, go to your funnel's Analytics page → Responses tab and filter by "Partial." Revealing partial submission data requires the Pro plan or higher. You have a 30-day window to reveal each partial submission before the data is permanently deleted. Partial submissions only send data to integrations once they have been manually revealed and the integration re-triggered from the Analytics dashboard.
Once you can see partial data, use a HubSpot workflow to follow up: delay 2 hours, then send a short email with a link back to the form. If not resumed within 24 hours, flag for a CSM to follow up directly.
Setting Up HubSpot Custom Fields Before You Map
Creating Custom Properties in HubSpot
Before you connect anything in involve.me, you must create custom fields first. The mapping step in involve.me will only show properties that already exist in HubSpot.
In HubSpot: go to Settings > Data Management > Properties, select Contact properties, and click Create property for each field below.
Critical: When creating each custom property, you must assign it to a natively available Group (such as "Contact Information" or "Deal Information") — not a custom group you have created yourself. Properties assigned to custom groups will not appear in involve.me's mapping dropdown. Also ensure field types match exactly: you cannot map text data to a date property, or text to a number property — type mismatches will silently break the integration.
Intake Form Field | HubSpot Property Name | Property Type |
|---|---|---|
Company name | Company Name | Default |
Primary contact email | Default | |
Primary contact name | First Name / Last Name | Default |
Department | Onboarding Department | Custom dropdown |
Top goals | Onboarding Goals | Custom multi-line text |
90-day success definition | 90-Day Success Criteria | Custom multi-line text |
CRM used | Customer CRM | Custom dropdown |
Email platform | Customer Email Platform | Custom dropdown |
Other tools | Customer Tech Stack | Custom multi-line text |
Developer available | Technical Resources | Custom dropdown |
Brand guidelines | Has Brand Guidelines | Custom dropdown |
Custom domain needed | Custom Domain Status | Custom dropdown |
Onboarding preference | Onboarding Track | Custom dropdown |
Priority deadline | Onboarding Deadline | Custom date |
Additional notes | Onboarding Notes | Custom multi-line text |
Mapping Intake Form Fields to HubSpot Custom Fields
Connecting the Integration
The involve.me–HubSpot integration is available on paid plans. You can test it during involve.me's free 14-day trial before committing to a paid subscription. Check involve.me's current pricing page to confirm which plan includes the integrations you need.
To connect:
Navigate to the Integrations tab in the involve.me navbar — or open the dropdown on your funnel card and select Connect.
Find HubSpot and click Connect.
Select the HubSpot account you want to connect and click Grant Access.
Choose whether to connect at the organisation level (covers all your funnels) or the project level (covers only this funnel). If you choose project level, tick "Use custom integration settings for this project" in the bottom-left corner of the settings screen.
Once connected, click Manage Custom Fields on the funnel's integration settings to map your form fields to HubSpot properties.
The integration sends email and default properties (name, email, company) automatically. All other data — your HubSpot custom fields, must be mapped manually via Manage Custom Fields.
Real-Time Sync
Once connected, every completed form submission creates or updates a HubSpot contact within seconds. If a submission fails to sync, you will see a "Failed" status in the submission's Integrations section inside Analytics, where you can manually re-trigger the integration.
Note on duplicate contacts: involve.me uses the email address as the unique identifier. If a submission email already exists in HubSpot, the integration will update that existing contact rather than create a duplicate.
Handling Multiple Team Members
involve.me does not have a native repeating field group element. To collect multiple team members, use separate sets of name, email and role fields — either on the same page or spread across pages using conditional logic. The simplest approach is to map all team member information as a single multi-line text property in HubSpot. If you need each team member as a separate HubSpot contact, you will need to use webhooks (available on the Business plan) to send the data to a custom script that creates individual contact records.
Using Conditional Logic to Enrich Your HubSpot Custom Fields
The more relevant data that lands in your HubSpot custom fields, the more useful those fields are for routing and reporting. Conditional logic helps by ensuring you only collect data that is relevant to each customer segment — keeping the form short for simple customers while gathering the detail you need from complex ones.
Practical examples:
If "Onboarding Track" = "Full implementation" → show a question about expected funnel volume in the first 90 days, and map that answer to a "Launch Volume" custom field in HubSpot
If "Customer CRM" = "Salesforce" → show a note that Salesforce integration requires the Business plan, and map this to a "CRM Integration Complexity" custom field
If "Custom Domain Status" = "Yes, need help" → map this value so a HubSpot workflow can automatically create a task for your implementation team
This way, your HubSpot custom fields are populated with clean, segmented data from the moment the form is submitted.
Tracking Onboarding Success With HubSpot Custom Field Data
Form-Level Metrics in involve.me Analytics
Form completion rate: target 80%+. Below 70% suggests the form is too long or being sent too early.
Average time to completion: target 5–10 minutes.
Drop-off by page: which pages have the highest abandonment? Fix those first.
involve.me includes an AI Insights feature that analyses your funnel responses and generates a report with a summary, key findings, and recommendations. Use it to identify drop-off trends and get suggestions for improving completion rates.
HubSpot Reporting on Custom Fields
Once your intake data is flowing into HubSpot custom fields, build a Customer Success Onboarding Dashboard using those fields as filters and dimensions:
Count of "Onboarding Track" values by type this month (pie chart)
Most common values in "Onboarding Goals" (ranked list)
Most requested values in "Customer Tech Stack" (ranked list)
Average time from "Onboarding Deadline" field to first live funnel
90-day goal achievement rate tracked manually in "90-Day Success Criteria"
These reports are only possible because the data lives in structured HubSpot custom fields — not in free-text deal notes.
HubSpot Workflows Triggered by Custom Fields
Once your HubSpot custom fields are populated, use them as workflow triggers:
Workflow 1 — Onboarding Assignment Trigger: "Onboarding Track" property is set
Self-serve → assign to CS pool, send template library email
Guided → assign to available CSM, create task: "Schedule kickoff"
Hands-on → assign to senior CSM, create task: "Prepare custom onboarding plan"
Full implementation → assign to implementation team lead, alert via Slack
Workflow 2 — Integration Setup Prep Trigger: Intake form submitted
If "Custom Domain Status" = "Yes, need help" → create task: "Configure custom domain"
If "Customer CRM" ≠ "HubSpot" → create task: "Plan [CRM name] integration"
Workflow 3 — Kickoff Preparation Trigger: 24 hours before scheduled kickoff (when CSM logs meeting in HubSpot activity)
Send CSM summary email pulling values from all intake custom fields
Create task: "Review intake data before call"
Send customer reminder email
Monitoring & Continuous Improvement
Establish a monthly review cadence:
1st Friday: Review intake form completion and drop-off metrics in involve.me Analytics
2nd Friday: Review onboarding assignment and kickoff scheduling speed in HubSpot
3rd Friday: Review time-to-value and goal achievement data
4th Friday: Plan form optimisations
To run A/B tests on your intake form, you need the involve.me Business plan — A/B Testing is not available on Starter or Pro. The correct process is: (1) duplicate your funnel, (2) modify the duplicate, (3) publish both versions, (4) go to the "A/B Tests" tab in your dashboard navigation, (5) click "+ Create new A/B test," (6) assign Funnel A and Funnel B from the dropdowns, (7) start the test. You must then share the A/B test URL — not the individual funnel URLs — for traffic to split correctly between the two versions.
Examples of useful tests:
Form length: 15 questions vs. 20 questions — measure completion rate
Onboarding track phrasing: "Self-serve" vs. "DIY" — measure selection rate
Thank you page: generic vs. AI Generated Text — measure time to kickoff scheduling
Run each test for at least 2–4 weeks before drawing conclusions.
Common Pitfalls When Mapping to HubSpot Custom Fields
Pitfall 1: Custom properties not appearing in involve.me's mapping dropdown
Problem: You add custom fields but they don't show up when you try to map them in involve.me.
Solution: This is almost always a Group issue. When creating custom properties in HubSpot, you must assign them to a natively available group, not a custom group you created yourself. Properties in custom groups are invisible to involve.me's field mapping interface. If this happens, edit the property in HubSpot and reassign it to a standard group.
Pitfall 2: Incomplete email validation
Problem: Your intake form accepts invalid or fake emails, creating bad contacts in HubSpot.
Solution: If you are on the Business plan, enable OTP Email Verification on the email field inside your Contact Form element, this forces participants to verify their email via a one-time code before submission completes. If you are on a lower plan, use the disposable email blocking and personal email blocking options available in the Contact Form element's email validation settings.
Pitfall 3: Form too long
Problem: You cram too many questions in and completion rate drops.
Solution: Keep the form to 15–20 questions maximum, covering only what you need before the kickoff call. Collect additional detail during the first meeting.
Pitfall 4: Mismatched field types break the sync
Problem: Data appears to submit correctly but doesn't land in HubSpot, or lands in the wrong format.
Solution: Make sure HubSpot property types match the data being sent. You cannot save text into a date or number property. When creating properties like a score or count, set the type to "Number" not "Single line text", otherwise values like "32" may appear as "32.000" in HubSpot. Always test end-to-end by submitting a test entry and checking the contact record in HubSpot.
Pitfall 5: Conditional logic not triggering
Problem: You set up conditional logic but fields aren't appearing or hiding as expected.
Solution: Conditional logic in involve.me is case-sensitive. If your dropdown option is "Marketing" but you typed "marketing" in the condition, it will not trigger. Match the text exactly, including capitalisation, spaces and punctuation. Use the preview icon in the editor to test every conditional path before publishing.
Pitfall 6: No onboarding track assignment
Problem: You collect "Onboarding Track" data but don't use it to route customers differently.
Solution: Map the "Onboarding Track" HubSpot custom field as the trigger for your assignment workflow. If every customer gets the same follow-up regardless of what they selected, you're collecting the data for nothing.
Pitfall 7: Static, generic thank you page
Problem: Every customer sees "Thank you. Your CSM will contact you within 24 hours."
Solution: Use the AI Generated Text element to generate a unique thank you message that references their specific goals, integrations needed and onboarding track. This is set up directly in the editor using answer piping in the element's prompt configuration.
Best Practices for Long-Term HubSpot Custom Field Health
1. Audit your HubSpot custom fields quarterly
Review which intake fields are actually being used in workflows, reports and CSM prep. If a field has been mapped for six months but no one references it, remove the question from the form and deprecate the property.
2. Standardise before you send
Document the exact URL parameters sales must include when sending the form link (company, email, deal ID at minimum). If links go out without pre-filled fields, the data that lands in HubSpot custom fields will be inconsistently formatted and harder to filter.
3. Keep dropdown values consistent
The value that gets written to a HubSpot custom field dropdown is whatever the customer selects in the form. If your form says "Self-serve" but your HubSpot dropdown option is "Self Serve" (no hyphen), the sync will fail or create a new unrecognised value. Keep option labels identical across both platforms.
4. Train your CS team on where to find the data
Custom fields don't help if no one knows they exist. In your CS onboarding, show the team exactly which HubSpot contact properties to look at before a kickoff call, and which workflow tasks are auto-created from intake data.
5. Connect intake data to retention analysis
After 6–12 months of submissions, pull a HubSpot report comparing intake "Onboarding Track" and "Onboarding Goals" values against 12-month retention rates. Which goal selections correlate with churn? Which onboarding tracks drive expansion? These insights justify investment in maintaining the intake system and help you refine the form questions over time.
Implementation Checklist
Before going live, verify:
Design & UX
[ ] Form tested on desktop, tablet, iOS and Android
[ ] Progress bar displays and advances correctly
[ ] All conditional logic paths tested using preview mode
[ ] Page titles are clear on every page
[ ] File upload fields tested on mobile
[ ] Required field validation messages appear correctly
HubSpot Custom Fields
[ ] All custom properties created in HubSpot before attempting to map
[ ] Every property assigned to a native HubSpot group (not a custom group)
[ ] Field types match the data being sent (text → text, number → number, date → date)
[ ] Dropdown option values are identical in both involve.me and HubSpot
Integration
[ ] Test end-to-end: submit a test entry → verify contact appears in HubSpot with all custom fields populated
[ ] Hidden field values (deal_id, company_name) syncing correctly
[ ] OTP verification tested with a real email (Business plan only), OR email blocking options configured on lower plans
[ ] Failed sync test: check that a failure appears in Analytics → Responses → Integrations section
Workflows
[ ] HubSpot assignment workflow triggers correctly on "Onboarding Track" value
[ ] Integration setup tasks created automatically
[ ] Kickoff preparation workflow tested
[ ] Slack notifications working (if configured)
Launch
[ ] Soft-launch: send to 5–10 internal or friendly customers first
[ ] Spot-check first 20–30 submissions for data quality in HubSpot
[ ] Sales team briefed on how to send the form link with correct URL parameters
[ ] CS team shown where intake data appears in HubSpot contact records
Start building your intake form in involve.me today, and get every onboarding response landing directly in the right HubSpot custom fields, so your CS team walks into every kickoff call already knowing what matters.
Create Your Own Online Forms
No coding, no hassle, just better conversions.
FAQs
-
No. Custom properties must exist in HubSpot before you can map them in involve.me. Create all your properties in HubSpot first, then return to involve.me's Manage Custom Fields to set up the mapping. Also remember: properties must be assigned to a native HubSpot group to appear in the mapping dropdown.
-
involve.me uses the email address as the unique identifier. If a contact with that email already exists, the integration will update their existing record, it will not create a duplicate. This means re-submissions from the same email will overwrite the previous custom field values.
-
The form will not submit. A validation message appears prompting the customer to complete the missing field. Use required fields only for data you genuinely cannot onboard without, overusing required fields is one of the top reasons for form abandonment.
-
Default properties (email, first name, last name, company name) are built into HubSpot and sync automatically once the integration is connected — no mapping needed. HubSpot custom fields are properties you create yourself for data that isn't covered by defaults, such as "Onboarding Track," "Customer CRM," or "90-Day Success Criteria." These must be created in HubSpot first and then manually mapped in involve.me via Manage Custom Fields.
-
Typically 2–4 hours: 30 minutes planning, 1 hour building in involve.me, 30 minutes creating HubSpot custom properties, 1 hour testing end-to-end and setting up workflows, 30 minutes training the team. Add 2–3 hours for complex multi-track logic.
-
Yes. You can use involve.me standalone with Google Sheets, email notifications, Zapier, or webhooks. If you don't have a CRM yet, Google Sheets is a reasonable starting point, you can add the HubSpot integration later without rebuilding the form.