Event Attribution in HubSpot: A Setup That Holds Up
Set up event attribution in HubSpot: campaigns vs properties, contact-level event touches, deal association, attribution windows and cost per meeting reports.
Events are often the biggest line in a field marketing budget and the hardest to defend in a pipeline review. The problem is rarely the events themselves. It is that nobody recorded who was met, when, and which deals followed. This guide shows a practical setup for event attribution in HubSpot that your sales and finance teams will both trust.
Start with the questions you need to answer
Before you create a single property, agree on what the report must show. For most teams, it comes down to five questions:
- How many meetings did we hold at each event?
- What did each meeting cost?
- How much new pipeline did each event source?
- Which existing deals did each event influence?
- Which events should we repeat, change or drop next year?
Everything below exists to answer those questions, and nothing more. If a field does not feed one of them, skip it.
Campaigns vs properties: use both for different jobs
HubSpot gives you two main tools for this: campaigns and custom properties. They are not alternatives. They do different jobs.
| Campaigns | Contact and deal properties | |
|---|---|---|
| Best for | Grouping assets, emails, pages and budget for one event | Recording facts about a person or deal |
| Answers | "What did we run for this event?" | "Who did we meet and which deals followed?" |
| Granularity | Event level | Contact and deal level |
| Weakness | Weak link to specific conversations | Needs clear rules and discipline |
Create one campaign per event to hold the emails, landing pages and spend. Then use properties to record the individual touches and deal sources. The campaign tells the story. The properties carry the numbers.
Record event touches at the contact level
An event touch is a meaningful interaction with a person at or around an event. Define it before the show, and write it down.
Counts as a touch:
- A booked meeting that was held
- A booth visit with a real conversation
- A call booked from event outreach
- Attending your side event, such as a dinner or breakfast
Does not count on its own:
- A badge scan with no conversation
- An email open or a sent invitation
- Being on the exhibitor list
Suggested contact properties
| Property | Type | Example |
|---|---|---|
| Events touched | Multiple checkboxes | Retail Ops Summit 2026, FleetConnect 2026 |
| Last event touched | Dropdown | FleetConnect 2026 |
| Last event touch date | Date | 2026-10-14 |
| Last event touch type | Dropdown | Booked meeting, booth visit, call, side event |
| Event notes | Multi-line text | Short summary of the conversation |
A single-value property gets overwritten at the next event. The multiple-checkbox field keeps the history. If your HubSpot tier supports custom objects, an event attendance object with one record per touch gives you cleaner history, but the properties above are enough for most teams.
Fill these within a day of the conversation. Notes written a week later are guesses.
Associate deals with the event
Contact touches show activity. Deals show money. You need a rule that connects the two.
Add two properties at the deal level:
- Source event. A single dropdown. Set once and never overwritten.
- Influencing events. Multiple checkboxes. Any event where a contact on the deal had a touch.
Then define the rule for each. A common version:
- A deal is sourced by an event if it was created inside the attribution window and at least one associated contact had a touch at that event.
- A deal is influenced by an event if it was already open, or sourced by something else, and an associated contact had a touch at that event while the deal was open.
Make sure contacts are associated with the deal. A deal with no associated contacts cannot be attributed to anything, so make that association part of your deal creation process.
Set an attribution window
An attribution window sets which deals can count for an event. A window that is too narrow misses real pipeline. A window that is too wide credits the event for deals it had nothing to do with.
A practical default is deals created from 30 days before to 180 days after the event.
- 30 days before captures deals opened from pre-show outreach. If you book a meeting three weeks ahead and the prospect asks for pricing before you fly, that deal belongs to the event.
- 180 days after covers typical B2B cycles, where the first meeting at a show turns into a qualified deal months later.
Adjust to your sales cycle. Teams selling smaller deals may use 90 days after. Teams with year-long cycles may extend it. Whatever you choose, use the same window for every event so the comparison is fair.
| Scenario | Deal created | Sourced by event? |
|---|---|---|
| Meeting booked before show, deal opened at T-10 days | Inside window | Yes |
| Booth conversation, deal opened at T+45 days | Inside window | Yes |
| Contact met at show, deal opened at T+220 days | Outside window | No, influenced at most |
| Deal open since spring, contact met at show | Before window | No, influenced |
Avoid double counting
Double counting is what makes finance stop trusting event reports. Four rules prevent it.
- One source per deal. If a contact was touched at two events inside the window, credit the earliest one, or the one where the first meeting happened. Pick one rule and apply it everywhere.
- Never add influenced pipeline across events. If a deal was influenced by three events, it shows up in all three influence reports. That is fine for each event alone, but the total is not your pipeline.
- Do not re-source open deals. A deal that was already open before the window started can be influenced, never sourced.
- Deduplicate people across the team. If two sellers met the same buyer, there is one contact and one touch per event, not two.
Report cost per meeting and pipeline per event
With clean data, the core metrics are simple.
- Cost per meeting = total event cost ÷ meetings held
- Pipeline per event = sum of sourced deal amounts inside the window
- Pipeline per euro spent = sourced pipeline ÷ total event cost
- Influenced pipeline = reported separately, never added to sourced
Total event cost should include passes, travel, stand, side events, tools and staff time if you track it. For a fuller method, see trade show ROI and cost per meeting.
An illustrative comparison
The numbers below are made up to show how the report reads.
| Event | Total cost | Meetings held | Cost per meeting | Sourced pipeline | Pipeline per € |
|---|---|---|---|---|---|
| Northfield Logistics Expo | €38,000 | 42 | €905 | €610,000 | 16.1 |
| Coastal Retail Forum | €12,500 | 19 | €658 | €140,000 | 11.2 |
| Midland Ops Summit | €24,000 | 11 | €2,182 | €95,000 | 4.0 |
In this example, the cheapest event has the lowest cost per meeting, but the largest one sources the most pipeline per euro. Midland would be the first candidate to change or drop. The trade show KPIs guide covers which other numbers belong next to these.
Make the data flow without manual work
Attribution breaks when it depends on people updating fields after a long week of travel. Automate what you can. Hallway syncs with HubSpot every hour, reads lifecycle stage, owner and deals for the people and companies you work with, and links new deals to the event where you met those people. Conversation notes can be written back to HubSpot too, if you turn that on.
Setup checklist
- Touch definition written and shared with the team
- One campaign created per event
- Contact properties for events touched, last touch, date and type
- Deal properties for source event and influencing events
- Attribution window agreed, for example −30 to +180 days
- Single-source rule for deals touched at two events
- Event cost recorded for every show
- A report for cost per meeting and pipeline per event
Report what happened, not what you hope
Good event attribution is not about crediting events with as much pipeline as possible. It is about a number your CFO believes. Define touches, connect them to deals with a fixed window, and keep sourced and influenced pipeline apart.
To get event touches and deal links into HubSpot without manual updates, start a 14-day free trial of Hallway. Or let our team run the whole event for you with done-for-you.