HubSpot Reporting study materials
HubSpot Reporting study resources

The Campaign ROI That Changes With the Attribution Model

HubSpot Reporting · Put your knowledge to work in context.

All case studies

The Campaign ROI That Changes With the Attribution Model

Helio Robotics ran a $48,000 integrated campaign: $20,000 LinkedIn ads, $12,000 Google Search, $8,000 webinar production, and $8,000 content syndication. HubSpot campaign membership includes 1,240 contacts, 96 deals, and $612,000 closed-won revenue. The sales cycle is 90–180 days. When the marketing manager uses last interaction attribution, campaign ROI is 1,175%; first interaction shows 380%; linear shows 720%. Finance points out that $6,000 of the spend was a sponsorship paid offline and never logged in HubSpot, and that 14 deals include products from a partner, so only 60% of the deal amount is Helio revenue. The CMO wants a defensible ROI number for the next budget cycle and a recommendation on attribution model. HubSpot Marketing Hub Professional is in use, with campaigns and ads integrations.

1. Calculate a defensible ROI for the campaign. Show your formula and explain how the offline spend and partner revenue change the answer.

Read the worked answer

ROI = (attributed revenue − total campaign spend) ÷ total campaign spend.

First, correct the inputs. Total spend is $48,000 + $6,000 offline sponsorship = $54,000. Helio's share of the $612,000 closed-won revenue is 60%, or $367,200. That is the revenue base finance will accept; the remaining 40% belongs to the partner.

Using the last-interaction attributed revenue of $612,000, adjusted ROI is ($367,200 − $54,000) ÷ $54,000 = 580%. But that applies last-touch attribution to all campaign revenue, which overstates the campaign's role. Using linear attributed revenue of $393,600 and applying the 60% share gives $236,160; ROI is ($236,160 − $54,000) ÷ $54,000 = 337%. Using first-interaction revenue of $230,400 and the 60% share gives $138,240; ROI is 156%.

The defensible answer is a range of roughly 156% to 580%, with a central planning number around 337% under linear attribution. The range is not indecision; it shows how much the answer depends on attribution. The CMO should present the central number, disclose the model, and show the sensitivity. Finance will also want the $6,000 offline cost recorded even if it sits outside HubSpot's native ad spend.

2. Which attribution model should the CMO use for budget decisions, and why? Address the sales cycle and channel roles.

Read the worked answer

Last interaction is a poor budget model here because it gives full credit to the channel that happens to be closest to the deal, often branded search or the webinar. That over-rewards closing channels and under-rewards the LinkedIn and content work that created the demand 90–180 days earlier. First interaction has the opposite bias: it over-credits the first known touch and ignores the nurture and conversion work. The 1,175% versus 380% spread is a warning that the model is driving the conclusion.

For budget allocation, I would use linear or U-shaped multi-touch attribution as the primary model, with campaign influence reporting as a check. Linear is transparent and avoids over-crediting a single channel; U-shaped is useful if the team wants to explicitly value demand creation (first touch) and conversion (lead creation or deal creation). Because the sales cycle is long, use a lookback window long enough to capture the full journey, and report by cohort rather than mixing deals from different periods. Do not use last interaction as the only board metric.

The recommendation should be: allocate budget using linear/U-shaped influence, evaluate channel efficiency with cost per influenced deal and cost per closed-won deal, and keep last interaction as a diagnostic for closing-channel efficiency. Present a model comparison table so the CMO can see which channels are stable across models and which are model-dependent.

3. What instrumentation changes would you make before the next budget cycle?

Read the worked answer

I would fix five things before the next budget cycle.

  1. Log all spend in one place. Record the $6,000 offline sponsorship against the campaign, either through a campaign cost property or a controlled external cost table that feeds the ROI report. Ads integration spend should cover LinkedIn and Google, but offline and production costs need a manual process with an owner and close date.
  2. Separate partner revenue. Add a deal property for Helio share or partner-influenced amount, or split the deal into Helio and partner line items. Do not leave finance to apply a 60% haircut outside the system every month.
  3. Standardize campaign membership. Define whether membership is based on contact, deal, or both, and who adds records. Without a rule, the 96 deals and 1,240 contacts may not represent the same population.
  4. Capture source and UTM data consistently. Ensure LinkedIn and Google campaigns use the same naming convention and that campaign membership is not overwritten by later touches.
  5. Build a model-comparison dashboard. Show first, last, linear, and U-shaped attributed revenue, spend, ROI, and influenced deals side by side. Add a data-quality card for missing spend, missing partner share, and deals with no campaign touch. This gives the CMO a defensible planning number and an audit trail.