Great ideas — and you’re not alone. Today, HubSpot’s standard Meetings tool doesn’t natively track who actually joined a video call or distinguish internal vs external attendees in a way that’s “attendance-grade” and reportable out of the box. You can associate invitees with a meeting activity, but the distinction between “joined vs invited” isn’t automatically captured by HubSpot unless you import data from a video conferencing integration that records attendance.
Here are practical ways teams handle this today, plus how to report on it.
What’s possible natively today
- Meeting activities and attendees: When you schedule via a HubSpot scheduling page or a connected calendar, HubSpot logs a Meeting activity and associates the contacts on the invite. This shows who was invited/associated, not who actually joined.
- Reporting: You can build Activity reports on Meeting activities (e.g., count of meetings, hosts, contacts associated). This won’t distinguish “joined vs no-show” without additional data or workflow enrichment.
Approaches to capture actual attendance
Option A: Use a video conferencing integration that syncs attendance
- Zoom Meetings + HubSpot: The Zoom integration can sync meeting data back to HubSpot. When configured, Zoom can pass attendance data (join/leave) which can be mapped to a Marketing event or logged on the contact timeline. From there, you can report on attendees vs registrants. Notes:
- Works best if meetings are created with the Zoom add-in or if your meeting links auto-generate Zoom links.
- Look for synced properties like attendee status or “Joined” on the marketing event. Then:
1) Create a list of contacts who “Attended” the event/meeting.
2) Report using the Marketing events object or Contacts with filters on event attendance.
- Microsoft Teams/Google Meet: Native HubSpot links to these tools add a conferencing link but don’t themselves pass “joined” data into HubSpot. If you need attendance, consider third-party bridges (see Option C) or use Zoom for sessions where attendance matters.
Option B: Use an AI notetaker that writes attendees back to HubSpot
- Tools like Avoma, Gong, Chorus, Fathom, Fireflies, tl;dv, etc., can join your calls, capture the participant list, and log notes/attendees to HubSpot.
- Typical setup:
1) Connect the notetaker to your calendar and HubSpot.
2) Allow it to auto-join meetings with external participants.
3) Enable CRM sync so it creates a meeting activity or note in HubSpot and lists attendees.
4) Use a workflow to parse the note/attendee field and update a custom property, e.g., “Last meeting attendees (emails)” and a Boolean “Contact attended last meeting.”
- Reporting:
- Build reports filtered by “Contact attended last meeting = true.”
- Split internal vs external using a workflow that checks email domain (see Option D).
Option C: Zapier/Make with conferencing platform logs
- If your conferencing tool provides attendance via API or webhook (Zoom, Webex, Teams with Graph API), you can:
1) Capture attendance after a meeting ends.
2) Match attendees to HubSpot contacts by email.
3) Create/update a Meeting engagement or set a custom “Attended meeting” property on each matched contact.
- This provides repeatable, reportable attendance without manual steps.
Option D: Split internal vs external attendees
- Create a Contact property “Internal employee?” (Yes/No).
- Use a company email domain list or pattern rule to set the property:
- Workflow: If Email ends with “@yourcompany.com,” set Internal employee? = Yes.
- For meeting-level reporting, use two rollup properties or lists:
- “Meeting internal attendees” count: count of associated contacts where Internal employee? = Yes.
- “Meeting external attendees” count: count of associated contacts where Internal employee? = No.
- In reports, add both counts or use filters to segment.
How to operationalize in HubSpot
Step 1: Standardize scheduling and conferencing
- Use one conferencing provider (ideally Zoom if attendance is critical) and ensure all customer meetings are scheduled from HubSpot scheduling pages or connected calendars so meetings log reliably.
Step 2: Bring attendance into HubSpot
- Preferred: Enable the Zoom-HubSpot integration and verify that attendance is syncing post-meeting, then use Marketing events or synced activity fields for reporting.
- Alternative: Connect an AI notetaker that writes attendees to HubSpot, then parse attendees with a workflow.
Step 3: Create properties and workflows
- Properties:
- Contact: “Internal employee?” (Yes/No)
- Contact: “Attended last meeting?” (Yes/No) or “Last attended meeting date”
- Meeting (engagement): Optional text field “Confirmed attendees (emails)”
- Workflows:
- Set Internal employee? based on email domain.
- When an attendance record comes in (from Zoom/notetaker), set Attended last meeting? for matched contacts and optionally append to “Confirmed attendees.”
Step 4: Reporting
- Single-object: Contacts who attended a meeting in last X days; split by Internal employee? = No to focus on customers.
- Cross-object: Activities report on Meetings with a breakdown by:
- Meeting owner/host
- Count of external attendees (use calculated fields or lists)
- Attendance rate (attendees vs invitees) if you store both counts.
What’s not possible today without integrations
- Native, automatic “joined vs invited” tracking for Meetings on Google Meet or Teams links created from HubSpot, without a third-party/Zoom path.
- A built-in report that distinguishes internal vs external attendees without adding domain-based logic.
If this exact functionality (native attendance and internal/external split) is important without relying on Zoom or third parties, definitely add/upvote an Idea in the HubSpot Ideas forum so Product can assess prioritization.
Note: If you run into an integration that should sync attendance but isn’t, that would require HubSpot Support or the app partner’s support to investigate your specific account setup.