Weekly Client Reports for 20 Ad Accounts in About an Hour

What goes into my weekly client report, how I pull Google Ads, Meta and GA4 numbers for completed weeks with Claude, how the client email gets written, and how I keep it honest.

Reporting is the task that grew fastest as I took on more accounts, and the one clients notice most when it slips. Every client gets a short weekly email. With about 20 accounts that used to take most of a Friday. Now it takes me about an hour, and most of that hour is reading and editing, not pulling numbers. This post is the routine: what goes in, how the numbers are pulled, how the email is written, and the rules that keep it honest. It is part of a series; the overview is how I manage 20 ad accounts.

Key takeaways
  • Report on the last completed Monday-to-Sunday week against the one before, with explicit dates, so every client gets a fair comparison.
  • Pull Google Ads, Meta and GA4 side by side, and say which source a number comes from when they disagree.
  • The AI drafts; you check every number against the source before the email goes out, and nothing is sent on your behalf.

What goes in a weekly report

Clients do not want a dashboard every week. They want to know whether things are fine, what I did, and what happens next. My weekly email has four parts and fits on one screen.

  • The headline: spend and results (leads, sales or calls) for last week, next to the week before.
  • Per channel: Google Ads and Meta in one or two lines each, with cost per result.
  • What I changed last week, in plain words: negatives added, budgets moved, creative swapped.
  • What I plan this week, and anything I need from the client (new photos, an answer about an offer).

Completed weeks only

A report that compares "the last 7 days" on a Friday compares a different stretch for every client and includes days where conversions are still coming in. I always report the last completed Monday-to-Sunday week against the one before, and I give the dates in the prompt. agency_weekly_report gives a quick rolling last-7-days view across Google Ads, Meta and GA4 for one client, which is useful mid-week. For the client email I ask for explicit dates instead, so every number refers to the same two weeks.

Prompt
For each of my clients, pull last Monday to Sunday and the Monday to Sunday before it:
- Google Ads: spend, clicks, conversions, cost per conversion
- Meta: spend, leads or purchases, cost per result
- GA4: sessions and key events from paid traffic
Show one short table per client with both weeks and the change. Mark any number that moved more than you would expect from normal week-to-week noise, and do not explain it yet.

Manage all your ad platforms in one place with MCP Ads

  • Google Ads
  • Meta Ads
  • GA4
  • Search Console
  • Tag Manager
  • Merchant Center
  • TikTok Ads
  • LinkedIn Ads
  • Microsoft Ads
  • Snapchat Ads
  • X Ads
  • ChatGPT Ads
  • WordPress
  • Instagram
  • Threads
  • Bing Webmaster
  • + more
Start your 7-day free trial

Cross-channel numbers that disagree

Google Ads, Meta and GA4 will not agree on conversions. Each counts with its own attribution, and a lead that clicked a Google ad after seeing a Meta ad can show up in both. I do not add them together and call it a total. For clients where it matters, agency_cross_platform_overview pulls Google Ads, Meta and GA4 together and uses GA4 as the reference for conversions. In the report I name the source next to each number, so the client never sees two different lead counts without an explanation.

One minute of Claude reading a live Google Ads account through MCP Ads, asking before it changes anything.

Writing the client email

Once the numbers are checked, I ask Claude to draft the email for each client in the tone I use with them. Some clients want two lines, some want the table. I keep a short note per client with their preferences, and paste it in. Claude drafts; I send. MCP Ads does not send email for me, and I would not want it to. I read each draft, fix anything that sounds unlike me, and send it from my own inbox.

Prompt
Write the weekly email for the dental client using the table above. Tone: friendly, short, no jargon. Structure: one sentence on how the week went, the numbers for both weeks, what I changed last week (I added 14 negative keywords and lowered the Meta budget on the Whitening campaign), what I plan this week, and one question for them about the December offer. Use only numbers from the table. If a number is missing, say so instead of estimating it.

Keeping it honest

An AI-written report is only as trustworthy as the checks around it. These are the rules I hold to.

  • Every number in the email must come from the platform data in the same conversation. I tell the assistant not to estimate, round in a flattering direction or fill gaps.
  • I spot-check two or three numbers per client against Google Ads, Ads Manager or GA4 before sending.
  • A bad week is reported as a bad week, with the reason if I know it and "I am looking into it" if I do not.
  • I do not take credit for changes in a week I did not change anything.

Where the hour goes

Pulling numbers for all clients takes a few prompts and some waiting. Reading them, spotting the two or three accounts that need a real explanation, and editing the drafts is the rest of the hour. The accounts with a problem get a longer note and usually a call; the rest get the short email. If you want to set this up, the quickstart connects an account in a few minutes, and the agencies page covers workspaces and team roles.

Frequently asked questions

Can Claude or ChatGPT build a weekly report from Google Ads and Meta?

Yes. Connected through MCP Ads, the assistant can pull Google Ads, Meta and GA4 numbers for the dates you give and lay them out per client. You still check the numbers and send the email yourself.

Why compare completed weeks instead of the last 7 days?

A rolling 7 days covers a different stretch depending on when you run it and can include days whose conversions are still arriving. A completed Monday-to-Sunday week against the one before is the same comparison for every client.

What if Google Ads, Meta and GA4 report different conversion numbers?

They will, because each uses its own attribution. Report each number with its source, and do not add platforms together as if they were separate customers.

Does MCP Ads send the report email to my clients?

No. The assistant drafts the email; you read it and send it yourself.

Ready to connect your marketing stack?

Connect Google Ads, Meta Ads, GA4, and Search Console. Ask Claude anything about your accounts.