Automate marketing reporting into a spreadsheet
Marketing reporting breaks because the numbers live in four places and someone has to fetch them by hand every week. A scheduled job pulls each source into the same sheet on the same cadence, so the report is a view over current data rather than a task someone owes you.
How to set it up
- 1
Decide the grain first
One row per day per channel is the usual answer. Get this wrong and every chart built on top has to compensate for it later.
- 2
One job per source
Each source writes its own tab. Blending happens in the sheet, or in a merge job, not by cramming mismatched shapes into one table.
- 3
Schedule them together
Run everything early enough that the report is ready before anyone looks, and late enough that yesterday is complete. Search Console lags two to three days.
- 4
Build the dashboard on top
Pivot tables and charts read the tabs. Because the tabs refresh in place, nothing downstream needs touching again.
Questions
Can I combine several sources into one table?
Yes — a merge job takes several inputs and writes one output. But only combine sources that genuinely share a grain. Sessions per day and revenue per day merge cleanly; sessions per page and revenue per customer do not, and forcing them produces a table that quietly double-counts.
Why not just use a BI tool?
If your team already lives in one, use it. This is for teams whose reporting genuinely happens in a spreadsheet, where the honest problem is not visualisation but that somebody is exporting CSVs by hand every Monday.