Free Excel template · Excel for marketing
Free marketing campaign performance tracker
For marketers who report on several ad platforms and email at once and want every channel measured the same way. Paste in spend, impressions, clicks, conversions and revenue for each campaign, and the template works out CPA and ROAS per campaign, rolls everything up by channel, and projects month-end spend so you can fix pacing before the budget runs out.
Preview and try it
This is the template's sheet, calculated by the same engine as the Cellwise app. Change any number to see the formulas react before you download.
| A | B | C | D | E | F | G | H | I | |
|---|---|---|---|---|---|---|---|---|---|
| 1 | Campaign performance | ||||||||
| 2 | Month | Oct 1, 2026 | |||||||
| 3 | Monthly budget | 15000 | |||||||
| 4 | Data through | Oct 20, 2026 | |||||||
| 5 | |||||||||
| 6 | Campaign | Channel | Spend | Impressions | Clicks | Conversions | Revenue | CPA | ROAS |
| 7 | fall-sale-search | Google Ads | 2850 | 48200 | 2410 | 96 | 9120 | 29.69 | 3.2 |
| 8 | fall-sale-shopping | Google Ads | 1920 | 61500 | 1845 | 71 | 6390 | 27.04 | 3.33 |
| 9 | brand-search | Google Ads | 410 | 9800 | 1260 | 88 | 7920 | 4.66 | 19.32 |
| 10 | fall-sale-prospecting | Meta Ads | 2240 | 186000 | 2050 | 39 | 3120 | 57.44 | 1.39 |
| 11 | retargeting-30d | Meta Ads | 960 | 52400 | 1130 | 47 | 4465 | 20.43 | 4.65 |
| 12 | retargeting-7d | Meta Ads | 640 | 28100 | 690 | 31 | 2945 | 20.65 | 4.6 |
| 13 | creator-collab | TikTok Ads | 1500 | 240000 | 1920 | 22 | 1650 | 68.18 | 1.1 |
| 14 | fall-sale-pins | Pinterest Ads | 780 | 95000 | 1140 | 18 | 1530 | 43.33 | 1.96 |
| 15 | newsletter-oct-a | 60 | 9000 | 342 | 21 | 1995 | 2.86 | 33.25 | |
| 16 | newsletter-oct-b | 60 | 9000 | 459 | 26 | 2470 | 2.31 | 41.17 | |
| 17 | |||||||||
| 18 | |||||||||
| 19 | Total | 11420 | 739000 | 13246 | 459 | 41605 | 24.88 | 3.64 | |
| 20 |
How the formulas work
CPA and ROAS on every campaign
ROAS is revenue divided by spend; CPA (column H) is spend divided by conversions. Each is wrapped in IF so an empty row, or a campaign with no conversions yet, shows a blank instead of #DIV/0!.
Channel totals with SUMIFS
SUMIFS adds the spend of every campaign whose channel matches the name in column A. The dollar signs lock the data range so the formula copies down and across the summary table. Channel names must match exactly, so use the same spelling on every row.
Rates the right way: total, then divide
Channel CTR is total clicks divided by total impressions for that channel, never the average of the campaign CTRs. The same pattern gives CPC, conversion rate, CPA and ROAS in the rest of the row. IFERROR shows 0 for a channel with no data yet.
Projected month-end spend
DAY(B4) is how many days of data you have; DAY(EOMONTH(B2,0)) is the number of days in the month (31 for October). Spend per day so far times days in the month projects where you will land if nothing changes.
A pacing check you can read at a glance
Within 5% either way counts as on pace; change 1.05 and 0.95 to the tolerance you work to. The sample is $2,701 over pace on October 20, which is the moment to lower daily budgets, not October 29.
Make it yours
- Export each platform with the same date range and the same attribution setting you report on. Platforms each count conversions their own way, so totals across platforms can add up to more than your real orders.
- Update B4 (Data through) every time you paste new numbers, or the pacing projection will be wrong.
- For email, put emails delivered in the Impressions column and the email tool's cost (or a share of it) in Spend.
- Insert extra campaign rows inside rows 7 to 18 so the ranges in the totals and the channel table grow with them.
FAQ
What is a good ROAS?
It depends on your margins. A ROAS of 4 means $4 of revenue per $1 of ads; if your gross margin is 25%, that $4 leaves $1 of gross profit, so you only broke even on the ad. Work out your break-even ROAS as 1 divided by your gross margin and judge campaigns against that.
What is the difference between CPA and CPC?
CPC is what you pay for each click. CPA is what you pay for each conversion (a sale, sign-up or lead). A campaign can have cheap clicks and an expensive CPA if few of those clicks convert.
Why do my platform conversions not match my store orders?
Each ad platform credits conversions using its own attribution window and model, and two platforms can both claim the same order. Use the platforms for comparing campaigns within a platform, and your store or analytics data for the real total.
Functions used
IFPicks a result from a testROUNDRounds to digitsSUMAdds numbersSUMIFSAdds with several conditionsIFERRORFallback when a formula errorsDAYDay of the monthEOMONTHLast day of a monthTEXTNumber to formatted text
Related guides
- SUMIFS with multiple criteria in Excel
- How to divide in Excel
- #DIV/0! error in Excel
- How to find the last day of the month in Excel
- How to calculate percentage in Excel
More free templates
- Content calendar templateFor marketers and small teams who plan blog posts, emails and social content in one list.Free .xlsx
- Expense report templateFor employees who need to claim back business costs, and for the managers and bookkeepers who check those claims.Free .xlsx
- Purchase order templateFor small businesses, office managers and buyers who send purchase orders to suppliers and want to track what actually arrives.Free .xlsx
- Accounts receivable aging report templateFor owners, bookkeepers and credit controllers who invoice customers on terms and need to see who owes what and for how long.Free .xlsx
Updated