Skip to content
All resources
Reporting Meta Ads Agency Operations Automation

How to Set Up Recurring Ads Reports That Run Themselves

The DashOps Team September 22, 2026 8 min read

Every reporting cycle starts the same way. You open Meta Ads Manager, pick the date range, adjust the columns because they reset again, export to CSV, paste it into a spreadsheet, clean up the formatting, write a short summary, attach the file, and send it. Then you do it for the next client. And the next. By the time you are finished the morning has gone, and you have not made a single decision about a campaign.

Recurring reports fix that, but only if you set them up deliberately. A schedule that fires the wrong data at the wrong time to the wrong person creates more work than it saves, because now you are answering emails about a report nobody asked for. This post walks through the setup itself: what to decide before you schedule anything, how to configure the recurrence, and what to check in the first two cycles so it keeps running without you.

If you want the full picture of how automated Meta Ads reporting works end to end, start with the complete guide to automated Meta Ads email reports. This post assumes you already know you want recurring reports and just need to get them running properly.

Recurring Reports Setup Banner

Decide the four variables before you touch a schedule

Every recurring report is defined by four things. Get these wrong and you will be rebuilding the schedule before long.

  • Who receives it. Not “the client” as a vague idea. The named people. A marketing manager who reads every line, a founder who skims the first paragraph, an accounts person who only cares about spend. These may need different reports, or the same report with different framing.
  • What period it covers. A weekly report covering the last seven days is not the same as one covering Monday to Sunday. The first drifts, the second aligns with how most people think about a working week.
  • How often it arrives. Daily, weekly, or monthly. This is the decision people get wrong most often, and the next section deals with it properly.
  • What is in it. A short digest with headline numbers, or a full PDF with campaign-level detail. Sending the heavier document more often is not generosity, it is noise.

Write these four down for each client before you configure anything. It is a short exercise and it stops you from setting up a schedule you will have to unpick later.

Match the frequency to the decision the report supports

A report exists so someone can decide something. If nobody makes a decision off the back of it, the frequency is wrong.

Daily suits accounts in an active testing phase, a launch week, or a promotion with a hard end date. The reader is watching for something to go wrong and wants to catch it the same day. Daily reports should be short. A spend figure, the headline results, and a trend line. If a daily report runs to several pages, it is really a weekly report arriving too often.

Weekly is the default for most retained client work. It gives enough data to see a pattern rather than a blip, and it fits the rhythm of a Monday check-in. The weekly digest format covers what belongs in one and what to leave out.

Monthly suits reporting to a stakeholder who is not involved day to day: a business owner, a board, a finance lead. Monthly reports carry more narrative and less raw data. They answer “was this month better than last month, and what are we doing about it” rather than “what happened on Tuesday”.

Many agencies run two schedules per client. A weekly digest to the day-to-day contact and a monthly report to the decision maker. That is a reasonable pattern and worth setting up from the start rather than bolting on later.

Set the schedule up in DashOps

In DashOps, recurring reports come in two shapes and it is worth knowing which one you want.

Email digests are per ad account and go to a person on your team or a client user you have invited. You pick the frequency, daily, weekly or monthly, choose which ad accounts to include, and set the hour it sends and the day of the week or month. Each account gets its own card in the email with its headline numbers and a spend chart. This is the lightweight option, good for a regular pulse.

Scheduled client reports are the heavier option. These send a formatted PDF built from the same data your dashboard shows, branded with your logo and colours, to the client you nominate. This is what you use when the client expects a document they can file, forward, or take into a meeting.

For either one, the setup runs in the same order:

  1. Pick the ad accounts the schedule covers. If a client has more than one, remember each account gets its own section rather than being folded into a single total, so decide which accounts belong together in one send.
  2. Choose the frequency and the send time. Set it to land before the reader’s working day starts, not during it.
  3. Set the timezone the schedule runs on. This is the step people skip. If your account timezone and your client’s are different, a “Monday morning” report can land on Sunday evening.
  4. Choose the recipients. Client users only see the ad accounts assigned to them, so a client on one account never receives another client’s numbers.
  5. If the client should not see cost figures, switch spend visibility off for that client before the first send, not after.

Once saved, the schedule runs on its own. You do not need to open the dashboard on send day.

Handle the parts that are easy to get wrong

Timezone drift. Meta reports in the ad account’s timezone. If you are in one country and the client is in another, “yesterday” means different things to each of you. Set the report timezone to whichever one the reader thinks in, and say so in the report if there is any ambiguity.

The first-cycle gap. A brand new ad account has no history, so the first report has nothing to compare against. Expect period-over-period figures to be missing or unhelpful in the first cycle and tell the client that up front rather than letting them wonder.

Reports that arrive when nobody is there. A Friday afternoon report gets read on Monday, by which point it is stale. A Monday morning report gets read Monday. Pick the day the reader actually acts on.

Silent schedules. If a Meta connection expires, a report can go out empty or not at all. Turn on connection alerts so you find out before the client does. Watching a schedule succeed is not the same as trusting it blindly.

Over-reporting. If a client never replies to a report, that is information. Ask whether they want it less often or in a shorter form. A report nobody reads is pure cost.

Check the first two cycles, then leave it alone

The point of a recurring report is that you stop thinking about it. You earn that by paying attention twice.

After the first send, open the report as the recipient sees it. Not the dashboard version, the actual email or PDF. Check the date range is what you intended, the branding is right, the numbers match what you see in the dashboard, and nothing is showing that should be hidden.

After the second send, check the comparison figures. This is the first cycle where period-over-period numbers have a real prior period to work against, and it is where a wrong date range shows itself. If last week’s figures look identical to this week’s, your period is not advancing the way you assumed.

Once two clean cycles have gone out, stop checking. That is the whole point.

Scale it across every client at once

Setting up one recurring report is easy. Setting one up for every client on your list is where the time goes, and where inconsistency creeps in. Client A gets a Monday digest, client B gets a Friday PDF, client C gets whatever you set up when you onboarded them and nobody has looked at since.

Standardise it. Pick a default for new clients: a weekly digest to the day-to-day contact and a monthly report to the decision maker, both landing before the working day starts. Deviate only when a client asks. That way onboarding a new account becomes a quick, repeatable job rather than a fresh decision every time.

For a wider view of how reporting fits with the rest of an agency’s Meta work, this walkthrough of an agency workflow covers where scheduled reports sit alongside campaign changes and client communication.

What to do next

Take your client list and mark each one with a frequency and a recipient. Set up the two or three where reporting eats the most time first, since that is where you get the time back soonest. Watch two cycles, fix anything that looks wrong, then move on to the rest.

DashOps handles the sending, the branding, and the per-client access, so once a schedule is running the only reason to open it again is to change it. If you are still exporting CSVs by hand, this piece on cutting reporting time is a reasonable next read.

Frequently asked questions

How often should recurring Meta Ads reports be sent?
Match the frequency to the decision the report supports. Daily suits accounts in an active testing phase or a launch, where someone is watching for problems and needs to catch them the same day. Weekly is the default for most retained client work, since it shows a pattern rather than a single day's noise. Monthly suits stakeholders who are not involved day to day, such as a business owner or finance lead, and carries more narrative than raw data. Many agencies run both in parallel.
What is the difference between an email digest and a scheduled client report?
An email digest is the lightweight option. It goes per ad account, includes headline numbers and a spend chart for each account, and works as a regular pulse for someone who wants to stay current without reading a document. A scheduled client report is heavier: a formatted PDF built from the same dashboard data, branded with your logo and colours, sent to a nominated client. Use the digest when someone wants to stay informed, and the report when they expect something they can file or forward.
Why does the timezone matter when setting up a recurring report?
Meta reports data in the ad account's timezone, so if you and your client are in different countries, the word yesterday means two different things. A report scheduled for Monday morning in your timezone can land on Sunday evening in theirs, covering a period neither of you intended. Set the report timezone to whichever one the reader thinks in, not whichever is convenient for you, and state the reporting period in the report itself if there is any chance of confusion.
How do I stop a client from seeing spend figures in a scheduled report?
Set it before the first send, not after. In DashOps each client can have spend visibility switched off, which strips cost figures from what they see while still showing results such as leads, clicks and impressions. Because client users are also restricted to only the ad accounts assigned to them, one client can never receive another client's numbers. Configure both the assignment and the spend setting when you invite the client, so the very first report they receive is already correct.
What should I check after a recurring report goes out for the first time?
Open the report the way the recipient sees it, as the actual email or PDF rather than the dashboard. Confirm the date range is what you intended, the branding is correct, the figures match your dashboard, and nothing is visible that should be hidden. Then check again after the second send, because that is the first cycle with a genuine prior period to compare against, and a wrong date range usually reveals itself there. After two clean cycles you can stop checking and let it run.

See it in your own dashboard

DashOps brings Meta Ads reporting, campaign management, and white-label client portals into one place. Pick the plan that fits how you run ads.

Keep reading

Get in touch

Tell us about your setup or ask a question and we usually get back to you within one business day. Running more than 20 ad accounts? We will tailor a custom plan for you.

DashOps
Product updates

Get more from every Meta Ad

New features, product news, and practical Meta Ads tips, straight to your inbox.

Subscribe to product updates

Join our newsletter for new features, tips, and the occasional Meta Ads playbook. We may also send you an invite to our community. No spam, unsubscribe anytime.

We use your email to send these updates, and we may also use it to send you an invite to our community. When you subscribe, we also report the sign-up to Meta, and to Google if your browser has a Google Analytics cookie, as our Privacy Policy explains.