How to track lead source in HubSpot Meetings
Add real attribution to every meeting booked through your HubSpot Meetings link, so your reps know which campaign or content actually drove the call.
On this page
HubSpot Meetings is the default scheduler for sales teams already on HubSpot CRM. It does its job well, the meeting books, the contact is created, the rep gets the calendar invite. What it doesn’t tell you is which marketing investment actually produced that meeting. SourceLoop adds that missing layer.
The setup runs three short steps and works on every HubSpot tier including Free.
What SourceLoop captures from HubSpot Meetings
Every meeting booked through your embedded HubSpot scheduler flows into SourceLoop with:
- Lead’s first acquisition channel plus the original
utm_source,utm_medium,utm_campaign,utm_content, andutm_termvalues - Email and name as entered on the HubSpot meeting form
- Conversion path, the ordered list of every page the prospect visited before the meeting was booked
- Time-to-meeting: how long elapsed between the visitor’s first touch and the booked appointment
- Page count in the pre-meeting journey
- Original landing page and referrer
- Last session source before the meeting was booked (useful for picking apart top-of-funnel vs. closing channels)
- Device, country, and browser for segment-level insights
Before you start
You’ll need:
- A SourceLoop workspace (free trial)
- Edit access to the website where you’ll embed the HubSpot meeting link
- A HubSpot account (any tier) with at least one meeting link configured under Sales -> Meetings
Step 1: Install the SourceLoop tracking script
From your SourceLoop dashboard, open Setup in the left navigation and switch to the Tracking code tab. Copy the snippet you see there.
Drop the snippet inside the <head> of every page on your site. The most important page to cover is the one where prospects book meetings, but installing it site-wide gives SourceLoop the full picture of every visitor’s journey before they finally book.
Step 2: Embed your HubSpot meeting link on the booking page
In HubSpot, navigate to Sales -> Meetings -> your meeting link -> Embed. HubSpot offers two embed options:
- Inline iframe: shows the full HubSpot meeting widget directly on your page
- Popup link: opens the meeting widget in a modal when a visitor clicks a CTA
Either option works for attribution. The non-negotiable bit is that the page hosting the embed has the SourceLoop snippet from step 1. Once both pieces are in place, meetings booked through the widget are tied back to whatever marketing channel originally brought the visitor to your site, no extra setup needed.
Step 3: Verify it’s working
Open the booking page in an incognito window, add ?utm_source=test&utm_medium=verify&utm_campaign=hubspot-check to the URL, and book a test meeting using a real email you control.
Switch over to SourceLoop’s Contacts Hub, the test meeting should appear in a few seconds with the test UTM values attached. If it doesn’t, append ?sl_debug=1 to the booking page URL to enable diagnostic output in the browser console.
Where to see HubSpot meetings in SourceLoop
After the integration is live, every meeting booked through the HubSpot widget shows up across three SourceLoop surfaces:
Contacts Hub
Each HubSpot meeting becomes a row in the Contacts Hub at app.sourceloop.ai/contacts. Click into any row to reveal the prospect’s complete pre-meeting timeline: the ad they clicked, the blog posts they read, the case study they downloaded, and finally the meeting booking. Great prep material before the call.
Attribution dashboard
Pull up app.sourceloop.ai/dashboards/traffic to see HubSpot meetings rolled up by source, campaign, channel, and landing page. Particularly useful for sales leaders: see which marketing investment is producing the most meetings per dollar, then double down.
Funnel reports
Inside app.sourceloop.ai/funnels, build a funnel that ends in a “HubSpot meeting” step. Break it down by source or by landing page to find which channels create high-intent traffic and which ones drive impressive click counts but never produce a sales call.
Want to close the loop further? Push the HubSpot meeting data back to Google Ads, Meta, and LinkedIn as offline conversions so the ad platforms learn to bid for booked meetings, not just form completions. See Connect your Google Ads account for the offline-conversion setup.
That’s the full picture, HubSpot meetings are now tied to the marketing channels that actually source them.
Frequently asked questions
-
Does this work with the free HubSpot CRM plan?
Yes. HubSpot's Meetings tool is included on the free plan, and SourceLoop captures bookings made through any embedded meeting link regardless of HubSpot tier.
-
Will SourceLoop overwrite the source fields HubSpot already sets on a contact?
No. SourceLoop keeps its attribution data on its own contact record and dashboards. HubSpot's `hs_analytics_source` and similar properties stay untouched. If you'd like that data flowing back into HubSpot contact records, you can wire it up via the HubSpot CRM sync.
-
Does this support round-robin meetings and group calendars?
Yes. The attribution capture happens at the embed level, so it works the same whether the booking lands on a single rep, a round-robin pool, or a group calendar.
-
I share my meeting link in my email signature. Will those bookings be tracked?
No. Bookings made through a raw `meetings.hubspot.com/<your-link>` URL skip your website entirely, so SourceLoop never sees the visit and can't attribute it. If email-signature meetings matter to you, point the link to a landing page that embeds the meeting widget instead.
-
Can I push HubSpot meeting attribution into Google Ads or Meta as offline conversions?
Yes. Once SourceLoop is capturing the meetings, you can forward them as offline conversions to any ad platform you've connected, so the algorithms can optimize for booked meetings instead of form fills.