River
Y CombinatorBacked by Y Combinator
FREE TEMPLATE

Multi-Channel Paid Media Report Template

Four documents and three sheets that build one table from your platform exports, and a reconciliation sheet that names the cause of every gap.

Free download  ·  No account needed

Foldwell spent $296,000 on paid media in August across Google Ads, Meta and LinkedIn. The three platforms together claimed 1,934 conversions. The CRM held 1,004 records created that month with a paid source attached. Divide the spend by the summed platform figure and the month cost $153 per demo request. Divide it by the CRM count and it cost $295. Both numbers come from the same exports, and only one of them has a denominator anybody can defend in a budget meeting.

That gap is not an error in anyone's tracking. Meta's reporting API returns a separate field for each attribution window, from one day after a view to twenty-eight days after a click, plus one unlabelled value field holding whichever window the account defaults to. Google Ads dates every conversion to the click that earned it. GA4 splits credit fractionally across a ninety-day lookback. Four platforms, four questions, four correct answers, and no valid sum.

So the pack normalises the three columns that agree and labels the ones that do not. Spend, impressions and clicks go into shared columns. Platform conversions keep their own, each carrying its window and counting method, under a sheet with no total row. Every gap becomes a row with a named cause. It installs into the marketing workspace, next to the Google Ads account audit, the Search Console keyword map and the rest of the template library. Send River your exports, or take the files blank.

One table, and the sheet that explains why the platforms disagree

The Unified Spend and Performance table, the Platform Reconciliation, and the Blended Efficiency sheet.

What's in the pack

01

Unified Spend and Performance

One row per platform, month and campaign, with spend, impressions and clicks normalised and every conversion figure carrying its own window.

02

Platform Reconciliation

One row per gap per cause, sized and evidenced, with the definitional gaps marked permanent instead of left looking like broken tracking.

03

Blended Efficiency

Every row names its denominator, and one contrast row shows the same month computed the indefensible way so the difference is visible.

04

Reporting Methodology

The system of record, the period, each source's time zone and the windows in force, so a challenge is answered by pointing at a section.

05

Metric Definitions

Every metric in three parts: the source field, the arithmetic, and what it is not. The third part settles most of the arguments.

06

Export Checklist

What to switch on before you download, including the seven formats Google Ads offers and the columns that are off by default. The same pull drives the Google Ads account audit.

07

Monthly Readout

Two pages in the order the questions actually arrive: the number, the channels, why the platforms disagree, and what to decide next. A pace that already looks off by period end is a signal to start the budget pacing and reallocation pack before the next period, not after it.

How to use it

  1. 1

    Open in River, or take it blank

    Open the pack in River and send your platform exports, or download the Word documents and CSV sheets and fill them in yourself.

  2. 2

    Name the system of record

    One line decides the headline number: which system is authoritative when two of them disagree. Until it is answered, every efficiency figure in the space is undefined.

  3. 3

    Send the exports

    A Google Ads report, an Ads Manager CSV, a Campaign Manager export, a GA4 pull, a CRM list. Partial files and mismatched date ranges are fine.

  4. 4

    Read the reconciliation first

    The gaps, largest first, each with a named cause and a status. The table is the easy half, and this sheet is the half that survives a budget meeting.

Frequently asked questions

Is this template free?

Yes. The zip is Word documents and CSV sheets, and it needs no account and no card. Edit with AI is the optional half: the agent reads the exports you already pull, fills the table, and opens a reconciliation row for every gap it can name a cause for. The other packs sit in the template library.

What format are the downloaded files?

Word (.docx) for the four documents, CSV (.csv) for the three sheets, zipped together. Excel, Numbers and Google Sheets open the sheets straight off the download, and the documents open in Word or Pages. There is nothing to convert and no proprietary format in it anywhere.

Why is there no single cross-platform conversion number?

Because that number would not correspond to any quantity in the world. Two platforms both claim a buyer who touched both, so the sum counts one person twice. It always reads lower on cost and higher on volume than the truth, and it is computed from data that is entirely accurate.

Our platforms are off by more than half. Is our tracking broken?

Usually not. Check the ordinary causes in order. The same buyer gets claimed twice. A window credits a conversion weeks after the impression that earned it. View-through conversions never appear in a click-based source field. Records arrive with no lead source at all. Most large gaps are two or three of those together.

Does this replace a reporting dashboard?

It answers a different question. A dashboard shows the current state of every channel, refreshed. This produces the monthly artifact somebody senior reads and challenges, which needs a stated method, a named denominator and a written explanation of the gaps. Point a dashboard at the same exports and keep both.

What happens to a channel that has no conversion tracking?

It gets a row with spend, impressions and clicks filled and the conversion column empty, and the amount is named in the readout. That spend belongs in the numerator of every blended figure and can never appear in an attributed one, so every channel-level view is short by exactly that much.

What does Edit with AI actually do?

It signs you up, installs this pack as a private workspace of your own, and puts the agent in front of an empty table. Then you send what you already pull, in whatever shape it is in: three exports on three date ranges, a spreadsheet somebody abandoned, a screenshot of last month's deck.

Find out what your paid number actually rests on

Take the Word documents and CSV sheets blank, or open this exact pack in River and send it the exports you already pull every month.

Edit with AI