Sign in

Blog · Board and management reporting

Marketing ROI Excel template: campaign costs and returns

Structure campaign revenue, delivery costs and marketing costs in a reusable Excel workbook. The worked template shows campaign contribution, ROI formulas and reconciliations before you compare completed returns.

The short answerA marketing ROI Excel template records attributed net revenue, delivery costs and all included marketing costs for each campaign. Subtract delivery costs to find contribution, then subtract marketing costs and divide the remainder by marketing costs. Keep an explicit attribution policy, calculate the combined return from totals, and reconcile the workbook to the source exports.

A marketing ROI Excel template compares campaign contribution after marketing costs, using the same revenue and cost definitions for every campaign. Build separate input, calculation and check sheets so a reviewer can reproduce the return from exported business records. The layout below can be copied into a workbook; it does not require a download.

Define what the workbook will measure

This example uses a fictional US business-services company reviewing completed campaigns at September 30, 2026. Attributed net revenue means invoiced sales after credits that the company's documented attribution policy assigns to each campaign. Delivery costs are the costs assigned to fulfilling those same sales.

Media, agency fees and allocated campaign labor form the marketing-cost boundary. The result is contribution after those specified costs, before any excluded corporate expenses. The workbook does not establish incremental revenue caused by marketing. For the underlying distinction between revenue return and contribution return, see marketing ROI versus ROAS.

Campaign contribution = Attributed net revenue − Delivery costs

Net campaign contribution = Campaign contribution − Marketing costs

Marketing ROI = Net campaign contribution / Marketing costs

Put the revenue basis, attribution policy, cost boundary, cutoff and reviewer on a Rules tab. Keep an export date and source reference beside each campaign. A completed review needs enough time for the chosen revenue and cost records to arrive; use a provisional label until they do.

Create the input and calculation columns

Use an Inputs tab with the headers below in columns A:F. Enter the example campaign records in rows 2 through 4. Amounts are USD, and the totals row shown here is a control, not an additional campaign.

Campaign Attributed net revenue (USD) Delivery costs (USD) Media (USD) Agency (USD) Campaign labor (USD)
Search 90,000 54,000 12,000 3,000 3,000
Events 60,000 27,000 8,000 2,000 2,000
Email 50,000 35,000 4,000 1,000 1,000
Source totals 200,000 116,000 24,000 6,000 6,000

Preserve the source totals separately on Checks. Convert the campaign records, without that totals row, into a table for reuse. Microsoft's calculated-column guidance explains how a table column applies its formula to the rows and extends it when rows are added.

Add columns G:J to the same input sheet:

Column Heading Formula in row 2
G Contribution before marketing =B2-C2
H Marketing costs =D2+E2+F2
I Net campaign contribution =G2-H2
J Marketing ROI =IF(H2=0,"Not available",I2/H2)

Fill the formulas through row 4, or use the equivalent table calculated columns. The zero-cost test uses Excel's IF function to return text when the denominator is zero. Resolve blank cost inputs before accepting the calculation: the formula cannot tell whether an empty cell means no cost or an unfinished export.

Keep source amounts unrounded. Format dollar outputs to whole dollars and ROI to one decimal place for this example. Formatting changes the display, while the underlying calculation retains its precision.

Read the completed campaign returns

Campaign Contribution before marketing (USD) Marketing costs (USD) Net campaign contribution (USD) Marketing ROI
Search 36,000 18,000 18,000 100.0%
Events 33,000 12,000 21,000 175.0%
Email 15,000 6,000 9,000 150.0%
Total 84,000 36,000 48,000 133.3%

Search leaves 90,000 − 54,000 = $36,000 before marketing. Its marketing costs are 12,000 + 3,000 + 3,000 = $18,000, leaving $18,000 after marketing. Dividing 18,000 by 18,000 produces 100.0% ROI.

Events produces the largest net contribution in this example, while Email uses the smallest marketing investment. Read dollars and percentages together: neither column alone describes the scale of the result. The marketing dashboard Excel layout covers the separate workbook for spend, leads and revenue comparisons.

On a Summary tab, link to the campaign outputs and sum each dollar column. The combined ROI is calculated from totals:

=SUM(Inputs!I2:I4)/SUM(Inputs!H2:H4)

That is 48,000 / 36,000 = 133.3%, rounded to one decimal place. The simple average, (100.0% + 175.0% + 150.0%) / 3 = 141.7%, overstates the combined return because it gives unequal investments equal weight.

Do not turn this small example into a market benchmark. The average marketing ROI guide discusses why comparison requires matching definitions and business context.

Reconcile the workbook and test one input

The source-total checks should compare each imported amount with its independent control. For example, =SUM(Inputs!B2:B4)-Checks!B2 must return zero when Checks!B2 holds the retained revenue total of $200,000. Repeat the comparison for delivery costs, media, agency and labor.

Then prove the output with this identity:

Reconciliation step Amount (USD)
Attributed net revenue 200,000
Less delivery costs −116,000
Less media −24,000
Less agency −6,000
Less campaign labor −6,000
Net campaign contribution 48,000

The result equals the sum of campaign net contributions: 18,000 + 21,000 + 9,000 = $48,000. A failure here signals a missing cost, duplicated record or broken formula before it signals campaign performance.

For a sensitivity check, increase only Search labor from $3,000 to $5,000. Search marketing costs become $20,000, net contribution becomes $16,000, and ROI becomes 16,000 / 20,000 = 80.0%. This isolates a cost-allocation change without pretending that revenue changed. Restore the original value after recording the scenario separately.

Where it goes wrong

  • Costs counted twice. Campaign labor already included in delivery costs must not appear again as marketing labor. Review the ledger mapping with finance.
  • Revenue assigned more than once. Campaign allocations must reconcile to the chosen revenue population, with any unassigned balance shown separately.
  • Incomplete costs treated as final. Late agency invoices or unfinished labor allocations can make a provisional return look stronger.
  • Changing the comparison boundary. Excluding labor from one campaign while including it in another makes the ranking unreliable.

Once the workbook ties, the guide to improving marketing ROI covers how to turn a checked return into a business review.

Covirage is not affiliated with Microsoft.

Compare your completed ROI workbook in Covirage

Bring your completed campaign workbook with the revenue assignments, delivery costs and marketing-cost policy. Covirage maps the columns; its tools compute and check the figures, and the external AI model explains the results with every figure traced to its rows. Create a free Covirage account and bring a sample of your own data.

See Excel analysis in Covirage for the supporting workflow.

Questions people ask

Which costs belong in a marketing ROI template?

Document the boundary before comparing campaigns. This template includes media, agency and allocated campaign labor as marketing costs, with delivery costs deducted separately from revenue. Any other included cost needs its own recorded amount and allocation rule, applied consistently across campaigns.

How do I handle a campaign with no marketing cost?

Leave its ROI unavailable and investigate whether the cost is genuinely absent or missing from the export. A zero denominator cannot produce a meaningful percentage. Show the campaign's revenue and contribution separately while the reviewer resolves the cost record.

Should marketing ROI use booked or invoiced revenue?

Choose the revenue basis that matches the review and label it clearly. This workbook uses net invoiced revenue attributed to completed campaigns. Do not combine bookings from one campaign with invoiced revenue from another and present the result as a consistent return comparison.