Multi-touch attribution
“show each closed hubspot deal by pre-close touch, split credit evenly across touches from the deals, touchpoints, contacts, and channel mapping files; Status says "Agrees" when the touch is mapped and before close, else what's off”
show each closed hubspot deal by pre-close touch, split credit evenly across touches from the HubSpot deals export, HubSpot engagement touchpoints export, HubSpot contacts export, and Channel mapping sheet files; Status says "Agrees" when the touch is mapped and before close, else what's off
What the agent built
8 steps, each one an ordinary Mammoth step you can open and change.
- FileHubSpot deals exportCSV export · 12 rows
- FileHubSpot engagement touchpoints exportCSV export · 30 rows
- FileHubSpot contacts exportCSV export · 12 rows
- FileChannel mapping sheetCSV export · 7 rows
- StepFilter closed dealsStep 5
- StepShape touch idsStep 2
- StepShape contactsStep 1
- StepShape channel mapStep 4
- JoinAdd contact details30 of 30 paired
- JoinBring touches onto deals12 of 12 paired
- JoinAdd channel mapping30 of 30 paired
- StepSplit credit and flagStep 8
- ResultClosed deal touch credit30 rows · 1 flagged
- ScheduleRuns when you sayProposed
Checked on the sample files: every step ran, 30 rows came out, and the join paired 30 of 30 rows; the join paired 12 of 12 rows; the join paired 30 of 30 rows.
- Download HubSpot deals export sample (12 rows)HubSpot: Reports > Reports > Create report > Deals > Export
- Download HubSpot engagement touchpoints export sample (30 rows)HubSpot: CRM > Activities > All activities > Export
- Download HubSpot contacts export sample (12 rows)HubSpot: CRM > Contacts > Export
- Download Channel mapping sheet sample (7 rows)HubSpot: CRM > Reports > Custom report builder uses this spreadsheet lookup for channel grouping
What you get back
The result of that run, the rows to look at first.
| Deal key | Deal name | Close date | Deal amount | Touch ID | Touch date | Touch contact key | Contact name | Contact email | Touch channel | Channel group | Touch subject | Status | Credit amount |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| d_1004 | Harborview Q4 Upsell | 2026-10-18 | 22,100 | e_3029 | 2026-10-28 | c_2006 | Sofia Lopez | sofia.lopez@harborview.example | owned_media | Late follow-up after close | After close | 0 | |
| d_1001 | Northstar Platform Rollout | 2026-10-27 | 18,400 | e_3001 | 2026-09-10 | c_2001 | Talia Brooks | talia.brooks@northstar.example | owned_media | Intro sequence opened | Agrees | 4,600 | |
| d_1001 | Northstar Platform Rollout | 2026-10-27 | 18,400 | e_3002 | 2026-09-14 | c_2001 | Talia Brooks | talia.brooks@northstar.example | website | owned_media | Pricing page session | Agrees | 4,600 |
| d_1001 | Northstar Platform Rollout | 2026-10-27 | 18,400 | e_3003 | 2026-10-03 | c_2002 | Jonah Reed | jonah.reed@northstar.example | phone | sales_outreach | Discovery call | Agrees | 4,600 |
| d_1001 | Northstar Platform Rollout | 2026-10-27 | 18,400 | e_3028 | 2026-10-20 | c_2002 | Jonah Reed | jonah.reed@northstar.example | website | owned_media | Duplicate session logged | Agrees | 4,600 |
| d_1002 | Aster Labs Expansion | 2026-10-24 | 12,650 | e_3004 | 2026-09-19 | c_2003 | Iris Nguyen | iris.nguyen@aster.example | social | paid_or_social | Connection request | Agrees | 6,325 |
| d_1002 | Aster Labs Expansion | 2026-10-24 | 12,650 | e_3005 | 2026-10-08 | c_2003 | Iris Nguyen | iris.nguyen@aster.example | owned_media | Proposal follow-up | Agrees | 6,325 | |
| d_1003 | Bluepeak Security Renewal | 2026-10-21 | 9,600 | e_3006 | 2026-09-07 | c_2004 | Evan Shah | evan.shah@bluepeak.example | event | earned_media | Security webinar attended | Agrees | 3,200 |
| d_1003 | Bluepeak Security Renewal | 2026-10-21 | 9,600 | e_3007 | 2026-09-23 | c_2005 | Marin Fox | marin.fox@bluepeak.example | direct_mail | offline | Postcard drop | Agrees | 3,200 |
| d_1003 | Bluepeak Security Renewal | 2026-10-21 | 9,600 | e_3008 | 2026-10-09 | c_2004 | Evan Shah | evan.shah@bluepeak.example | phone | sales_outreach | Procurement check-in | Agrees | 3,200 |
| d_1004 | Harborview Q4 Upsell | 2026-10-18 | 22,100 | e_3009 | 2026-09-25 | c_2006 | Sofia Lopez | sofia.lopez@harborview.example | owned_media | Demo invite | Agrees | 7,366.67 | |
| d_1004 | Harborview Q4 Upsell | 2026-10-18 | 22,100 | e_3010 | 2026-10-01 | c_2006 | Sofia Lopez | sofia.lopez@harborview.example | website | owned_media | Case study page | Agrees | 7,366.67 |
How do you do multi touch attribution?
Export your closed deals, contacts, and engagement touchpoints from HubSpot, then add a channel mapping sheet. The workflow matches touches to deals, keeps only touches before close, and splits credit across the touches. It also flags each row, so you can see which touches agree with the rules and which ones do not.
How it works
How to use the Closed deal touch credit workflow
- 1Get early accessWe invite people in small batches, job by job. You'll land on this workflow, already built and checked on the sample files.
- 2Swap in your exportsUpload your own files as they come out of your tools. The agent checks the workflow on your rows.
- 3Change it in words, then turn it onSay what to change and see the new result before anything saves. Then choose when it runs.
Closed deal touch credit: questions
What export should you use?
What happens to rows that do not match?
How do you change the attribution rules?
Get early access to this workflow
It will open already built and checked on the sample files. Swap in your own exports and see your result.
Workflows like this
Decide which pages to keep, update or prune, and find the search terms that spend without converting.
- ROAS by campaignCalculate ROAS by campaign from Google Ads and Shopify exports, matched by week and utm campaign.See the workflow Built by the agent
- Google Ads wasted spendFind search terms with spend and no conversions in the last 30 days, ranked by spend, from a Google Ads export.See the workflow Built by the agent
- Blended ROAS across Google and Meta AdsCombine Google Ads and Meta Ads exports with Shopify orders to see weekly blended ROAS, with duplicate rows flagged first.See the workflow Built by the agent
- HubSpot leads by source, monthlyTrack new leads per month by original source and count customers from a HubSpot contacts export.See the workflow Built by the agent
- LinkedIn Ads cost per leadShow LinkedIn Ads campaign cost per lead by week, sorted highest first, from your exported campaign file.See the workflow Built by the agent
- Content auditEvery page's clicks now and before, and a keep, update or prune callSee the workflow Template