Blog Workflow Automation Guides
Get a weekly Meta ads report in Google Sheets
A Midpoint worker prepares your weekly Meta ads report in Google Sheets, checks comparable results and spend against plan, and returns an internal explanation.

The weekly Meta ads report is due, but the sheet still needs work. A campaign has more leads. Did it become cheaper to run, or did the team spend more? Another client's purchase count looks lower, but last week's report used a different attribution setting. The account lead needs an explanation before the client meeting.
Jordan, a paid-media lead at an agency, gives the preparation to her Midpoint worker: "Put the last complete week's Meta results in our Google Sheet. Compare with the previous week and our approved spend plan. Tell me what changed and what you couldn't compare. Don't change campaigns or send anything to clients."
She gets back the completed sheet and a short internal note. Comparable changes have figures and source links beside them. Missing settings appear as questions. Jordan can go through it with the account lead: the checks are done and the open questions are easy to find.
Start with the report your team uses
The worker starts from the agreed client and ad-account list, the reporting sheet and the approved spend plan. Jordan says which result matters for each campaign: a recorded lead for the home-services client, a purchase for the retailer. Those are different measures, so they stay in separate rows.
Before comparing results, the worker checks the reporting dates, account, currency, account time zone, attribution window and conversion being counted. It keeps the reporting level consistent too: a campaign total is compared only with the same campaign's total.
At the top of each account's report, it records those settings, where the figures came from and when it retrieved them. The saved export or source report stays linked. If later-attributed results change, the team can see which version last Monday's explanation used.
More leads, at the same cost per lead
For the home-services campaign, both weeks use the same reporting settings. The previous complete week shows $2,400 spent and 80 leads. The current week shows $2,700 spent and 90 leads. Both work out to $30 per lead.
The worker puts the two weeks together and checks the arithmetic. Spend rose 12.5%, and leads rose 12.5%. The current week's spend is 90% of the approved $3,000 weekly plan, $300 under that plan.
Its internal note reads:
Leads increased from 80 to 90 while spend increased from $2,400 to $2,700. Cost per lead stayed at $30. Spend was $300 below the approved weekly plan. The extra leads came with extra spend at the same cost per lead.
Jordan can take that note into the meeting. It does not claim the spend caused sales, that the leads were qualified or that the spare $300 should be spent. A weekly plan comparison also says nothing by itself about whether the account is on track for the month.
A purchase comparison that needs a question
The retailer's purchase campaign has a different problem. The current report and the prior export show different attribution windows. A purchase counted under one window may not appear under the other.
The worker keeps each source's reported figures with its own settings, but leaves the week-on-week purchase change blank. Its note says: "The attribution windows differ. Which reporting window should I use for both weeks?"
Jordan chooses the intended definition. The worker then tries to pull both weeks with that setting. If access or the available data won't allow it, the comparison stays open. It does not change the campaign's live attribution setting to make a report line up, assume a blank means zero or combine purchases with the home-services leads.
Use the simpler report when it is enough
A saved Ads Manager report or an existing connector may already give the agency what it needs. Coupler.io and Supermetrics both offer Meta reporting in Google Sheets. Keep that setup if it gives your team the figures and explanation it uses. Moving the data and refreshing it on a schedule is what those tools already do.
Hand the job to a Midpoint worker when you want the preparation done for you: getting the approved inputs, checking the comparisons, updating the sheet and bringing back the explanation and open questions. It can also work from an approved export, though the report is then only as current and complete as that export.
The report stays internal. Jordan decides what to tell the client. The worker does not adjust budgets, pause ads or send the report. If it cannot read an account, find a plan or establish the settings, it names the missing input and leaves that line open.
Hand over your next weekly report
Your Midpoint worker has its own computer. Connect Google Sheets and the Meta account access needed for reporting, or provide approved exports. Give it permission to update the reporting sheet, and share the agreed result definitions and spend plan. Keep campaign management outside the assignment.
Checking campaign links before launch is a separate job. So is a sales-pipeline briefing: ad-platform leads don't show what happened to deals in your CRM.
Try: "Prepare our weekly Meta ads report in this sheet. Compare the last two complete weeks using matching settings and the approved spend plan. Write the internal explanation and bring me missing-data questions. Don't change ads or send anything to clients."


