Short answer

A good marketing report template fits on one page and tracks the numbers that connect spending to customers: ad spend, website users, Google search clicks, calls and inquiries, qualified leads, new customers and their revenue. Show this week, last week and the four-week average for each, write down where every number comes from (GA4, Search Console, your Business Profile, an ad account or your CRM) and what it counts, and end with what changed and what you will do.

On this page
  1. What should a marketing report include?
  2. The one-page weekly marketing report template
  3. Where each number comes from, and what it counts
  4. Why don't GA4, Google Ads and Search Console agree?
  5. Should a marketing report be weekly or monthly?
  6. How to have AI fill in the report, with a source for each number
  7. Frequently asked questions

A marketing report template that works for a small business fits on one page and says where every number in it came from. The second part matters because Google's own tools count differently. Google says Search Console and Google Analytics "use different metrics and systems, which means the data won't match completely" (Google Search Central). Google Ads, in its main conversion columns, files a conversion under the day of the ad click rather than the day the inquiry arrived (Google Ads Help). Without a named source for each number, the Monday meeting turns into a debate about whose figure is right.

The template below runs from ad spend to new customers, with a column for each number's source and room for decisions. It suits a business with some mix of Google search traffic, a Google Business Profile, paid ads and a CRM (the system where you keep leads and customers).

Fill it in by hand for four weeks, until you trust the numbers. Then hand the repetitive part to AI, with the checks described at the end.

What should a marketing report include?

It should include the few numbers that connect what you spent to the customers you won, each compared with last week and a normal week, plus what you will do about them. The template below uses 11 numbers in four groups:

  • Spend: what your ads cost this week, across every platform.
  • Reach: how often people found you on your website, in Google Search and on your Google Business Profile.
  • Inquiries: how many people asked for a quote, a booking or a call, and where they came from.
  • Outcomes: qualified leads, new customers and the revenue those customers brought.

Leave out numbers nobody acts on, such as follower counts and likes. Keep a row only if someone would act differently when it doubled or halved.

Write down what each number counts. Otherwise a "lead" in an ad account, an event in Google Analytics 4 (GA4) and a new contact in the CRM get added up as if they were the same thing. Then end with a short note on what changed and what happens next.

The one-page weekly marketing report template

Copy this table into a spreadsheet or a doc. Fill in the Source column once and leave it alone, because changing a number's source halfway through the year breaks every comparison after it. If you set goals, add a Target column.

Number Source This week Last week 4-week average
Ad spend, all platforms Ad accounts
Website users GA4
Clicks from Google Search Search Console
Clicks from non-branded searches Search Console
Calls and website clicks from your Business Profile Google Business Profile
New inquiries CRM
New inquiries from paid ads CRM
Cost per inquiry from paid ads Ad spend ÷ inquiries from paid ads
Qualified leads CRM
New customers CRM or invoices
Revenue from new customers CRM or accounting

Under the table, add four lines:

  • What changed: one sentence, naming the number that moved.
  • Likely reason: one sentence, marked as a guess if it is one.
  • This week's action: what you will do, who owns it and by when.
  • Data notes: anything that makes a number unreliable this week, such as a broken form, a tracking change or a paused ad account.

Run the week Sunday to Saturday and fill the report in on Monday, marking the GA4 and Search Console figures as provisional. GA4 says events "can take up to 72 hours" to be processed (Google Analytics Help), and Search Console data "can be delayed by a couple of days" (Google Search Central). Next Monday, refresh last week's column before you compare.

Where each number comes from, and what it counts

Keep these definitions in a tab beside the report. They quote Google and HubSpot where those exist; the rest are your own.

Number Where to get it What it counts
Ad spend Each ad account's campaign report, for the same seven days Money spent in the week, all platforms added together.
Website users GA4 reports Active users, which GA4 reports show under the label "Users" (Google Analytics Help).
Clicks from Google Search Search Console, Performance report "How often someone clicked a link from Google to your site" (Search Console Help).
Clicks from non-branded searches Search Console, Performance report, Query filter set to Non-branded Clicks from searches that don't include your brand name. Google says non-branded traffic "can indicate new audience growth." The filter isn't offered for sub-properties or sites with few impressions (Search Console Help), and some queries "might be incorrectly identified" (Search Console Help).
Calls and website clicks from your Business Profile Business Profile performance Calls are "the number of times a customer clicked on the call button," so a tap counts even if nobody answers. Website clicks are "the number of times people clicked on the website link on your Business Profile" (Google Business Profile Help).
New inquiries CRM, or the shared inbox and call log Each new person who asked for a quote, a booking or a call this week, counted once.
New inquiries from paid ads The CRM's source field In HubSpot, Original Traffic Source shows "the first known web source" and Latest Traffic Source "the most recent known web source," with values such as Paid search, Paid social, Email marketing and Organic social (HubSpot). Original credits the first visit, so someone who found you through search and later clicked an ad counts as search.
Cost per inquiry from paid ads Worked out Ad spend divided by inquiries from paid ads, using the CRM count rather than each platform's own conversion count.
Qualified leads A CRM stage Your definition, for example "we sent a quote" or "we booked a site visit."
New customers CRM won deals, or first invoices People who signed or paid for the first time this week.
Revenue from new customers CRM or accounting The first invoice or the contract value, whichever you can get every week.

GA4 now calls the actions you mark as important, such as form submissions, "key events." It keeps the word "conversion" for actions used to measure ad campaigns and set bids (Google Analytics Help). Use GA4's form events to check the CRM count.

The paid-ads rows are only as good as your CRM's source field. If it can't say which ad, campaign or page brought an inquiry, fix that before anything else. Lead tracking records the ad, campaign and page with every website inquiry that reaches the CRM.

Why don't GA4, Google Ads and Search Console agree?

Each tool counts something different, on its own clock, and keeps revising recent days. Google expects the gap: its Ads help says differences in conversion counts between Google Ads and Google Analytics are "often up to 20%" because the two use different attribution models (Google Ads Help). The main causes:

  1. Clicks aren't visits. Search Console counts clicks on Google results. GA4 counts sessions and users on your site, and Google says clicks and sessions "are calculated differently." GA4 also leaves out known bots, which Search Console doesn't necessarily do (Google Search Central).
  2. The day ends at different times. Search Console runs on Pacific Time and that can't be changed, while GA4 uses the time zone you set (Google Search Central).
  3. Google Ads backdates conversions to the click. When an ad is clicked last week and the visitor converts this week, "both the click and the conversion are reported back to last week." For comparisons with your own systems, Google says the "All conv. (by conv. time)" column "may give you a better comparison" (Google Ads Help). Conversions can be reported "up to 90 days after the click" (Google Ads Help).
  4. Recent days are provisional. GA4 says "Data processing can take 24-48 hours. During that time, data in your reports may change," and attribution credit can keep changing for up to 12 days (Google Analytics Help).
  5. Google Ads drops invalid clicks. It filters them out of its reports, while Analytics shows all data (Google Ads Help).
  6. Some visitors decline tracking. When they opt out, Google says that "can skew Google Analytics data" (Google Search Central).

Google says that if the difference is small, "you can ignore the discrepancies," and that "what's important is that the general trends have the same pattern" (Google Search Central). Compare each number with its own history.

A bigger problem is Google Ads seeing only form fills and never learning which inquiries became customers. The fix is sending your CRM's results back to Google Ads, and enhanced conversions for leads vs offline conversion import compares the two ways to do it.

Should a marketing report be weekly or monthly?

Weekly for spend and inquiries, which you can act on within days, and monthly for customers and revenue. A quote sent this week may close next month, and late conversions keep landing on past weeks, so cost per customer is steadier over a month.

Weekly report Monthly report
Compare with Last week and the 4-week average Last month and the same month last year, so a seasonal dip doesn't look like a problem
Extra rows None Cost per new customer, also called customer acquisition cost or CAC (marketing spend ÷ new customers); return on ad spend, or ROAS (revenue from customers who came through ads ÷ ad spend); revenue by source
Decision at the bottom One action for this week One change to next month's budget or plan

GA4 can send its part on a schedule. An administrator can set standard and custom reports to go out "each day, week, month, or quarter" as a PDF or CSV attachment, to up to 50 email addresses. Set the date range and filters first, because the email uses the ones "applied to the report when the email was first scheduled" (Google Analytics Help).

How to have AI fill in the report, with a source for each number

Give the AI five weeks of exports, your written definitions and strict rules, then have a person check its work. Use the AI your team already has, in Google Workspace, Microsoft 365 or a business AI subscription. The risk is a number that looks right and came from nowhere, one of the kinds of detail AI tools make up. Every number gets a source note for that reason.

  1. Collect the exports in one file. Use one tab per source, each covering the last five full weeks: GA4, Search Console, each ad account's campaign report and the CRM's new contacts and deals. Add last week's report as its own tab.
  2. Save the definitions as standing instructions. Paste the definitions table and the rules below wherever your AI keeps saved instructions.
  3. Ask it to fill the table, with a source note for each number. The note names the tab, the report, the date range and any filter.
  4. Ask for the four lines under the table, written only from the numbers in it.
  5. Check two numbers by hand. Choose different rows each week and compare them with the tool itself before the report goes out.
  6. Keep each week's file. It's the record of what you decided.

Copy these standing instructions and fill in the brackets.

You fill in our weekly marketing report.
Weeks run Sunday to Saturday. Search Console dates are Pacific Time;
don't shift them.
Use only the files attached. They cover the last five full weeks,
plus last week's report.
4-week average = the average of the four weeks before this one.
Never estimate a number. Show money to the cent, averages to one decimal.
If a number is missing or looks wrong, write MISSING and say why.
After every number, add a source note: file, tab, report, date range, filter.
Use these definitions: [paste the definitions table].
Refill last week's column, then list every number that changed by more
than 5% from last week's report, with its old and new value.
Mark this week's GA4 and Search Console figures as provisional.
Write the four lines under the table using only numbers in the table.
Label any reason that isn't in the data as a guess.
Don't add benchmarks, industry averages or advice.

To have this built in your own accounts, Optimitor's AI reporting project connects GA4, Search Console, your ad accounts and your CRM, and writes down how your business counts things. Your team can then ask questions and get each answer with its source, plus a summary every Monday. The project runs on the AI setup from the first month of monthly work.

Frequently asked questions

How do you write a marketing report?

Write the numbers first and the words last. Pull each number from the source named in the template and compare it with last week and the four-week average. Then write one sentence on the biggest change, one on its likely cause and one on what you will do. Send it on the same day every week.

Can I use this template in Excel or Google Sheets?

Yes. Select the template table on this page, copy it and paste it into a new Google Sheet or Excel workbook, and the rows and columns come across as cells. Add a formula for cost per inquiry and one for the 4-week average, then save a copy each week to build up the history.

What is a KPI report template?

A KPI report template is a fixed layout for tracking key performance indicators (the handful of numbers that show whether the business is on course) against a target or a past period. Add a target column to the weekly template above, such as the qualified leads you need each week to reach the month's sales goal, and it becomes one.

Should a marketing report show users or sessions?

Users, for an owner's weekly report, because it counts visitors rather than visits. A session is one visit, and by default it ends after 30 minutes without activity, so one visitor can start several in a week (Google Analytics Help). Whichever you choose, use the same one every week, or the trend means nothing.

Can AI write a marketing report?

Yes, if it works only from files you give it and notes where each number came from. It won't know that a form broke on Thursday or that a large client paid early unless someone tells it. A person still reads the report and adds the data notes before it goes out.

Stop building the weekly report by hand.

AI reporting answers questions about your sales and marketing numbers in plain words, gives the source of every number, and sends a summary every Monday. Two to three weeks, at a fixed price.

AI reporting